summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--maintainers/scripts/eval-release.nix3
-rwxr-xr-xmaintainers/scripts/test-eval-release.sh3
-rw-r--r--pkgs/applications/editors/emacs-23/default.nix8
-rw-r--r--pkgs/applications/editors/emacs-24/builder.sh34
-rw-r--r--pkgs/applications/editors/emacs-24/default.nix78
-rw-r--r--pkgs/applications/editors/emacs-modes/htmlize/default.nix4
-rw-r--r--pkgs/applications/editors/emacs-modes/org/default.nix8
-rw-r--r--pkgs/applications/editors/emacs-snapshot/builder.sh21
-rw-r--r--pkgs/applications/editors/emacs-snapshot/default.nix68
-rw-r--r--pkgs/applications/graphics/k3d/default.nix42
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/conkeror/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/kadu/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/psi/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/psi/psimedia.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix29
-rw-r--r--pkgs/applications/networking/newsreaders/kwooty/default.nix38
-rw-r--r--pkgs/applications/networking/newsreaders/kwooty/searchPath.patch19
-rw-r--r--pkgs/applications/office/ledger/2.6.3.nix (renamed from pkgs/applications/office/ledger/default.nix)0
-rw-r--r--pkgs/applications/office/ledger/3.0.nix9
-rw-r--r--pkgs/applications/office/openoffice/generate-libreoffice-srcs.sh26
-rw-r--r--pkgs/applications/office/openoffice/libreoffice-srcs.nix78
-rw-r--r--pkgs/applications/office/openoffice/libreoffice.nix137
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex/default.nix4
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix6
-rw-r--r--pkgs/applications/video/MPlayer/default.nix14
-rw-r--r--pkgs/applications/video/kdenlive/default.nix10
-rw-r--r--pkgs/applications/video/kdenlive/kdenlive-newmlt.patch70
-rw-r--r--pkgs/applications/video/kdenlive/qtgl-header-change.patch14
-rw-r--r--pkgs/applications/video/vlc/default.nix18
-rw-r--r--pkgs/build-support/clang-wrapper/default.nix2
-rw-r--r--pkgs/build-support/gcc-wrapper/default.nix2
-rw-r--r--pkgs/desktops/kde-4.8/default.nix2
-rw-r--r--pkgs/desktops/kde-4.8/files/kde-wallpapers-buildsystem.patch17
-rw-r--r--pkgs/desktops/kde-4.8/kde-package/4.7.97.nix300
-rw-r--r--pkgs/desktops/kde-4.8/kde-package/4.8.0.nix299
-rw-r--r--pkgs/desktops/kde-4.8/kde-wallpapers.nix9
-rw-r--r--pkgs/desktops/kde-4.8/kdegraphics/kdegraphics-mobipocket.nix (renamed from pkgs/desktops/kde-4.8/kdegraphics/mobipocket.nix)0
-rw-r--r--pkgs/desktops/kde-4.8/l10n/default.nix2
-rw-r--r--pkgs/desktops/kde-4.8/l10n/manifest-4.7.97.nix272
-rw-r--r--pkgs/desktops/kde-4.8/l10n/manifest-4.8.0.nix262
-rw-r--r--pkgs/desktops/kde-4.8/oxygen-icons.nix2
-rw-r--r--pkgs/development/compilers/gcc-4.5/default.nix4
-rw-r--r--pkgs/development/compilers/gcc-4.6/default.nix4
-rw-r--r--pkgs/development/interpreters/ruby/generated.nix155
-rw-r--r--pkgs/development/interpreters/ruby/rubygems.nix4
-rw-r--r--pkgs/development/libraries/boehm-gc/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/DSH/default.nix22
-rw-r--r--pkgs/development/libraries/haskell/FerryCore/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/HStringTemplate/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/HsOpenSSL/default.nix19
-rw-r--r--pkgs/development/libraries/haskell/Pathfinder/default.nix18
-rw-r--r--pkgs/development/libraries/haskell/TableAlgebra/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/aeson/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/bson/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/criterion/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/data-object-yaml/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/fclabels/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/generic-deriving/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/ghc-mod/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/hakyll/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/happstack/happstack-hamlet.nix4
-rw-r--r--pkgs/development/libraries/haskell/hxt/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/instant-generics/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/language-javascript/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/lifted-base/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/mongoDB/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/mwc-random/0.10.0.1.nix (renamed from pkgs/development/libraries/haskell/mwc-random/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/mwc-random/0.11.0.0.nix18
-rw-r--r--pkgs/development/libraries/haskell/pool-conduit/default.nix18
-rw-r--r--pkgs/development/libraries/haskell/pool/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/pretty-show/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/resource-pool/default.nix22
-rw-r--r--pkgs/development/libraries/haskell/statistics/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/text/0.11.1.13.nix18
-rw-r--r--pkgs/development/libraries/haskell/tls-extra/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/zeromq-haskell/default.nix4
-rw-r--r--pkgs/development/libraries/libmsn/default.nix6
-rw-r--r--pkgs/development/libraries/libxcrypt/default.nix2
-rw-r--r--pkgs/development/libraries/mesa/default.nix5
-rw-r--r--pkgs/development/libraries/mesa/mips_wmb.patch16
-rw-r--r--pkgs/development/libraries/mlt/default.nix6
-rw-r--r--pkgs/development/libraries/xapian/bindings/default.nix6
-rw-r--r--pkgs/development/libraries/xapian/default.nix6
-rw-r--r--pkgs/development/tools/haskell/hlint/default.nix4
-rw-r--r--pkgs/development/tools/haskell/tar/default.nix4
-rw-r--r--pkgs/development/tools/misc/astyle/default.nix27
-rw-r--r--pkgs/development/tools/misc/binutils/default.nix2
-rw-r--r--pkgs/development/tools/misc/ccache/default.nix42
-rw-r--r--pkgs/development/tools/misc/coccinelle/default.nix3
-rw-r--r--pkgs/development/tools/misc/pkgconfig/default.nix12
-rw-r--r--pkgs/development/tools/parsing/ebnf2ps/default.nix35
-rw-r--r--pkgs/development/tools/parsing/ebnf2ps/modernize.patch256
-rw-r--r--pkgs/games/torcs/default.nix10
-rw-r--r--pkgs/lib/platforms.nix2
-rw-r--r--pkgs/misc/cups/default.nix16
-rw-r--r--pkgs/os-specific/linux/bbswitch/default.nix46
-rw-r--r--pkgs/os-specific/linux/kbd/default.nix2
-rw-r--r--pkgs/os-specific/linux/kernel-headers/2.6.28.nix2
-rw-r--r--pkgs/os-specific/linux/kernel/generic.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.2.nix6
-rw-r--r--pkgs/os-specific/linux/pam/default.nix2
-rw-r--r--pkgs/servers/sql/mysql55/default.nix4
-rw-r--r--pkgs/servers/x11/xorg/default.nix6
-rw-r--r--pkgs/servers/x11/xorg/tarballs-7.6.list2
-rw-r--r--pkgs/servers/xmpp/ejabberd/default.nix8
-rw-r--r--pkgs/stdenv/default.nix2
-rw-r--r--pkgs/stdenv/generic/default.nix4
-rw-r--r--pkgs/stdenv/linux/default.nix4
-rw-r--r--pkgs/tools/package-management/disnix/default.nix8
-rw-r--r--pkgs/tools/package-management/disnix/disnixos/default.nix6
-rw-r--r--pkgs/top-level/all-packages.nix103
-rw-r--r--pkgs/top-level/haskell-packages.nix44
-rw-r--r--pkgs/top-level/platforms.nix9
114 files changed, 2051 insertions, 1064 deletions
diff --git a/maintainers/scripts/eval-release.nix b/maintainers/scripts/eval-release.nix
index 0afb88eef13..7af2b5b5bd9 100644
--- a/maintainers/scripts/eval-release.nix
+++ b/maintainers/scripts/eval-release.nix
@@ -5,6 +5,7 @@
 with import ../../pkgs/lib;
 
 let
+  trace = if (builtins.getEnv "VERBOSE") == "1" then builtins.trace else (x: y: y);
 
   rel = removeAttrs (import ../../pkgs/top-level/release.nix) [ "tarball" "xbursttools" ];
 
@@ -15,7 +16,7 @@ let
   maybe = as: let y = builtins.tryEval (strictAttrs as); in if y.success then y.value else builtins.trace "FAIL" null;
 
   call = attrs: flip mapAttrs attrs
-    (n: v: /* builtins.trace n */ (
+    (n: v: trace n (
       if builtins.isFunction v then maybe (v { system = "x86_64-linux"; })
       else if builtins.isAttrs v then call v
       else null
diff --git a/maintainers/scripts/test-eval-release.sh b/maintainers/scripts/test-eval-release.sh
index 16921a24ce2..4ab3f9775a0 100755
--- a/maintainers/scripts/test-eval-release.sh
+++ b/maintainers/scripts/test-eval-release.sh
@@ -1,3 +1,6 @@
 #! /bin/sh
 
+if [[ -z "$VERBOSE" ]]; then
+  echo "You may set VERBOSE=1 to see debug output or to any other non-empty string to make this script completely silent"
+fi
 nix-instantiate --strict --eval-only --xml --show-trace "$(dirname "$0")"/eval-release.nix 2>&1 > /dev/null
diff --git a/pkgs/applications/editors/emacs-23/default.nix b/pkgs/applications/editors/emacs-23/default.nix
index 84a98182e9f..a1a9aa4fa32 100644
--- a/pkgs/applications/editors/emacs-23/default.nix
+++ b/pkgs/applications/editors/emacs-23/default.nix
@@ -8,19 +8,19 @@ assert (libXft != null) -> libpng != null;	# probably a bug
 assert stdenv.isDarwin -> libXaw != null;	# fails to link otherwise
 
 stdenv.mkDerivation rec {
-  name = "emacs-23.3";
+  name = "emacs-23.3b";
 
   builder = ./builder.sh;
 
   src = fetchurl {
     url = "mirror://gnu/emacs/${name}.tar.bz2";
-    sha256 = "0kfa546qi0idkwk29gclgi13qd8q54pcqgy9qwjknlclszprdp3a";
+    sha256 = "1vp6qbbjgh5zpd87j3ggsvgf8q6cax8z3cdx3syv5v2662dapp46";
   };
 
-  buildInputs = 
+  buildInputs =
     [ ncurses x11 texinfo libXaw Xaw3d libXpm libpng libjpeg libungif
       libtiff librsvg libXft gconf
-    ] 
+    ]
     ++ stdenv.lib.optionals (gtk != null) [ gtk pkgconfig ]
     ++ stdenv.lib.optional stdenv.isLinux dbus;
 
diff --git a/pkgs/applications/editors/emacs-24/builder.sh b/pkgs/applications/editors/emacs-24/builder.sh
new file mode 100644
index 00000000000..d04e7a4fdd3
--- /dev/null
+++ b/pkgs/applications/editors/emacs-24/builder.sh
@@ -0,0 +1,34 @@
+source $stdenv/setup
+
+# This hook is supposed to be run on Linux. It patches the proper locations of
+# the crt{1,i,n}.o files into the build to ensure that Emacs is linked with
+# *our* versions, not the ones found in the system, as it would do by default.
+# On other platforms, this appears to be unnecessary.
+preConfigure() {
+    case "${system}" in
+	x86_64-linux)	glibclibdir=lib64 ;;
+	i686-linux)	glibclibdir=lib ;;
+        *)              return;
+    esac
+
+    libc=$(cat ${NIX_GCC}/nix-support/orig-libc)
+    echo "libc: $libc"
+
+    for i in src/s/*.h src/m/*.h; do
+        substituteInPlace $i \
+            --replace /usr/${glibclibdir}/crt1.o $libc/${glibclibdir}/crt1.o \
+            --replace /usr/${glibclibdir}/crti.o $libc/${glibclibdir}/crti.o \
+            --replace /usr/${glibclibdir}/crtn.o $libc/${glibclibdir}/crtn.o \
+            --replace /usr/lib/crt1.o $libc/${glibclibdir}/crt1.o \
+            --replace /usr/lib/crti.o $libc/${glibclibdir}/crti.o \
+            --replace /usr/lib/crtn.o $libc/${glibclibdir}/crtn.o
+    done
+
+    for i in Makefile.in ./src/Makefile.in ./lib-src/Makefile.in ./leim/Makefile.in; do
+        substituteInPlace $i --replace /bin/pwd pwd
+    done
+}
+
+preBuild="make bootstrap"
+
+genericBuild
diff --git a/pkgs/applications/editors/emacs-24/default.nix b/pkgs/applications/editors/emacs-24/default.nix
new file mode 100644
index 00000000000..91307deb220
--- /dev/null
+++ b/pkgs/applications/editors/emacs-24/default.nix
@@ -0,0 +1,78 @@
+{ stdenv, fetchurl, ncurses, x11, libXaw, libXpm, Xaw3d
+, pkgconfig, gtk, libXft, dbus, libpng, libjpeg, libungif
+, libtiff, librsvg, texinfo, gconf, libxml2, imagemagick, gnutls
+, alsaLib
+}:
+
+# XXX: ?
+# - checking for alsa >= 1.0.0... no
+# - checking for Wand >= 6.2.8... no
+# - imagemagickBig instead of imagemagick?
+
+assert (gtk != null) -> (pkgconfig != null);
+assert (libXft != null) -> libpng != null;	# probably a bug
+assert stdenv.isDarwin -> libXaw != null;	# fails to link otherwise
+
+stdenv.mkDerivation rec {
+  name = "emacs-24.0.92";
+
+  builder = ./builder.sh;
+
+  src = fetchurl {
+    url = "http://alpha.gnu.org/gnu/emacs/pretest/${name}.tar.gz";
+    sha256 = "0pwps72zj7mm6asly1vdq46dcj3in4qrkb6ss9xq6nbf039nj4w6";
+  };
+
+  buildInputs = 
+    [ ncurses x11 texinfo libXaw Xaw3d libXpm libpng libjpeg libungif
+      libtiff librsvg libXft gconf libxml2 imagemagick gnutls alsaLib
+    ] 
+    ++ stdenv.lib.optionals (gtk != null) [ gtk pkgconfig ]
+    ++ stdenv.lib.optional stdenv.isLinux dbus;
+
+  configureFlags =
+    stdenv.lib.optionals (gtk != null) [ "--with-x-toolkit=gtk" "--with-xft"]
+
+    # On NixOS, help Emacs find `crt*.o'.
+    ++ stdenv.lib.optional (stdenv ? glibc)
+         [ "--with-crt-dir=${stdenv.glibc}/lib" ];
+
+  postInstall = ''
+    cat >$out/share/emacs/site-lisp/site-start.el <<EOF
+;; nixos specific load-path
+(when (getenv "NIX_PROFILES") (setq load-path
+                      (append (reverse (mapcar (lambda (x) (concat x "/share/emacs/site-lisp/"))
+                                               (split-string (getenv "NIX_PROFILES"))))
+                       load-path)))
+EOF
+  '';
+
+  doCheck = true;
+
+  meta = {
+    description = "PRETEST: GNU Emacs 24.x, the extensible, customizable text editor";
+
+    longDescription = ''
+      GNU Emacs is an extensible, customizable text editor—and more.  At its
+      core is an interpreter for Emacs Lisp, a dialect of the Lisp
+      programming language with extensions to support text editing.
+
+      The features of GNU Emacs include: content-sensitive editing modes,
+      including syntax coloring, for a wide variety of file types including
+      plain text, source code, and HTML; complete built-in documentation,
+      including a tutorial for new users; full Unicode support for nearly all
+      human languages and their scripts; highly customizable, using Emacs
+      Lisp code or a graphical interface; a large number of extensions that
+      add other functionality, including a project planner, mail and news
+      reader, debugger interface, calendar, and more.  Many of these
+      extensions are distributed with GNU Emacs; others are available
+      separately.
+    '';
+
+    homepage = http://www.gnu.org/software/emacs/;
+    license = "GPLv3+";
+
+    maintainers = with stdenv.lib.maintainers; [ ludo simons chaoflow ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/applications/editors/emacs-modes/htmlize/default.nix b/pkgs/applications/editors/emacs-modes/htmlize/default.nix
index e749dfa4486..948beae82d4 100644
--- a/pkgs/applications/editors/emacs-modes/htmlize/default.nix
+++ b/pkgs/applications/editors/emacs-modes/htmlize/default.nix
@@ -6,8 +6,8 @@ stdenv.mkDerivation {
   builder = ./builder.sh;
 
   src = fetchurl {
-    url = http://fly.srk.fer.hr/~hniksic/emacs/htmlize.el;
-    sha256 = "17sbhf4r6jh4610x8qb2y0y3hww7w33vfsjqg4vrz99pr29xffry";
+    url = http://fly.srk.fer.hr/~hniksic/emacs/htmlize.el.cgi;
+    sha256 = "70cf41a2ea6a478a45143a8cd672381c01ed894448200e602531acbf2b1fd160";
   };
 
   meta = {
diff --git a/pkgs/applications/editors/emacs-modes/org/default.nix b/pkgs/applications/editors/emacs-modes/org/default.nix
index 07ea125afd8..fb4de650ee0 100644
--- a/pkgs/applications/editors/emacs-modes/org/default.nix
+++ b/pkgs/applications/editors/emacs-modes/org/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, emacs, texinfo, which }:
 
 stdenv.mkDerivation rec {
-  name = "org-7.8";
+  name = "org-7.8.03";
 
   src = fetchurl {
     url = "http://orgmode.org/${name}.tar.gz";
-    sha256 = "0idxsxdr5p0bvnjmhvpdkfwhlpkxmihnaljf43k0311g9z3k22qz";
+    sha256 = "49357cca7d892e70cd2dfcc0b5d96d9fd164ef5a1f251ace3865ecb27dc1e958";
   };
 
   buildInputs = [ emacs texinfo ];
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
 
     license = "GPLv3+";
 
-    maintainers = [ stdenv.lib.maintainers.ludo stdenv.lib.maintainers.chaoflow ];
-    platforms = stdenv.lib.platforms.gnu;  # arbitrary choice
+    maintainers = with stdenv.lib.maintainers; [ ludo chaoflow ];
+    platforms = stdenv.lib.platforms.gnu;
   };
 }
diff --git a/pkgs/applications/editors/emacs-snapshot/builder.sh b/pkgs/applications/editors/emacs-snapshot/builder.sh
deleted file mode 100644
index 677311c4fd3..00000000000
--- a/pkgs/applications/editors/emacs-snapshot/builder.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-source $stdenv/setup
-
-preConfigure() {
-    libc=$(cat ${NIX_GCC}/nix-support/orig-libc)
-    echo "libc: $libc"
-
-    for i in src/s/*.h src/m/*.h; do
-        substituteInPlace $i \
-            --replace /usr/lib/crt1.o $libc/lib/crt1.o \
-            --replace /usr/lib/crti.o $libc/lib/crti.o \
-            --replace /usr/lib/crtn.o $libc/lib/crtn.o
-    done
-    
-    for i in Makefile.in ./src/Makefile.in ./lib-src/Makefile.in ./leim/Makefile.in; do
-        substituteInPlace $i --replace /bin/pwd pwd
-    done
-}
-
-preBuild="make bootstrap"
-
-genericBuild
diff --git a/pkgs/applications/editors/emacs-snapshot/default.nix b/pkgs/applications/editors/emacs-snapshot/default.nix
deleted file mode 100644
index 1ae864336e5..00000000000
--- a/pkgs/applications/editors/emacs-snapshot/default.nix
+++ /dev/null
@@ -1,68 +0,0 @@
-{ xawSupport ? true
-, xpmSupport ? true
-, dbusSupport ? true
-, xaw3dSupport ? false
-, gtkGUI ? false
-, xftSupport ? false
-, stdenv, fetchcvs, ncurses, x11, libXaw ? null, libXpm ? null, Xaw3d ? null
-, pkgconfig ? null, gtk ? null, libXft ? null, dbus ? null
-, libpng, libjpeg, libungif, libtiff, texinfo
-, autoconf, automake
-}:
-
-assert xawSupport -> libXaw != null;
-assert xpmSupport -> libXpm != null;
-assert dbusSupport -> dbus != null;
-assert xaw3dSupport -> Xaw3d != null;
-assert gtkGUI -> pkgconfig != null && gtk != null;
-assert xftSupport -> libXft != null && libpng != null; # libpng = probably a bug
-
-let date = "2009-06-26"; in
-stdenv.mkDerivation {
-  name = "emacs-snapshot-23-${date}";
-  
-  builder = ./builder.sh;
-  
-  src = fetchcvs {
-    inherit date;
-    cvsRoot = ":pserver:anonymous@cvs.savannah.gnu.org:/sources/emacs";
-    module = "emacs";
-    sha256 = "bf9b21a0634f45474a1ce91e6153ced69194f1e9c0acd6626a931198f4a5972f";
-  };
-
-  preConfigure = "autoreconf -vfi";
-  
-  buildInputs = [
-    autoconf automake
-    ncurses x11 texinfo
-    (if xawSupport then libXaw else null)
-    (if xpmSupport then libXpm else null)
-    (if dbusSupport then dbus else null)
-    (if xaw3dSupport then Xaw3d else null)
-    libpng libjpeg libungif libtiff # maybe not strictly required?
-  ]
-  ++ (if gtkGUI then [pkgconfig gtk] else [])
-  ++ (if xftSupport then [libXft] else []);
-  
-  configureFlags = "
-    ${if gtkGUI then "--with-x-toolkit=gtk --enable-font-backend --with-xft" else ""}
-  ";
-
-  postInstall = ''
-    cat >$out/share/emacs/site-lisp/site-start.el <<EOF
-;; nixos specific load-path
-(when (getenv "NIX_PROFILES") (setq load-path
-                      (append (reverse (mapcar (lambda (x) (concat x "/share/emacs/site-lisp/"))
-                                               (split-string (getenv "NIX_PROFILES"))))
-                       load-path)))
-EOF
-  '';
-
-  meta = {
-    description = "GNU Emacs with Unicode, GTK and Xft support (23.x alpha)";
-    homepage = http://www.emacswiki.org/cgi-bin/wiki/XftGnuEmacs;
-    license = "GPLv3+";
-    maintainers = [ stdenv.lib.maintainers.ludo ];
-    platforms = stdenv.lib.platforms.linux;  # GTK & co. are needed.
-  };
-}
diff --git a/pkgs/applications/graphics/k3d/default.nix b/pkgs/applications/graphics/k3d/default.nix
new file mode 100644
index 00000000000..c1579579d81
--- /dev/null
+++ b/pkgs/applications/graphics/k3d/default.nix
@@ -0,0 +1,42 @@
+{stdenv, fetchurl, gtkLibs, gnome
+  , cmake, mesa, zlib, python, expat, libxml2, libsigcxx, libuuid, freetype
+  , libpng, boost, doxygen, cairomm, pkgconfig, imagemagick, libjpeg, libtiff
+  , gettext, intltool, perl
+  }:
+
+stdenv.mkDerivation rec {
+  version = "0.8.0.2";
+  name = "k3d-${version}";
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/project/k3d/K-3D%20Source/K-3D%200.8.0.2/k3d-source-0.8.0.2.tar.bz2";
+    sha256 = "01fd2qb0zddif3wz1a2wdmwyzn81cf73678qp2gjs8iikmdz6w7x";
+  };
+
+  patches = [ (fetchurl {
+    url = "http://patch-tracker.debian.org/patch/series/dl/k3d/0.8.0.2-15/k3d_gtkmm224.patch";
+    sha256 = "0a81fg96zby6kidqwj6n8mhbrh0j5fpnmfh7lr6havz5r2is9ks5";
+  })
+   ];
+
+  preConfigure = ''
+    export LD_LIBRARY_PATH="$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/build/lib"
+  '';
+
+  buildInputs = with gtkLibs; with gnome; [
+     cmake mesa zlib python expat libxml2 libsigcxx libuuid freetype libpng
+     boost doxygen cairomm pkgconfig imagemagick libjpeg libtiff gettext
+     intltool perl
+     gtkmm glibmm gtkglext 
+    ];
+
+  doCheck = false;
+
+  meta = {
+    description = "A 3D editor with support for procedural editing";
+    homepage = "http://k-3d.org/";
+    platforms = with stdenv.lib.platforms;
+      linux;
+    maintainers = with stdenv.lib.maintainers; 
+      [raskin];
+  };
+}
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 66c0f039403..3fffc68b6b2 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -7,23 +7,23 @@
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" ;
 
 stdenv.mkDerivation rec {
-  name = "chromium-17.0.943.0-pre${version}";
+  name = "chromium-18.0.975.0-pre${version}";
 
   # To determine the latest revision, get
   # ‘http://commondatastorage.googleapis.com/chromium-browser-continuous/Linux/LAST_CHANGE’.
-  # For the version number, see ‘about:config’.
-  version = "110566";
+  # For the version number, see ‘about:version’.
+  version = "114925";
   
   src =
     if stdenv.system == "x86_64-linux" then
       fetchurl {
         url = "http://commondatastorage.googleapis.com/chromium-browser-continuous/Linux_x64/${version}/chrome-linux.zip";
-        sha256 = "0pi2qbcvqy9gn2s0bfqlam3mj5ghnnnkrbxrrjl63737377an7ha";
+        sha256 = "19ayrcz1vw7nqr3bbas5f414n3kibf7knd285azrk29f7a7dnpd6";
       }
     else if stdenv.system == "i686-linux" then
       fetchurl {
         url = "http://commondatastorage.googleapis.com/chromium-browser-continuous/Linux/${version}/chrome-linux.zip";
-        sha256 = "0mk8ikgz97i69qy1cy3cqw4a2ff2ixjzyw5i86fmrq7m1f156yva";
+        sha256 = "1bhcd3plw3r62bfysc9nszn07xv3gamf5lkwd6ardwyxanclc7x6";
       }
     else throw "Chromium is not supported on this platform.";
 
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
   meta =  with stdenv.lib; {
     description = "Chromium, an open source web browser";
     homepage = http://www.chromium.org/;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = with stdenv.lib.maintainers; [ goibhniu chaoflow ];
     license = licenses.bsd3;
   };
 }
diff --git a/pkgs/applications/networking/browsers/conkeror/default.nix b/pkgs/applications/networking/browsers/conkeror/default.nix
index 08196780143..6bca02820b4 100644
--- a/pkgs/applications/networking/browsers/conkeror/default.nix
+++ b/pkgs/applications/networking/browsers/conkeror/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, unzip, xulrunner, makeWrapper }:
 
 stdenv.mkDerivation {
-  name = "conkeror-1.0pre-20110917";
+  name = "conkeror-1.0pre-20120105";
   
   src = fetchurl {
-    url = http://repo.or.cz/w/conkeror.git/snapshot/9d1f522674379874e502545babe0c843f78fa43c.zip;
-    sha256 = "1ga3d9rc3xfaxvjnhnar752q9ga897q9fck0864i7rh0w7xbrhx2";
+    url = http://repo.or.cz/w/conkeror.git/snapshot/da0f9962eeedca9133e8b1928108594173f1769c.zip;
+    sha256 = "75176e5bb077a5ad05b82df01939edeb240e2caba9657a6e175fb3aabf23b393";
   };
   
   buildInputs = [ unzip makeWrapper ];
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
     '';
     homepage = http://conkeror.org/;
     license = [ "MPLv1.1" "GPLv2" "LGPLv2.1" ];
-    maintainers = with stdenv.lib.maintainers; [ astsmtl ];
+    maintainers = with stdenv.lib.maintainers; [ astsmtl chaoflow ];
     platforms = with stdenv.lib.platforms; linux;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/kadu/default.nix b/pkgs/applications/networking/instant-messengers/kadu/default.nix
index 76b5dde0e87..7dc66886af6 100644
--- a/pkgs/applications/networking/instant-messengers/kadu/default.nix
+++ b/pkgs/applications/networking/instant-messengers/kadu/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, cmake, qt4, libgadu, libXScrnSaver, libsndfile, libX11,
-  alsaLib, aspell, libidn, qca2, phonon }:
+  alsaLib, aspell, libidn, qca2, phonon, pkgconfig }:
 
 stdenv.mkDerivation {
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
     sha256 = "0j88pyp2nqpc57j38zr135ypfiv4v329gfgiz9rdbqi8j26cyp7g";
   };
 
-  buildInputs = [ cmake qt4 libgadu libXScrnSaver libsndfile libX11 alsaLib aspell libidn qca2 phonon
+  buildInputs = [ cmake qt4 libgadu libXScrnSaver libsndfile libX11 alsaLib aspell libidn qca2 phonon pkgconfig
   ];
 
   configureFlags = "CPPFLAGS=-DQT_NO_DEBUG";
diff --git a/pkgs/applications/networking/instant-messengers/psi/default.nix b/pkgs/applications/networking/instant-messengers/psi/default.nix
index 7d04d9e9fec..66dbddece3c 100644
--- a/pkgs/applications/networking/instant-messengers/psi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, aspell, qt4, zlib, sox, libX11, xproto, libSM, 
-  libICE, qca2, pkgconfig, qca2_ossl, liboil, speex, gst_all }:
+  libICE, qca2, pkgconfig, qca2_ossl, liboil, speex, gst_all, which, glib }:
 
 stdenv.mkDerivation rec {
   name = "psi-0.14";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [aspell qt4 zlib sox libX11 xproto libSM libICE 
-    qca2 qca2_ossl pkgconfig];
+    qca2 qca2_ossl pkgconfig which glib];
 
   NIX_CFLAGS_COMPILE="-I${qca2}/include/QtCrypto";
   
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     ];
 
   psiMedia = (import ./psimedia.nix) {
-    inherit stdenv fetchurl qt4 speex gst_all liboil;
+    inherit stdenv fetchurl qt4 speex gst_all liboil which glib pkgconfig;
   };
 
   postInstall = ''
diff --git a/pkgs/applications/networking/instant-messengers/psi/psimedia.nix b/pkgs/applications/networking/instant-messengers/psi/psimedia.nix
index 4574b5a9b35..c7cee2f2c66 100644
--- a/pkgs/applications/networking/instant-messengers/psi/psimedia.nix
+++ b/pkgs/applications/networking/instant-messengers/psi/psimedia.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, qt4, gst_all, liboil, speex}:
+{stdenv, fetchurl, qt4, gst_all, liboil, speex, which, glib, pkgconfig}:
 
 stdenv.mkDerivation rec {
   name = "psimedia";
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "0fxjdz8afh75gfx2msysb1gss6zx578l3224jvc9jhm99w1ii781";
   };
 
-  buildInputs = [qt4 gst_all.gstreamer gst_all.gstPluginsBase liboil speex];
+  buildInputs = [qt4 gst_all.gstreamer gst_all.gstPluginsBase liboil speex which glib pkgconfig];
 
   configurePhase = ''./configure'';
 
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index 9cf5909575b..dc4c0531031 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -1,41 +1,51 @@
-{ fetchurl, stdenv, bash, emacs, gdb, git, glib, gmime, gnupg1, pkgconfig, talloc, xapian }:
+{ fetchurl, stdenv, bash, emacs, gdb, glib, gmime, gnupg1,
+  pkgconfig, talloc, xapian
+}:
 
 stdenv.mkDerivation rec {
-  name = "notmuch-0.9";
+  name = "notmuch-0.11";
 
   src = fetchurl {
     url = "http://notmuchmail.org/releases/${name}.tar.gz";
-    sha256 = "e6f1046941d2894d143cb7c19d4810f97946f98742f6d9b8a7208ddb858c57e4";
+    sha256 = "ce062b31db6868babaf3088adee95bfd1030b2691493e815da1730dd262226c0";
   };
 
-  buildInputs = [ bash emacs gdb git glib gmime gnupg1 pkgconfig talloc xapian ];
+  buildInputs = [ bash emacs gdb glib gmime gnupg1 pkgconfig talloc xapian ];
 
   patchPhase = ''
     (cd test && for prg in \
         aggregate-results.sh \
+        argument-parsing \
         atomicity \
         author-order \
         basic \
         crypto \
+        count \
         dump-restore \
         emacs \
         emacs-large-search-buffer \
         encoding \
         from-guessing \
+        help-test \
+        hooks \
         json \
         long-id \
         maildir-sync \
+        multipart \
         new \
         notmuch-test \
+        python \
         raw \
         reply \
         search \
         search-by-folder \
         search-insufficient-from-quoting \
         search-folder-coherence \
+        search-limiting \
         search-output \
         search-position-overlap-bug \
         symbol-hiding \
+        tagging \
         test-lib.sh \
         test-verbose \
         thread-naming \
@@ -47,15 +57,16 @@ stdenv.mkDerivation rec {
     done)
   '';
 
-  postBuild = ''
-    make test
-  '';
+  # XXX: emacs tests broken
+  #postBuild = ''
+  #  make test
+  #'';
 
   meta = {
     description = "Notmuch -- The mail indexer";
     longDescription = "";
     license = stdenv.lib.licenses.gpl3;
-    maintainers = [ stdenv.lib.maintainers.chaoflow ];
-    platforms = stdenv.lib.platforms.gnu;  # arbitrary choice
+    maintainers = with stdenv.lib.maintainers; [ chaoflow ];
+    platforms = stdenv.lib.platforms.gnu;
   };
 }
diff --git a/pkgs/applications/networking/newsreaders/kwooty/default.nix b/pkgs/applications/networking/newsreaders/kwooty/default.nix
new file mode 100644
index 00000000000..4d68191c6f2
--- /dev/null
+++ b/pkgs/applications/networking/newsreaders/kwooty/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, gcc, cmake, qt4, gettext
+, kdelibs, kdebase_workspace, perl
+, openssl, phonon, automoc4
+, libX11, libXext, libXft
+, unrar, p7zip, par2cmdline, coreutils
+}:
+
+let version = "0.8.0";
+    name = "kwooty-${version}";
+in stdenv.mkDerivation {
+  inherit name;
+  
+  src = fetchurl {
+    url = "mirror://sourceforge/kwooty/${name}.tar.gz";
+    sha256 = "bb50fb9b3d6c973f2abee62cfc11a7086900a4b676c12bf4e0a2adc170a977fc";
+  };
+
+  patches = [ ./searchPath.patch ];
+
+  postPatch = ''
+    echo "Changing paths to archive utilities to the nix store";
+    substituteInPlace "src/utility.cpp" \
+      --replace "/usr/bin/unrar" "${unrar}/bin" \
+      --replace "/usr/bin/unpar" "${par2cmdline}/bin" \
+      --replace "/usr/bin/7z" "${p7zip}/bin" \
+      --replace "/usr/bin/nice" "${coreutils}/bin/nice"
+  '';
+
+  buildInputs =
+    [ gcc perl cmake qt4 gettext automoc4 openssl
+      kdelibs kdebase_workspace phonon
+      libX11 libXext libXft
+    ];
+                  
+  meta = with stdenv.lib; {
+    description = "Binary news reader for KDE";
+  };
+}
diff --git a/pkgs/applications/networking/newsreaders/kwooty/searchPath.patch b/pkgs/applications/networking/newsreaders/kwooty/searchPath.patch
new file mode 100644
index 00000000000..602002d0173
--- /dev/null
+++ b/pkgs/applications/networking/newsreaders/kwooty/searchPath.patch
@@ -0,0 +1,19 @@
+--- kwooty-kwooty/src/utility.cpp	2012-01-24 22:22:45.091383072 +0100
++++ kwooty-kwooty/src/utility.cpp	2012-01-24 22:29:08.526208140 +0100
+@@ -299,6 +299,7 @@
+ 
+     QString programPathName;
+     QStringList searchPathList = Settings::searchPathList();
++    searchPathList << "/usr/bin/unpar" << "/usr/bin/unrar" << "/usr/bin/7z";
+ 
+     QStringList programsWithDifferentNames = programToSearch.split(";");
+ 
+@@ -363,7 +364,7 @@
+     QStringList niceProcessArgs;
+ 
+     // look for 'nice' location :
+-    QString nicePath = KStandardDirs::findExe("nice");
++    QString nicePath = QString("/usr/bin/nice");
+     niceProcessArgs.append(nicePath);
+     niceProcessArgs.append("-n");
+ 
diff --git a/pkgs/applications/office/ledger/default.nix b/pkgs/applications/office/ledger/2.6.3.nix
index c1cd4b42a02..c1cd4b42a02 100644
--- a/pkgs/applications/office/ledger/default.nix
+++ b/pkgs/applications/office/ledger/2.6.3.nix
diff --git a/pkgs/applications/office/ledger/3.0.nix b/pkgs/applications/office/ledger/3.0.nix
index 0df148ce390..325ab3b0a0f 100644
--- a/pkgs/applications/office/ledger/3.0.nix
+++ b/pkgs/applications/office/ledger/3.0.nix
@@ -2,15 +2,15 @@
 , pcre, expat, boost, mpfr, git, texinfo }:
 
 let
-  rev = "cf35984971341b8a8688";
+  rev = "d2915c66";
 in
 stdenv.mkDerivation {
-  name = "ledger3-${rev}";
+  name = "ledger3-2012.01.${rev}";
 
   src = fetchgit {
     url = "git://github.com/jwiegley/ledger.git";
     inherit rev;
-    sha256 = "4078983db9fc8d232fa71a31b47e505c531971b4515d6ef723e7d333a2352d2a";
+    sha256 = "a489c8b1c48889040d2cebaac1a0019e90acac0b51c9abf7914944dcb4b801e7";
   };
 
   buildInputs = [
@@ -24,7 +24,8 @@ stdenv.mkDerivation {
 
   buildPhase = ''
     sed -i acprep \
-      -e 's|search_prefixes = .*|search_prefixes = ["${boost}"]|'
+      -e 's|search_prefixes = .*|search_prefixes = ["${boost}"]|' \
+      -e 's|/usr/bin/python|${python}/bin/python|'
     export MAKEFLAGS="-j$NIX_BUILD_CORES -l$NIX_BUILD_CORES"
     python acprep update --no-pch --prefix=$out
   '';
diff --git a/pkgs/applications/office/openoffice/generate-libreoffice-srcs.sh b/pkgs/applications/office/openoffice/generate-libreoffice-srcs.sh
new file mode 100644
index 00000000000..97bf2b32c9c
--- /dev/null
+++ b/pkgs/applications/office/openoffice/generate-libreoffice-srcs.sh
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+VERSIONBASE=3.4.5
+
+VERSION=3.4.5.2
+
+if [ $# -gt 2 ]; then
+  VERSIONBASE=$1
+  VERSION=$2
+fi
+
+echo '{fetchurl} : ['
+
+for a in artwork base bootstrap calc components extensions extras filters \
+  help impress libs-core libs-extern libs-extern-sys libs-gui postprocess \
+  translations ure writer sdk testing; do
+
+  URL=http://download.documentfoundation.org/libreoffice/src/$VERSIONBASE/libreoffice-$a-$VERSION.tar.bz2
+
+  echo '(fetchurl {'
+  echo "  url = \"$URL\";"
+  echo "  sha256 = \"`nix-prefetch-url $URL`\";"
+  echo '})'
+done
+
+echo ']'
diff --git a/pkgs/applications/office/openoffice/libreoffice-srcs.nix b/pkgs/applications/office/openoffice/libreoffice-srcs.nix
new file mode 100644
index 00000000000..ed795c9a79f
--- /dev/null
+++ b/pkgs/applications/office/openoffice/libreoffice-srcs.nix
@@ -0,0 +1,78 @@
+{fetchurl} : [
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-artwork-3.4.5.2.tar.bz2";
+  sha256 = "01vi1njw0agpvxi0141k2arzhgq1kjbda7sj1l0l304qj9n78b1q";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-base-3.4.5.2.tar.bz2";
+  sha256 = "0f5rsyrn33iz0sny3wxsghv7c7yrbhas42yarb5rq958i3kpm6wz";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-calc-3.4.5.2.tar.bz2";
+  sha256 = "1l00y0qj1s9m31jmqg7q7bczxa5xsng388nqc9zc3vd6zjf4xy9i";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-components-3.4.5.2.tar.bz2";
+  sha256 = "1sq6yl06x006wxj1i89lv75sskb1bkxws82rcj1gvih6r8czih52";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-extensions-3.4.5.2.tar.bz2";
+  sha256 = "18xhk9h9vl9qhwlgv8ks3xi6hls2vgnkygnz1yhpf4p2g2y6nv7z";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-extras-3.4.5.2.tar.bz2";
+  sha256 = "0zxm30na6hzpjfasi1g890magf63kmg39y6y56wz9hv2z9p5q8jv";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-filters-3.4.5.2.tar.bz2";
+  sha256 = "002qxqav39530csraq16ga4fnvw8v9wqbvp88b6lzi2m5yqpbl46";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-help-3.4.5.2.tar.bz2";
+  sha256 = "1agsqzz73dmsy2jsw63qq1ljx4h0ppz7zwqllc7617yiak0rqsqq";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-impress-3.4.5.2.tar.bz2";
+  sha256 = "0ivabx4wl7dkfalr0z4gqm5976phc6mkidnv1i580ixrf0zdz483";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-libs-core-3.4.5.2.tar.bz2";
+  sha256 = "0blwd58hf51iixikrjrlqdm6n40wv5k2c9c8krfzxfcvk20mvv4b";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-libs-extern-3.4.5.2.tar.bz2";
+  sha256 = "01cm3fjfj08a7b8i6iszml2ly1wa2hnkqqq1irvjb0wb1fjjxq3s";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-libs-extern-sys-3.4.5.2.tar.bz2";
+  sha256 = "1528n6mnlhpdhi9zfvqziwr6knsak212ghjww0jlfh31ky3whlh0";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-libs-gui-3.4.5.2.tar.bz2";
+  sha256 = "0win8si2yjkbfrwx46dw6as82iw7x4wd53cirncsrwvzksdqphcr";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-postprocess-3.4.5.2.tar.bz2";
+  sha256 = "1rspqy1drfvj3rdfx8d7wbwn17vw08n26qmb98xwkgf5najdpfnp";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-translations-3.4.5.2.tar.bz2";
+  sha256 = "0ngynrskq6h58gybswcpklj49cyvh0igksngbr0gz6n1yq3471iz";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-ure-3.4.5.2.tar.bz2";
+  sha256 = "0wg06gbaq3ynqzaxaaqgxkjssxnggw6xqgfm63rmn9c1cd4q0mzy";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-writer-3.4.5.2.tar.bz2";
+  sha256 = "0k7xf94abavdzpns1z13phl3vjz0xkfv2h5sn7rgpr3dy184klxh";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-sdk-3.4.5.2.tar.bz2";
+  sha256 = "1f9iv875aw9sic4gl45ik1vx24gpq9iarjl673wz6l0wxr6hgrgw";
+})
+(fetchurl {
+  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-testing-3.4.5.2.tar.bz2";
+  sha256 = "05sk3li5jgmjv722ncsr2i7arhmsvkkvmh4qw7xl70p8dpxhla8q";
+})
+]
diff --git a/pkgs/applications/office/openoffice/libreoffice.nix b/pkgs/applications/office/openoffice/libreoffice.nix
new file mode 100644
index 00000000000..5fde0cfa285
--- /dev/null
+++ b/pkgs/applications/office/openoffice/libreoffice.nix
@@ -0,0 +1,137 @@
+{ stdenv, fetchurl, pam, python, tcsh, libxslt, perl, ArchiveZip
+, CompressZlib, zlib, libjpeg, expat, pkgconfig, freetype, libwpd
+, libxml2, db4, sablotron, curl, libXaw, fontconfig, libsndfile, neon
+, bison, flex, zip, unzip, gtk, libmspack, getopt, file, cairo, which
+, icu, boost, jdk, ant, libXext, libX11, libXtst, libXi, cups
+, libXinerama, openssl, gperf, cppunit, GConf, ORBit2
+, autoconf, openldap, postgresql, bash
+, langs ? [ "en-US" "ca" "ru" "eo" "fr" "nl" "de" "en-GB" ]
+}:
+
+throw "The expression for libreoffice is still not ready"
+
+stdenv.mkDerivation rec {
+  name = "libreoffice-3.4.5.2";
+
+  srcs_download = import ./libreoffice-srcs.nix { inherit fetchurl; };
+
+  src = fetchurl {
+    url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-bootstrap-3.4.5.2.tar.bz2";
+    sha256 = "05xz6ykddrm6mrgl9jssr2xpg2ir0x6c1c3n1cph0mvd0hiz58x9";
+  };
+
+  preConfigure = ''
+    sed -i 's,/usr/bin/env bash,${bash}/bin/bash,' Makefile.in bin/unpack-sources
+
+    # Needed to find genccode
+    PATH=$PATH:${icu}/sbin
+  '';
+
+  buildPhase = ''
+    for a in $srcs_download; do
+      FILE=$(basename $a)
+      # take out the hash
+      cp -v $a src/$(echo $FILE | sed 's/[^-]*-//')
+    done
+
+    # Remove an exit 1, ignoring the lack of wget or curl
+    sed '/wget nor curl/{n;d}' -i download
+    ./download
+
+    # Fix svtools: hardcoded jpeg path
+    sed -i -e 's,^JPEG3RDLIB=.*,JPEG3RDLIB=${libjpeg}/lib/libjpeg.so,' solenv/inc/libs.mk
+    # Fix sysui: wants to create a tar for root
+    sed -i -e 's,--own.*root,,' sysui/desktop/slackware/makefile.mk
+    # Fix libtextcat: wants to set rpath to /usr/local/lib
+    sed -i -e 's,^CONFIGURE_FLAGS.*,& --prefix='$TMPDIR, libtextcat/makefile.mk
+    # Fix hunspell: the checks fail due to /bin/bash missing, and I find this fix easier
+    sed -i -e 's,make && make check,make,' hunspell/makefile.mk
+    # Fix redland: wants to set rpath to /usr/local/lib
+    sed -i -e 's,^CONFIGURE_FLAGS.*,& --prefix='$TMPDIR, redland/redland/makefile.mk \
+      redland/raptor/makefile.mk redland/rasqal/makefile.mk
+
+    # This to aovid using /lib:/usr/lib at linking
+    sed -i '/gb_LinkTarget_LDFLAGS/{ n; /rpath-link/d;}' solenv/gbuild/platform/unxgcc.mk
+
+    find -name "*.cmd" -exec sed -i s,/lib:/usr/lib,, {} \;
+
+    make
+  '';
+
+  configureFlags = [
+    # Helpful, while testing the expression
+    # "--with-num-cpus=4"
+
+    "--enable-verbose"
+
+    # Without these, configure does not finish
+    "--disable-gnome-vfs"
+    "--disable-gstreamer"
+    "--disable-opengl"
+    "--without-junit"
+    "--without-system-mythes"
+
+    # Without this, it wants to download
+    "--with-cairo"
+    "--with-system-libs"
+    "--with-system-python"
+    "--with-system-boost"
+    "--with-system-db"
+
+    # I imagine this helps. Copied from go-oo.
+    "--disable-epm"
+    "--disable-fontooo"
+    "--disable-gnome-vfs"
+    "--disable-gnome-vfs"
+    "--disable-mathmldtd"
+    "--disable-mozilla"
+    "--disable-odk"
+    "--disable-pasf"
+    "--disable-dbus"
+    "--disable-kde"
+    "--disable-kde4"
+    "--disable-mono"
+    "--with-package-format=native"
+    "--with-jdk-home=${jdk}"
+    "--with-ant-home=${ant}"
+    "--without-afms"
+    "--without-dict"
+    "--without-fonts"
+    "--without-myspell-dicts"
+    "--without-nas"
+    "--without-ppds"
+    "--without-system-agg"
+    "--without-system-beanshell"
+    "--without-system-hsqldb"
+    "--without-system-xalan"
+    "--without-system-xerces"
+    "--without-system-xml-apis"
+    "--without-system-xt"
+    "--without-system-jars"
+    "--without-system-hunspell"
+    "--without-system-altlinuxhyph"
+    "--without-system-lpsolve"
+    "--without-system-graphite"
+    "--without-system-mozilla"
+    "--without-system-libwps"
+    "--without-system-libwpg"
+    "--without-system-redland"
+  ];
+
+  buildInputs = [
+    pam python tcsh libxslt perl ArchiveZip CompressZlib zlib 
+    libjpeg expat pkgconfig freetype libwpd libxml2 db4 sablotron curl 
+    libXaw fontconfig libsndfile neon bison flex zip unzip gtk libmspack 
+    getopt file jdk cairo which icu boost libXext libX11 libXtst libXi
+    cups libXinerama openssl gperf GConf ORBit2
+    ant autoconf openldap postgresql cppunit
+  ];
+
+  meta = {
+    description = "Libre-office, variant of openoffice.org";
+    homepage = http://libreoffice.org/;
+    license = "LGPL";
+    maintainers = [ stdenv.lib.maintainers.viric ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
index 870c80f6020..759bd66beb9 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
@@ -4,14 +4,14 @@
 }:
 
 let
-  version = "3.20120113";
+  version = "3.20120123";
 in
 stdenv.mkDerivation {
   name = "git-annex-${version}";
 
   src = fetchurl {
     url = "http://ftp.de.debian.org/debian/pool/main/g/git-annex/git-annex_${version}.tar.gz";
-    sha256 = "060s96d5a6vx5alwkfgzsvwx1k9m81l6hbx4rnak9iy5iy28zd0z";
+    sha256 = "dad93dad08ddfd0d239ee57bbf61dd2ee3755d9a94e2946ac5d7bb4cfa565488";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index a5e4eb8e280..8381196196e 100644
--- a/pkgs/applications/version-management/mercurial/default.nix
+++ b/pkgs/applications/version-management/mercurial/default.nix
@@ -2,14 +2,14 @@
 , guiSupport ? false, tk ? null, ssl, curses }:
 
 let
-  name = "mercurial-2.0";
+  name = "mercurial-2.0.2";
 in
 stdenv.mkDerivation {
   inherit name;
 
   src = fetchurl {
     url = "http://mercurial.selenic.com/release/${name}.tar.gz";
-    sha256 = "1565ns768vgvsqx6pn5q9r2670lmvq8y4zy0jwgwfx2h9n5bgymg";
+    sha256 = "ca8b8fb93f2e3e8c3cdf2f81d87e92592f5f20c5bfcaaeb6a75550d4a69572c9";
   };
 
   inherit python; # pass it so that the same version can be used in hg2git
@@ -49,7 +49,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A fast, lightweight SCM system for very large distributed projects";
-    homepage = http://www.selenic.com/mercurial/;
+    homepage = "http://www.selenic.com/mercurial/";
     license = "GPLv2";
   };
 }
diff --git a/pkgs/applications/video/MPlayer/default.nix b/pkgs/applications/video/MPlayer/default.nix
index 348a5e7e323..0566b4bbe29 100644
--- a/pkgs/applications/video/MPlayer/default.nix
+++ b/pkgs/applications/video/MPlayer/default.nix
@@ -61,19 +61,19 @@ let
       license = "unfree";
     };
   } else null;
-  
+
   ffmpegGit = fetchgit {
     url = "git://git.videolan.org/ffmpeg.git";
-    rev = "80d156d";
-    sha256 = "6d0124621491b8adc5f1bfb426ab137efc72dab99a89835aa3c30b970cb14004";
+    rev = "9e53f62be1a171eaf9620958c225d42cf5142a30";
+    sha256 = "be0ef2a394c82a0eee0be66bc0b943d37efb90f74ce1030aa89606109434c943";
   };
-  
-  mplayerRev = "33472";
+
+  mplayerRev = "34586";
 
 in
 
 stdenv.mkDerivation rec {
-  name = "mplayer-r${mplayerRev}";
+  name = "mplayer-${mplayerRev}";
 
   src = fetchsvn {
     # Old kind of URL:
@@ -86,7 +86,7 @@ stdenv.mkDerivation rec {
 
     url = "svn://svn.mplayerhq.hu/mplayer/trunk";
     rev = "${mplayerRev}";
-    sha256 = "01b0b5x6li8c2m2mam7mabmk02npvprcwrim00a51sdlvqxh309v";
+    sha256 = "5688add3256b5de8e0410194232aaaeb01531bb507459ffe4f07e69cb2d81bd7";
   };
 
   prePatch = ''
diff --git a/pkgs/applications/video/kdenlive/default.nix b/pkgs/applications/video/kdenlive/default.nix
index 6db6e630d32..c133c90f8e9 100644
--- a/pkgs/applications/video/kdenlive/default.nix
+++ b/pkgs/applications/video/kdenlive/default.nix
@@ -1,19 +1,19 @@
 { stdenv, fetchurl, lib, cmake, qt4, perl, kdelibs, automoc4, phonon, mlt, gettext
-, qimageblitz, qjson, shared_mime_info, soprano }:
+, qimageblitz, qjson, shared_mime_info, soprano, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "kdenlive-${version}";
-  version = "0.8";
+  version = "0.8.2.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/kdenlive/${name}.tar.gz";
-    sha256 = "18e3390c9eb7124af5cd43819c679374aec46dcaf1fc5cdb43918db470c1076f";
+    sha256 = "a454a0659c9673453800df8382dfdbcb87acfb9b174712ffeb46b8304bf00717";
   };
 
-  patches = [ ./kdenlive-newmlt.patch ];
+  patches = [ ./qtgl-header-change.patch ];
 
   buildInputs = [ cmake qt4 perl kdelibs automoc4 phonon mlt gettext
-    qimageblitz qjson shared_mime_info soprano ];
+    qimageblitz qjson shared_mime_info soprano pkgconfig ];
 
   meta = {
     description = "Free and open source video editor";
diff --git a/pkgs/applications/video/kdenlive/kdenlive-newmlt.patch b/pkgs/applications/video/kdenlive/kdenlive-newmlt.patch
deleted file mode 100644
index b3a772a7ac6..00000000000
--- a/pkgs/applications/video/kdenlive/kdenlive-newmlt.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From http://kdenlive.org/forum/cant-start-kdnlive-sdl-module-missing-mlt
-
-Kdenlive 0.8 tries to detect mlt by reading from stderr, but between
-mlt 0.7.2 and 0.7.4 mlt this has changed from stderr to stdout.
-===================================================================
---- kdenlive-0.8/src.orig/wizard.cpp	2011-04-26 21:44:22.000000000 +0200
-+++ kdenlive-0.8/src/wizard.cpp	2011-07-21 18:22:18.470831892 +0200
-@@ -214,7 +214,7 @@
-         button(QWizard::NextButton)->setEnabled(false);
-     } else {
-         checkProcess.waitForFinished();
--        QByteArray result = checkProcess.readAllStandardError();
-+        QByteArray result = checkProcess.readAllStandardOutput();
-
-         // Check MLT avformat module
-         QTreeWidgetItem *avformatItem = new QTreeWidgetItem(m_mltCheck.programList, QStringList() << QString() << i18n("Avformat module (FFmpeg)"));
-@@ -246,7 +246,7 @@
-                     kDebug() << "// Error querying MLT's version";
-                 } else {
-                     checkProcess.waitForFinished();
--                    mltVersion = checkProcess.readAllStandardError();
-+                    mltVersion = checkProcess.readAllStandardOutput();
-                     mltVersion = mltVersion.section('\n', 0, 0).simplified();
-                     mltVersion = mltVersion.section(' ', -1).simplified();
-                     version = 1000 * mltVersion.section('.', 0, 0).toInt() + 100 * mltVersion.section('.', 1, 1).toInt() + mltVersion.section('.', 2, 2).toInt();
-@@ -275,7 +275,7 @@
-                     kDebug() << "// Error parsing MLT's avformat codecs";
-                 } else {
-                     checkProcess2.waitForFinished();
--                    QByteArray codecList = checkProcess2.readAllStandardError();
-+                    QByteArray codecList = checkProcess2.readAllStandardOutput();
-                     QString acodecList(codecList);
-                     QStringList result;
-                     QStringList alist = acodecList.split('\n', QString::SkipEmptyParts);
-@@ -292,7 +292,7 @@
-                     kDebug() << "// Error parsing MLT's avformat codecs";
-                 } else {
-                     checkProcess2.waitForFinished();
--                    QByteArray codecList = checkProcess2.readAllStandardError();
-+                    QByteArray codecList = checkProcess2.readAllStandardOutput();
-                     QString vcodecList(codecList);
-                     QStringList result;
-                     QStringList vlist = vcodecList.split('\n', QString::SkipEmptyParts);
-@@ -309,7 +309,7 @@
-                     kDebug() << "// Error parsing MLT's avformat codecs";
-                 } else {
-                     checkProcess2.waitForFinished();
--                    QByteArray codecList = checkProcess2.readAllStandardError();
-+                    QByteArray codecList = checkProcess2.readAllStandardOutput();
-                     QString vcodecList(codecList);
-                     QStringList result;
-                     QStringList vlist = vcodecList.split('\n', QString::SkipEmptyParts);
-@@ -606,7 +606,7 @@
-
-     checkProcess.waitForFinished();
-
--    QByteArray result = checkProcess.readAllStandardError();
-+    QByteArray result = checkProcess.readAllStandardOutput();
-     if (!result.contains("- avformat")) errorMessage.append(i18n("MLT's avformat (FFMPEG) module not found. Please check your FFMPEG and MLT install. Kdenlive will not work until this issue is fixed.") + "\n");*/
-
-     QProcess checkProcess2;
-@@ -616,7 +616,7 @@
-
-     checkProcess2.waitForFinished();
-
--    QByteArray result = checkProcess2.readAllStandardError();
-+    QByteArray result = checkProcess2.readAllStandardOutput();
-     if (!result.contains("sdl") || !result.contains("sdl_preview")) errorMessage.append(i18n("MLT's SDL module not found. Please check your MLT install. Kdenlive will not work until this issue is fixed.") + '\n');
-
-     if (!errorMessage.isEmpty()) {
diff --git a/pkgs/applications/video/kdenlive/qtgl-header-change.patch b/pkgs/applications/video/kdenlive/qtgl-header-change.patch
new file mode 100644
index 00000000000..91d9f13737b
--- /dev/null
+++ b/pkgs/applications/video/kdenlive/qtgl-header-change.patch
@@ -0,0 +1,14 @@
+Correct for changed Qt opengl includes.
+Reference: http://www.kdenlive.org/mantis/view.php?id=2396
+
+diff -Naur kdenlive-0.8.2.1.orig//src/videoglwidget.cpp kdenlive-0.8.2.1/src/videoglwidget.cpp
+--- kdenlive-0.8.2.1.orig//src/videoglwidget.cpp	2012-01-24 00:04:53.588121469 -0430
++++ kdenlive-0.8.2.1/src/videoglwidget.cpp	2012-01-24 00:05:32.817410938 -0430
+@@ -2,6 +2,7 @@
+ #include <QtGui>
+ #include <QtOpenGL>
+ #include "videoglwidget.h"
++#include "GL/glu.h"
+ 
+ #ifndef GL_TEXTURE_RECTANGLE_EXT
+ #define GL_TEXTURE_RECTANGLE_EXT GL_TEXTURE_RECTANGLE_NV
diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix
index 471a4c4a76f..8e11dd6068d 100644
--- a/pkgs/applications/video/vlc/default.nix
+++ b/pkgs/applications/video/vlc/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, perl, xlibs, libdvdnav
 , zlib, a52dec, libmad, faad2, ffmpeg, alsaLib
-, pkgconfig, dbus, hal, fribidi, qt4, freefont_ttf
-, libvorbis, libtheora, speex, lua, libgcrypt, libupnp
+, pkgconfig, dbus, fribidi, qt4, freefont_ttf
+, libvorbis, libtheora, speex, lua5, libgcrypt, libupnp
 , libcaca, pulseaudio, flac, schroedinger, libxml2, librsvg
 , mpeg2dec, udev, gnutls, avahi, libcddb, jackaudio, SDL, SDL_image
 , libmtp, unzip, taglib, libkate, libtiger, libv4l, samba, liboggz
@@ -10,29 +10,27 @@
 
 stdenv.mkDerivation rec {
   name = "vlc-${version}";
-  version = "1.1.11";
+  version = "1.1.13";
 
   patchPhase = ''sed -e "s@/bin/echo@echo@g" -i configure'';
 
   src = fetchurl {
-    url = "mirror://sourceforge/vlc/${name}.tar.bz2";
-    sha256 = "1jz1yklvh5apy2ygqwnyq61mhg09h0fn32hdygxfsaxq12z609b8";
+    url = "http://download.videolan.org/pub/videolan/vlc/${version}/${name}.tar.bz2";
+    sha256 = "1h93jdx89dfgxlnw66lfcdk9kisadm689zanvgkzbfb3si2frv83";
   };
 
   buildInputs = [
     perl zlib a52dec libmad faad2 ffmpeg alsaLib libdvdnav libdvdnav.libdvdread
-    pkgconfig dbus hal fribidi qt4 libvorbis libtheora speex lua libgcrypt
+    dbus fribidi qt4 libvorbis libtheora speex lua5 libgcrypt
     libupnp libcaca pulseaudio flac schroedinger libxml2 librsvg mpeg2dec
     udev gnutls avahi libcddb jackaudio SDL SDL_image libmtp unzip taglib
     libkate libtiger libv4l samba liboggz libass libdvbpsi
   ]
   ++ (with xlibs; [ xlibs.xlibs libXv libXvMC libXpm xcbutil libva ]);
 
+  buildNativeInputs = [ pkgconfig ];
+
   configureFlags = [ "--enable-alsa"
-    "--disable-glx"
-    "--disable-remoteosd"
-    "--disable-dbus"
-    "--disable-dbus-control"
     "--with-kde-solid=$out/share/apps/solid/actions"
   ];
 
diff --git a/pkgs/build-support/clang-wrapper/default.nix b/pkgs/build-support/clang-wrapper/default.nix
index 4730a7969e2..8e9fb4d9de4 100644
--- a/pkgs/build-support/clang-wrapper/default.nix
+++ b/pkgs/build-support/clang-wrapper/default.nix
@@ -78,7 +78,7 @@ stdenv.mkDerivation {
        if stdenv.system == "x86_64-linux" then "ld-linux-x86-64.so.2" else
        if stdenv.system == "armv5tel-linux" then "ld-linux.so.3" else
        if stdenv.system == "powerpc-linux" then "ld.so.1" else
-       if stdenv.system == "mips64-linux" then "ld.so.1" else
+       if stdenv.system == "mips64el-linux" then "ld.so.1" else
        abort "don't know the name of the dynamic linker for this platform")
     else "";
 }
diff --git a/pkgs/build-support/gcc-wrapper/default.nix b/pkgs/build-support/gcc-wrapper/default.nix
index d3f957d18a2..f0062f8191e 100644
--- a/pkgs/build-support/gcc-wrapper/default.nix
+++ b/pkgs/build-support/gcc-wrapper/default.nix
@@ -86,7 +86,7 @@ stdenv.mkDerivation {
        if stdenv.system == "x86_64-linux" then "ld-linux-x86-64.so.2" else
        if stdenv.system == "armv5tel-linux" then "ld-linux.so.3" else
        if stdenv.system == "powerpc-linux" then "ld.so.1" else
-       if stdenv.system == "mips64-linux" then "ld.so.1" else
+       if stdenv.system == "mips64el-linux" then "ld.so.1" else
        abort "don't know the name of the dynamic linker for this platform")
     else "";
 }
diff --git a/pkgs/desktops/kde-4.8/default.nix b/pkgs/desktops/kde-4.8/default.nix
index d8bbdd86075..fd0cc516b13 100644
--- a/pkgs/desktops/kde-4.8/default.nix
+++ b/pkgs/desktops/kde-4.8/default.nix
@@ -1,7 +1,7 @@
 { callPackage, callPackageOrig, stdenv, qt48 }:
 
 let
-  release = "4.7.97";
+  release = "4.8.0";
 
   # Need callPackageOrig to avoid infinite cycle
   kde = callPackageOrig ./kde-package {
diff --git a/pkgs/desktops/kde-4.8/files/kde-wallpapers-buildsystem.patch b/pkgs/desktops/kde-4.8/files/kde-wallpapers-buildsystem.patch
new file mode 100644
index 00000000000..378cdb64694
--- /dev/null
+++ b/pkgs/desktops/kde-4.8/files/kde-wallpapers-buildsystem.patch
@@ -0,0 +1,17 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3d3e247..f78db67 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,5 +1,10 @@
+-find_package(KDE4 REQUIRED)
+-include(KDE4Defaults)
++project(kde-wallpapers NONE)
++if( WALLPAPER_INSTALL_DIR )
++  message(STATUS "Installing wallpapers to user-supplied directory ${WALLPAPER_INSTALL_DIR}")
++else()
++  find_package(KDE4 REQUIRED)
++  include(KDE4Defaults)
++endif()
+ 
+ install(DIRECTORY Air DESTINATION ${WALLPAPER_INSTALL_DIR} PATTERN .svn EXCLUDE)
+ 
diff --git a/pkgs/desktops/kde-4.8/kde-package/4.7.97.nix b/pkgs/desktops/kde-4.8/kde-package/4.7.97.nix
deleted file mode 100644
index b833ba6fc40..00000000000
--- a/pkgs/desktops/kde-4.8/kde-package/4.7.97.nix
+++ /dev/null
@@ -1,300 +0,0 @@
-{stable=false;
-hashes=builtins.listToAttrs[
-  {name="analitza";value="1xxhzqdcjinxyh9w24bn77qnxxp85rb7c50ad7ssb0wv4x9n62k9";}
-  {name="ark";value="0wagf0nws8mslz12gj38bp4rckw67qgfljigmiwlbq8nd1xl8j7g";}
-  {name="blinken";value="1w6jrmnaq04pnfvqmi7jwcanag0rrj7n3zlcmv1sp0lw4wp1ymwi";}
-  {name="cantor";value="088b2aj4bp8w8vk02v9sbm5mpfhvgbnw8pjdcn2gm3m14s93w0h5";}
-  {name="filelight";value="16y7v1m4ypjmlbih05i0r3k0s9av77jxq3v9g6vq6ikh98m9fcgf";}
-  {name="gwenview";value="05hxanwh7irj15riix8z2j50p295y73qaxgr82km093k9a0d1fkp";}
-  {name="jovie";value="1sv6aiy8d2ks1dbad5wjrq1w8vza87b09fqaspkkcbi0r1kdh4za";}
-  {name="kaccessible";value="1cr1b9fmf5qmh640q5h0h8phz9rrmqszrwhwrfzsmd7nxsl1y27v";}
-  {name="kactivities";value="0gyprn0mrh3swfjaxmvrbgyj81jx4qp8c0r8ym6dl1fsxri3p92a";}
-  {name="kalgebra";value="0fy6bimaycrbj5wy0422iybxw29cc0jl0683rx7r90vdyaf85jdp";}
-  {name="kalzium";value="149mmwz37akr3dzpin8s6hyyvp9dk5m3ijax80nc4z7sf7ciipqk";}
-  {name="kamera";value="1y6vykyvzmlm4zikcd74qjirqmygj0w6h1ra8whcgp3mwzfbybhq";}
-  {name="kanagram";value="18ccq0bpqj0kk7b36i1bxywcw6jpa6g136kd8lpd6ppy8fn9mfb0";}
-  {name="kate";value="13iwdhsghn7n80vl8cvsx3095algw9z8q1pcabcfiwkffkzdpcd2";}
-  {name="kbruch";value="178vc3nbqwbprw7ksdnbxxp1kibp74a8wmdkp6avhl9l694fwlyb";}
-  {name="kcalc";value="1llr012q5li9da1d4dlx0fsi1bvbl3w65213i78c5pwrq9w4l5cn";}
-  {name="kcharselect";value="14mw7rc0ghd1g7s40v7irkwmfs0k8xqhwka1s33k8y7lnan5gic7";}
-  {name="kcolorchooser";value="1x8c71d4vq8wl693wkjlbbalzn2nfa2rkimblyvv8779193bpvng";}
-  {name="kdeadmin";value="0h1bmrd6yz7qnpi2b76mqjdbrvchmb7wsw5a04pgs2cii0fgzpw1";}
-  {name="kdeartwork";value="01v1cmlscr4nixphad8j09xf6vh99y8924cf0x0vazxrqg23b792";}
-  {name="kde-baseapps";value="17g902kswan3qcfaig1zb2xdip59z9p199zingc4wjm3sr2bjd6j";}
-  {name="kde-base-artwork";value="1rxfrcq5c70dvrgisn5zd8lnj3q36ic5w6lp25yd23zyb89ybdff";}
-  {name="kdegames";value="0r3sijgsb40b9jp4imrx50l1pn8yxv7qkj80pyz3ad0q73hn7lyr";}
-  {name="kdegraphics-strigi-analyzer";value="1zw679b3s24aa2q771d1qxm70v081b7wasv9p4cla2a6kkicfzxq";}
-  {name="kdegraphics-thumbnailers";value="1xwnk1fkmysfz1kidabb72cafn15nr36yazpb4na1byzvwdyzlwy";}
-  {name="kdelibs";value="1mf29b8vyp9h9pi0bm17hkmscnmq1if14p9p18prc3ssnvyljjy3";}
-  {name="kdemultimedia";value="1115xgm197wx8m7cqmwsfaq8plrs6ksvrb7bsxqcghslsd9af9m2";}
-  {name="kdenetwork";value="0fhclhwpw8kjvzb577bl6hhcpa9i4qlyxhkflifslkfq1015h3r3";}
-  {name="kdepim";value="19hcv3plzypnivi7ki9h477l152y5hhk0zr03gas9xggwl8hyw0w";}
-  {name="kdepimlibs";value="0c05vjld2hbg08cnjqdc3cbwviakhxc6f9qlxlqh2yy8idmd3gkq";}
-  {name="kdepim-runtime";value="05c9siwb5gv0b1dsqfabalmgkpgklly6bxlfvk9gl9v9dxnsjlb4";}
-  {name="kdeplasma-addons";value="056bkr7794kv5qy51l3cip1xp69h67ps4m47g9scykr8qsknvkjy";}
-  {name="kde-runtime";value="1g04wvjsnqxr187mv59hb2f1hsfyh7x8qyypqhc0r09b9z8ri41q";}
-  {name="kdesdk";value="0cn4hlxfmk9rfy1n2m064wcgjlxfx1lrfvkw0dwvfabyhqipcidi";}
-  {name="kdetoys";value="043wqxqsj36c0nwsl1qlzkdpkxn2q0pf9mgj35zrmzn9kvsrfxc7";}
-  {name="kde-wallpapers";value="1i2l5h0z3bj5kfagdvzi0f1rrv4a1yq0kn23ggdvv6gi1gj5mbrp";}
-  {name="kdewebdev";value="0wycx5m9ir7k0nrl8jyir0c1cai6wg4i07ffrvwg0mwv083v562q";}
-  {name="kde-workspace";value="058rm45cxj28m5z6afih9v4f5ingj9nhq4ab0ccs2gpk7arphdyr";}
-  {name="kdf";value="0fx2basl17qlx2a8mmlk7hcdvb8vg2pnqazgxf0fpy0m8kn3f9c0";}
-  {name="kfloppy";value="0617i1c64lyxkj2zl3p0m9wgb1c1ay43miiyapfbw5sbqnjclrpl";}
-  {name="kgamma";value="17zhsr0q75q48qn46gg8j2ddpggcg8r2xz7r2rd94w3nkvb61lar";}
-  {name="kgeography";value="13gbpkpiwlp5ccb4nslskgs6gdyg2gy1qn35xwjzg7dh5yy4knwz";}
-  {name="kgpg";value="0yrqvhw3k9r2mpximk3fg5qng6hsr2n6ahy48cl8a27rrjy9awnd";}
-  {name="khangman";value="0gbdj78bdh2m7sfbj0x8vzi13mnad6fv3ymdk80xlll34vrd0jpr";}
-  {name="kig";value="0ypb4vvc4igjl1j7krzp6q7rdd7b4459aa4px6d8ajlyq3g8xv94";}
-  {name="kimono";value="1a31n5gr05z546f7rjhcykgpp6nkz6j13s83h9ag8m9xf7nrqbcf";}
-  {name="kiten";value="0c0s6haqhwgmj2lc2qjsirjfsbpkffs1v7dgampjy1zkf4harass";}
-  {name="klettres";value="04w23p53kdqkp455795pgghw05njarkdsd0rnb5j6cvf1bgasycn";}
-  {name="kmag";value="037fcpflw1rf6084qxp6ipfrbqqr7a3sd746mhmhbvmmdia0s0df";}
-  {name="kmousetool";value="0fbms2sqz60p4vnjzplmnw6fkizpzky5vcdm3x3l66ijfsagnwzh";}
-  {name="kmouth";value="03vpf0ly044dqjass5qvq9xgp99bizs45cz7lzfhlq8rx4zknjnn";}
-  {name="kmplot";value="14anq2mgd0jb8p82si6i4ggy2gp9w2shlvi1mxamksf9bxcy7ivs";}
-  {name="kolourpaint";value="0x74df72rw0zn7pishca9qjajg2jw551rvz5q4yllk31x96xfq8v";}
-  {name="konsole";value="15w1lj0vaga7fpxv08pkg7wnn9hx8dgdrymk1hxq0ipylwz2clzj";}
-  {name="korundum";value="1hlr5w2nk1qnm7xbgml4abbm4mskipabk46m31f7lyniaf5nh4py";}
-  {name="kremotecontrol";value="1wwwwa9fxdpdy8zz9sbcnja94pmqhl2jcaqikd18saqc0mrk331j";}
-  {name="kross-interpreters";value="1hwwmg5l912ahb1bw03zjg3rlycz6lmwnbr8bssrlp6mfq9by8xx";}
-  {name="kruler";value="10c3l0nxr0v1x1hxmvryj8hw2q7anmi75610m2spbzh5n0qrhzky";}
-  {name="ksaneplugin";value="1by1mxilyf5nv6a12pv31fb01q1mflnzr0dfshk2fr0i927m6rxw";}
-  {name="ksecrets";value="15rad9gwhbwan51qljhdcry0r5lnf6mrin524q8b5djdhk9w2h3v";}
-  {name="ksnapshot";value="08asqkxxzk3y5lyahygksdjvsy6a65x3jp2j5pnbgpf1yd91wl0l";}
-  {name="kstars";value="079f315sr2wcjawx73wlkc9nq9nnrj83d8l59jqiy3nmzsspjmjb";}
-  {name="ktimer";value="1s2ymf6kn5hhhqhs9nnqfsfgsy137yk2ais3hpija5mz4a85w0zr";}
-  {name="ktouch";value="0434s9d1i3nw2slxz74v66c84mzlpm7jlfz666w1h5nm8870d3r6";}
-  {name="kturtle";value="0wivxlf9wprd0baq8y9ygybc77bl82gq7wmyx3zaf7jr9nifish9";}
-  {name="kwallet";value="1227s24qs7s4ic2dwk7kw7rcw8lgq2k2vzgbjkmydk3d9wjzk6nw";}
-  {name="kwordquiz";value="0hc8bf0m24m6mnv7vk74sz7cjw1rc8wshy76wvp671hjxmajprdm";}
-  {name="libkdcraw";value="1j3x5fbi594yjhmwx1gzar45yjh0qazzx58bq6xh0zb7xlc47wfg";}
-  {name="libkdeedu";value="11v81ba5y9p5zmx51d5w5lgr6d32bahclx82mxzyb5zypzc7kb4s";}
-  {name="libkexiv2";value="09mwd2vzqkxd3n7rwq5xf5bjqgzjnw5mdzz9svx3bppvcsc74xj6";}
-  {name="libkipi";value="1317zrrjgx04pnq7xqg2qk3bzpr1fikkivqwf133b89h1ksdqdwd";}
-  {name="libksane";value="0fi2iigcliild4d4gzxy3n7lz41vkwwxsychn0knjvlbgs4ykjfh";}
-  {name="marble";value="0qifpsn6z22akngxi0hjslp5qh4avr217234z1aq6h7s5wql1f0x";}
-  {name="mobipocket";value="02k0k306mcnd2c41sa5hr76lm5asd4qqp7x2zy7ksqyfds5n97fs";}
-  {name="okular";value="04v2qdjn1mgc1n7fq17r7z2cb7zlc7bkvm6y2cqqllk70f4s4kmh";}
-  {name="oxygen-icons";value="1vgdp7lxbkm9a43x0y1q1446qi57c7r1nik5a89lakyqjha6c0yk";}
-  {name="parley";value="1gr941sixbjpl410qks25dpwgp81sjg6f18196p2a629aqk3ghw6";}
-  {name="perlkde";value="02jq01bf5wszc8i9mnfgzmx8385if3lxyj0nj65k22hv6s6y7jic";}
-  {name="perlqt";value="0zzmlr7hp8bvrsr2k6z2xrhb33vryvvxhk0a8aiwii0d84qfws8r";}
-  {name="printer-applet";value="19z5zrypvdbvn207ygbsz418w8gan43lhs55hhk8gyjks0kbks9v";}
-  {name="pykde4";value="1sb06rppbzm682s7yjlr26k4n78l9lzmhvmxzgysxw9br54dk1hc";}
-  {name="qtruby";value="1g8s8i82n5hxs5lwiipgvgwzripd9injmgzrvgxfdnf014772jf5";}
-  {name="qyoto";value="1pnnjj75mm488chd3v79g628b0fgxgglvj9iq6gd2s9dkld3gw2m";}
-  {name="rocs";value="1xdswahdsvr3c6cf4cf2c51l5v14sd3r3ac6j96q5sk3siv33msn";}
-  {name="smokegen";value="1pc2kg6i0476fvcg9kl3787k40g56vb2l3zb0xqx6cwr13m8lvih";}
-  {name="smokekde";value="1l74j9j4m6lp706k1b99g7l5cklpzdn66snrs495a8k9789vgv5c";}
-  {name="smokeqt";value="0vxmfp0wpdg47x7nz7pl220jzgp6ya4jrhk64an9wpc506qz3k1x";}
-  {name="step";value="11bihc857vi97in8zly5p049acfr74asbis1r4y07fsip2945mbz";}
-  {name="superkaramba";value="02bd14gik9i4ag0j7c9q4hk0f28m0g64wa9gcgmgnx7kwbsfzx5y";}
-  {name="svgpart";value="1px8jbdpfyjm44qwpm2b0brc03zhha5wbj9wpx7lrdq0qyrwiyf6";}
-  {name="sweeper";value="03gsh431gylqii92v5lc7f7417kjgmsg1cyj861wgp9rav2hf1av";}
-];
-modules=[
-{
-  module="kdegraphics";
-  split=true;
-  pkgs=[
-    { name="gwenview";  }
-    { name="kamera";  }
-    { name="kcolorchooser";  }
-    { name="kdegraphics-strigi-analyzer"; sane="kdegraphics_strigi_analyzer"; }
-    { name="kdegraphics-thumbnailers"; sane="kdegraphics_thumbnailers"; }
-    { name="kgamma";  }
-    { name="kolourpaint";  }
-    { name="kruler";  }
-    { name="ksaneplugin";  }
-    { name="ksnapshot";  }
-    { name="libkdcraw";  }
-    { name="libkexiv2";  }
-    { name="libkipi";  }
-    { name="libksane";  }
-    { name="mobipocket";  }
-    { name="okular";  }
-    { name="svgpart";  }
-  ];
-}
-{
-  module="kdeutils";
-  split=true;
-  pkgs=[
-    { name="ark";  }
-    { name="filelight";  }
-    { name="kcalc";  }
-    { name="kcharselect";  }
-    { name="kdf";  }
-    { name="kfloppy";  }
-    { name="kgpg";  }
-    { name="kremotecontrol";  }
-    { name="ksecrets";  }
-    { name="ktimer";  }
-    { name="kwallet";  }
-    { name="printer-applet"; sane="printer_applet"; }
-    { name="superkaramba";  }
-    { name="sweeper";  }
-  ];
-}
-{
-  module="kdeedu";
-  split=true;
-  pkgs=[
-    { name="analitza";  }
-    { name="blinken";  }
-    { name="cantor";  }
-    { name="kalgebra";  }
-    { name="kalzium";  }
-    { name="kanagram";  }
-    { name="kbruch";  }
-    { name="kgeography";  }
-    { name="khangman";  }
-    { name="kig";  }
-    { name="kiten";  }
-    { name="klettres";  }
-    { name="kmplot";  }
-    { name="kstars";  }
-    { name="ktouch";  }
-    { name="kturtle";  }
-    { name="kwordquiz";  }
-    { name="libkdeedu";  }
-    { name="marble";  }
-    { name="parley";  }
-    { name="rocs";  }
-    { name="step";  }
-  ];
-}
-{
-  module="kdebindings";
-  split=true;
-  pkgs=[
-    { name="kimono";  }
-    { name="korundum";  }
-    { name="kross-interpreters"; sane="kross_interpreters"; }
-    { name="perlkde";  }
-    { name="perlqt";  }
-    { name="pykde4";  }
-    { name="qtruby";  }
-    { name="qyoto";  }
-    { name="smokegen";  }
-    { name="smokekde";  }
-    { name="smokeqt";  }
-  ];
-}
-{
-  module="kdeaccessibility";
-  split=true;
-  pkgs=[
-    { name="jovie";  }
-    { name="kaccessible";  }
-    { name="kmag";  }
-    { name="kmousetool";  }
-    { name="kmouth";  }
-  ];
-}
-{
-  module="kde-baseapps";
-sane="kde_baseapps";  split=true;
-  pkgs=[
-    { name="kate";  }
-    { name="kde-baseapps"; sane="kde_baseapps"; }
-    { name="konsole";  }
-  ];
-}
-{ module="kactivities";  split=false;}
-{ module="kdeadmin";  split=false;
-  pkgs=[
-    { name="strigi-analyzer"; sane="strigi_analyzer";}
-    { name="kuser"; }
-    { name="kcron"; }
-    { name="ksystemlog"; }
-    { name="system-config-printer-kde"; sane="system_config_printer_kde";}
-  ];
-
-}
-{ module="kdeartwork";  split=false;
-  pkgs=[
-    { name="ColorSchemes"; }
-    { name="IconThemes"; }
-    { name="emoticons"; }
-    { name="kscreensaver"; }
-    { name="kwin-styles"; sane="kwin_styles";}
-    { name="sounds"; }
-    { name="styles"; }
-    { name="wallpapers"; }
-    { name="HighResolutionWallpapers"; }
-    { name="WeatherWallpapers"; }
-    { name="desktopthemes"; }
-    { name="aurorae"; }
-  ];
-
-}
-{ module="kdegames";  split=false;}
-{ module="kdelibs";  split=false;}
-{ module="kdemultimedia";  split=false;}
-{ module="kdenetwork";  split=false;
-  pkgs=[
-    { name="kfile-plugins"; sane="kfile_plugins";}
-    { name="kget"; }
-    { name="kopete"; }
-    { name="krdc"; }
-    { name="kppp"; }
-    { name="krfb"; }
-    { name="kdnssd"; }
-    { name="filesharing"; }
-  ];
-
-}
-{ module="kdepim";  split=false;}
-{ module="kdepimlibs";  split=false;}
-{ module="kdepim-runtime"; sane="kdepim_runtime"; split=false;}
-{ module="kdeplasma-addons"; sane="kdeplasma_addons"; split=false;}
-{ module="kde-runtime"; sane="kde_runtime"; split=false;}
-{ module="kdesdk";  split=false;
-  pkgs=[
-    { name="cervisia"; }
-    { name="lokalize"; }
-    { name="kdeaccounts-plugin"; sane="kdeaccounts_plugin";}
-    { name="dolphin-plugins-svn"; sane="dolphin_plugins_svn";subdir="dolphin-plugins/svn"; }
-    { name="dolphin-plugins-git"; sane="dolphin_plugins_git";subdir="dolphin-plugins/git"; }
-    { name="dolphin-plugins-hg"; sane="dolphin_plugins_hg";subdir="dolphin-plugins/hg"; }
-    { name="dolphin-plugins-bazaar"; sane="dolphin_plugins_bazaar";subdir="dolphin-plugins/bazaar"; }
-    { name="kcachegrind"; }
-    { name="kapptemplate"; }
-    { name="kpartloader"; }
-    { name="strigi-analyzer"; sane="strigi_analyzer";}
-    { name="kioslave"; }
-    { name="okteta"; }
-    { name="kmtrace"; }
-    { name="kompare"; }
-    { name="kprofilemethod"; }
-    { name="kstartperf"; }
-    { name="kuiviewer"; }
-    { name="poxml"; }
-    { name="scripts"; }
-    { name="umbrello"; }
-  ];
-
-}
-{ module="kdetoys";  split=false;
-  pkgs=[
-    { name="kteatime"; }
-    { name="ktux"; }
-    { name="amor"; }
-  ];
-
-}
-{ module="kde-wallpapers"; sane="kde_wallpapers"; split=false;}
-{ module="kdewebdev";  split=false;
-  pkgs=[
-    { name="klinkstatus"; }
-    { name="kfilereplace"; }
-    { name="kimagemapeditor"; }
-    { name="kommander"; }
-  ];
-
-}
-{ module="kde-workspace"; sane="kde_workspace"; split=false;}
-{ module="oxygen-icons"; sane="oxygen_icons"; split=false;}
-];
-}
diff --git a/pkgs/desktops/kde-4.8/kde-package/4.8.0.nix b/pkgs/desktops/kde-4.8/kde-package/4.8.0.nix
new file mode 100644
index 00000000000..f2affd33095
--- /dev/null
+++ b/pkgs/desktops/kde-4.8/kde-package/4.8.0.nix
@@ -0,0 +1,299 @@
+{stable=true;
+hashes=builtins.listToAttrs[
+  {name="analitza";value="080s52jr6qbag4v5z2yw6jps5r8am2vfw6g8lih7ipq2vhf9rzbp";}
+  {name="ark";value="1mvdalg45nn33bgfddqimv06b6l25ja0na2vvcfdmk1jxw7yzcr7";}
+  {name="blinken";value="0ajgh45y8p8db6yx36vrl6a81h7wylx074wv4lii28gqvgdb0qip";}
+  {name="cantor";value="16s03wjm7yz0fck754d1590g5n0nv4nsqf9da32nyjlivlp5vh9x";}
+  {name="filelight";value="1rsb5n3fx90f2ln2bxc7m2d6f7fg45f02ch0dapv2qkrzc2li4jf";}
+  {name="gwenview";value="1131nx5a95mshj55gqgixsh4lslk9rsl78pm98mydqsdqvlns8v0";}
+  {name="jovie";value="1bg64z3yxwi85pl0yimzbb7a7r9hjqpmplcjb6v3qp6mazymavin";}
+  {name="kaccessible";value="1dk9m2mmm553mx9jjmvg8qpvrkjzkbzy4gqk35yz33nkfdpcqdgb";}
+  {name="kactivities";value="1bk8prycvck4ad86d5pj77czrbwfl5s1a3iq7245i30wl0nkdpr6";}
+  {name="kalgebra";value="08azpq13wm8crgmwkvrhz77gzhywy6h079q36wffm1d0nr5r1f6x";}
+  {name="kalzium";value="00q8alp4kry9q21nf29w9mj19m4c108mdn3c8rfz55yyy6mkcr2p";}
+  {name="kamera";value="0lqw2zdc4vpdhgdg430b07gcd73kann4x054gbg3cgvrkjm2kw3x";}
+  {name="kanagram";value="0z37x65m8p01msl5zg3lqfzb09wali0wnl72rqr65rvzn2h52j08";}
+  {name="kate";value="01mqahcp0c7n90m734ky455nlrgciqg5ranp5bvffkw3zj0i6qx1";}
+  {name="kbruch";value="0z1602khvp1h1xc2d4vf6gxvr7slfq79n403gmqxy0a2qdnxdi8b";}
+  {name="kcalc";value="1q1j93ivq2p8dxz2lf9ylp3jh70136iy9l7n1k06y072kjamwcig";}
+  {name="kcharselect";value="0q67cngwyadks66a3imgw4iqkjinb7hdlgah0lx8gb2nn0pdk0n5";}
+  {name="kcolorchooser";value="0h909x9wiwlfk0bk5yjzdpd7x14rqbnz353svkraw54k1p73y4ga";}
+  {name="kdeadmin";value="1c23b54gia9829nblicys0vpb2lz3cya4s9h3637jsv0ksxql8jy";}
+  {name="kdeartwork";value="05bk1m8nz6m1px8fha82iwjs73yakjn5g0kmsplnxk2f8213r9v7";}
+  {name="kde-baseapps";value="1qrl4df3340iqshp54f2f2xqjzc87byvknjdhc9xx0npq8y8mn4w";}
+  {name="kdegames";value="1d0cw0ri9bcrk89ai1bx6cqw6jxa2f13bzf9qx8ychgcpmp7raqa";}
+  {name="kdegraphics-mobipocket";value="0mvqa4ln9gbpisqmdksmg3jizaxwwp3d45c97fg3pspybmj2mi4r";}
+  {name="kdegraphics-strigi-analyzer";value="1d6hf876ssql4zkvkwp34q73rd38c528i2xda35gd56rg9baszz9";}
+  {name="kdegraphics-thumbnailers";value="0arpazfah4v1db1bh1hf1qzv1mjgvgs9czm5bi8k28xsfm99yqzj";}
+  {name="kdelibs";value="17haj04m7af5xh92l5z6a42nscdgsw2cfkp50ikr6crqqr816967";}
+  {name="kdemultimedia";value="14678fbjban7yz89wqsrbyn050myh1py9d6d9811njvv1kjj56kb";}
+  {name="kdenetwork";value="1qyr9lx8hrw4dp27p72zwnhyiammiv69rydr2d9yajrl7b69ipz6";}
+  {name="kdepim";value="0n05hgzazc55s04kglv2bgjx1kri1pjf0rdy2y6lwfwqchzmnnz6";}
+  {name="kdepimlibs";value="0zl3pf7nhg21b999pbhhz3ppdr0n5y3gibws57r483zb9g6c8iq7";}
+  {name="kdepim-runtime";value="19whdvwjf56s2gq4ihvlxd761bvlzv8kagcvzdrhnrdapilf2l57";}
+  {name="kdeplasma-addons";value="0sq5mnzhnrzhlgw79mwr764gahqd1prj9gn41hxmlnmqd8mqfycw";}
+  {name="kde-runtime";value="0lx7qq78y8xlm3wmyms1zzj5z4wy1iw69pv1xknz6dnx5s3znx86";}
+  {name="kdesdk";value="0wy7li6agzbfhwza9zqbpfnmxigjilsf0cg47lnz9cc35k1ddq5r";}
+  {name="kdetoys";value="1rimzsjdj8ikvw97cjzdc7v6xcib7b9v7fvdff2rij6caqlqy9ha";}
+  {name="kde-wallpapers";value="0jf3fb33vlc1srwmyqhd19rjllyp4vjfs8hcp4yp1z6chf817x7m";}
+  {name="kdewebdev";value="0mssi6k2dxb2cszc43ffiw8n879ccyx0znr9lqvgn1xj6lbq0xd9";}
+  {name="kde-workspace";value="1vmv0kzh91lfa4kyvp111hf85fn2480rc4dhld26a7jck1arcsqi";}
+  {name="kdf";value="1ymaiy6mlq44c7cma4ka9214vb44sgd5qijhv8q6cc02i1n7pzij";}
+  {name="kfloppy";value="06jdskyfmcckyvmhh7h689j2pdrn10w3zafasssvibz9vs7ckk6h";}
+  {name="kgamma";value="18ywm3801vpi4lza5n23476irk3m3djf9cbya468kvs23m67604w";}
+  {name="kgeography";value="0dkb7riqbigak5bznfmq0l0pvacskcxjxwgnh2q9pzdsbax6g0y9";}
+  {name="kgpg";value="0b3pdv4xnlh6xg7vvr3vnzlcggrk8a9a8cq9lwwlzgjvhn2ljk7x";}
+  {name="khangman";value="0ykz88q3w527avjqq4zz9dbklkwhv3x52fk7x5bd352n3yvzc39g";}
+  {name="kig";value="0wkw2jngjc04g0ydc6rz6abnlqpi9l57yf9q6ad2xwavf8naawhh";}
+  {name="kimono";value="037l6d5g0zx7x52nd36rz9yylnpinpj7cgdw2laiczyq15r3w9wh";}
+  {name="kiten";value="0jnkw324plbp7h4ah75k98nai4vpw1nmsr4hg5cflzc2nqmvyigh";}
+  {name="klettres";value="0b9p5hlx3pk8h9p8z7y62mvx96k4blv73nmw7c7338apj0xk2xn7";}
+  {name="kmag";value="0hcy8y7y6w746p6ka30npsnmhwcr3s2263s7kspcm8k4xf43z51m";}
+  {name="kmousetool";value="1gqdsfzywj5iz8skn75nwa6gvzfzd4i3vma9c098pa508srachf8";}
+  {name="kmouth";value="1jijjpppr49za141fzq21bn7mgfp9z3vsyrrb8ik7v84zx4f46dk";}
+  {name="kmplot";value="0mzr4pf2z5j2b7af4rfrn5spzcb1nllk7zkn460izhmr5k59hrzl";}
+  {name="kolourpaint";value="1r2lcrfswm9mivmjwj37w9hkhl9zbmn7shrwl0xjgsdpkfqzd130";}
+  {name="konsole";value="1k1r85j72vbkxg0balj95d2b24gycbqlfp4632krkp98p27k9d3r";}
+  {name="korundum";value="1xy0gqms9fa0a48z1bwf0p6293q23fz4hyrm02b4c4bn08c2izp4";}
+  {name="kremotecontrol";value="05rmjq67bxssfyzc82ba1b77zv3nwmjyqf9qh43izj5vlf9cd0d5";}
+  {name="kross-interpreters";value="1dw5n6z29mlgc8x9za914ppd6f7maik9b61pn6m9b53rjcf3xx10";}
+  {name="kruler";value="1cw37khl676l1jqzm74bajdjzky0w43y4kidy7x5ycbm1bw1wqmj";}
+  {name="ksaneplugin";value="0vmamcmy8g9k63dm9vnbqhyjdalh8a0ypw8xc1wyanwnh3plvjxn";}
+  {name="ksecrets";value="0yb4dlg6spzgspg6ax9lhajzp201v5dblrldmbg0yja8w40vz4cb";}
+  {name="ksnapshot";value="0bwm48a22xm57zw0wznm9frslabzlrsl701krf4dggwvjgxjcz7f";}
+  {name="kstars";value="0swqj1pvlb2nmm8bfw00nna2m481545271hnpk5mhrmmxzmmdvs1";}
+  {name="ktimer";value="1isx067ccg5w95wlrs1z6xcc0qkdbr6ngi6i7qh7zb4f4v594gkg";}
+  {name="ktouch";value="1nggn0qw2wf86cgsy1hnk99f5zrfmw5x3gzwm9czpniyvh6w7yyv";}
+  {name="kturtle";value="0sb7pkx75i7dc0qg6kbb7hdjkfkkbbsadrvygk1rq5wmahh1piaw";}
+  {name="kwallet";value="0jizkaxa5y95h8fh07yfij89zw1jidr8ysgf71d8fmaswblqkv7f";}
+  {name="kwordquiz";value="02sdpr9jy738rhlmxllzpri1f6hmc9qb47fki8lb2wqiz5rr57j9";}
+  {name="libkdcraw";value="0xnb5ksydkvdcvagsfk5bksz2k2kwawjxl6v6pr0dld86d621051";}
+  {name="libkdeedu";value="11dnnfnxcc130qrmmr7kjafy2b91z3zh4k4sqsfq5v054kmr5vvc";}
+  {name="libkexiv2";value="1knn3igvpwc9knvb83yq2r05aax7pwv33khcjhhmxh55ms1kiz31";}
+  {name="libkipi";value="1pbrplwy8r58h04b96dil20a31bn14szz71siy1h3whn2qg3hda4";}
+  {name="libksane";value="19r6lnr92yp3v0w9rplggyfrnw19k1x2nwsvv7rhapwxqpqszpks";}
+  {name="marble";value="0bkihnkmzwqgq0fghb0qilhw2j66kkbal0nds0h4zgjml2mvf4kk";}
+  {name="okular";value="0hzj4rn9vdisq2v6lka6986slcb04h7s3svrgk9mh56l062vavsd";}
+  {name="oxygen-icons";value="1jwb95zscvqrj6g7a8kmzzywyq72wwldkkkf0klwczpd6kclzbf0";}
+  {name="parley";value="0ja3fahwc0dpfnabvpa1gsqqwqdb72wbvnl79m1asd7f7hlj9s1v";}
+  {name="perlkde";value="1nsaqp3pyyf8lpnnqw28h3gsg1f0dgbf1cavl1k00w997v6ih1k9";}
+  {name="perlqt";value="082fn1bgj5ws1df8ixnxj7z4n4x5b1mn8wfkszr33wgf9jf9sa7s";}
+  {name="printer-applet";value="0sx0rly7rlnvd6hcrnh8yn35r4vpx8lkvlfgjkqp5bksm3bc3ybd";}
+  {name="pykde4";value="1b00xswl5ixi84dk3c2c4wn4cywpj0bgmg57mhilq23r9dp38dwl";}
+  {name="qtruby";value="00qqhv2l7ad4qm2rwf7iw4f2vgz3slxvlmzsz1wd7j6m1z5n2zqr";}
+  {name="qyoto";value="0nhw0l0gn08h6fp3msfn5iq2q49pkmfi611a11nw1n3057ppiis0";}
+  {name="rocs";value="09a9jgb2088xp1z150zjr36nzsrxgzkqhvy2rxq8qj0ls7m2mcnn";}
+  {name="smokegen";value="1wp7kq7j3vgrnzj4g8fqmmhdg1nkkprnm6g25sn9zw9s0f4228l1";}
+  {name="smokekde";value="17sb2fpb84s15pza92ah3g1cbjyxjjpxb6ni2qjpin45llwdpz06";}
+  {name="smokeqt";value="0zdckhi52hjd5ajlzaas8ykcm5qh5yp48vrdh4cwvj8sv32bhbgd";}
+  {name="step";value="1ai50fc75ahbzac7ssvwhz81wg75w755pxx2w68ibplrw1qihrsh";}
+  {name="superkaramba";value="0gqg2g1h9h16wsfmw7875njdj2p0n51p03d0x10i2zajf9d34hhp";}
+  {name="svgpart";value="09zsdz69n08ifkq8f27av360zky4qpvrn234xnbyq48y0dcvjv2f";}
+  {name="sweeper";value="1wajv5jnx1nbckg6zrqy0imdrb8hb4nfb6xg2fs9rqx942c0bhzz";}
+];
+modules=[
+{
+  module="kdegraphics";
+  split=true;
+  pkgs=[
+    { name="gwenview";  }
+    { name="kamera";  }
+    { name="kcolorchooser";  }
+    { name="kdegraphics-mobipocket"; sane="kdegraphics_mobipocket"; }
+    { name="kdegraphics-strigi-analyzer"; sane="kdegraphics_strigi_analyzer"; }
+    { name="kdegraphics-thumbnailers"; sane="kdegraphics_thumbnailers"; }
+    { name="kgamma";  }
+    { name="kolourpaint";  }
+    { name="kruler";  }
+    { name="ksaneplugin";  }
+    { name="ksnapshot";  }
+    { name="libkdcraw";  }
+    { name="libkexiv2";  }
+    { name="libkipi";  }
+    { name="libksane";  }
+    { name="okular";  }
+    { name="svgpart";  }
+  ];
+}
+{
+  module="kdeutils";
+  split=true;
+  pkgs=[
+    { name="ark";  }
+    { name="filelight";  }
+    { name="kcalc";  }
+    { name="kcharselect";  }
+    { name="kdf";  }
+    { name="kfloppy";  }
+    { name="kgpg";  }
+    { name="kremotecontrol";  }
+    { name="ksecrets";  }
+    { name="ktimer";  }
+    { name="kwallet";  }
+    { name="printer-applet"; sane="printer_applet"; }
+    { name="superkaramba";  }
+    { name="sweeper";  }
+  ];
+}
+{
+  module="kdeedu";
+  split=true;
+  pkgs=[
+    { name="analitza";  }
+    { name="blinken";  }
+    { name="cantor";  }
+    { name="kalgebra";  }
+    { name="kalzium";  }
+    { name="kanagram";  }
+    { name="kbruch";  }
+    { name="kgeography";  }
+    { name="khangman";  }
+    { name="kig";  }
+    { name="kiten";  }
+    { name="klettres";  }
+    { name="kmplot";  }
+    { name="kstars";  }
+    { name="ktouch";  }
+    { name="kturtle";  }
+    { name="kwordquiz";  }
+    { name="libkdeedu";  }
+    { name="marble";  }
+    { name="parley";  }
+    { name="rocs";  }
+    { name="step";  }
+  ];
+}
+{
+  module="kdebindings";
+  split=true;
+  pkgs=[
+    { name="kimono";  }
+    { name="korundum";  }
+    { name="kross-interpreters"; sane="kross_interpreters"; }
+    { name="perlkde";  }
+    { name="perlqt";  }
+    { name="pykde4";  }
+    { name="qtruby";  }
+    { name="qyoto";  }
+    { name="smokegen";  }
+    { name="smokekde";  }
+    { name="smokeqt";  }
+  ];
+}
+{
+  module="kdeaccessibility";
+  split=true;
+  pkgs=[
+    { name="jovie";  }
+    { name="kaccessible";  }
+    { name="kmag";  }
+    { name="kmousetool";  }
+    { name="kmouth";  }
+  ];
+}
+{
+  module="kde-baseapps";
+sane="kde_baseapps";  split=true;
+  pkgs=[
+    { name="kate";  }
+    { name="kde-baseapps"; sane="kde_baseapps"; }
+    { name="konsole";  }
+  ];
+}
+{ module="kactivities";  split=false;}
+{ module="kdeadmin";  split=false;
+  pkgs=[
+    { name="strigi-analyzer"; sane="strigi_analyzer";}
+    { name="kuser"; }
+    { name="kcron"; }
+    { name="ksystemlog"; }
+    { name="system-config-printer-kde"; sane="system_config_printer_kde";}
+  ];
+
+}
+{ module="kdeartwork";  split=false;
+  pkgs=[
+    { name="ColorSchemes"; }
+    { name="IconThemes"; }
+    { name="emoticons"; }
+    { name="kscreensaver"; }
+    { name="kwin-styles"; sane="kwin_styles";}
+    { name="sounds"; }
+    { name="styles"; }
+    { name="wallpapers"; }
+    { name="HighResolutionWallpapers"; }
+    { name="WeatherWallpapers"; }
+    { name="desktopthemes"; }
+    { name="aurorae"; }
+  ];
+
+}
+{ module="kdegames";  split=false;}
+{ module="kdelibs";  split=false;}
+{ module="kdemultimedia";  split=false;}
+{ module="kdenetwork";  split=false;
+  pkgs=[
+    { name="kfile-plugins"; sane="kfile_plugins";}
+    { name="kget"; }
+    { name="kopete"; }
+    { name="krdc"; }
+    { name="kppp"; }
+    { name="krfb"; }
+    { name="kdnssd"; }
+    { name="filesharing"; }
+  ];
+
+}
+{ module="kdepim";  split=false;}
+{ module="kdepimlibs";  split=false;}
+{ module="kdepim-runtime"; sane="kdepim_runtime"; split=false;}
+{ module="kdeplasma-addons"; sane="kdeplasma_addons"; split=false;}
+{ module="kde-runtime"; sane="kde_runtime"; split=false;}
+{ module="kdesdk";  split=false;
+  pkgs=[
+    { name="cervisia"; }
+    { name="lokalize"; }
+    { name="kdeaccounts-plugin"; sane="kdeaccounts_plugin";}
+    { name="dolphin-plugins-svn"; sane="dolphin_plugins_svn";subdir="dolphin-plugins/svn"; }
+    { name="dolphin-plugins-git"; sane="dolphin_plugins_git";subdir="dolphin-plugins/git"; }
+    { name="dolphin-plugins-hg"; sane="dolphin_plugins_hg";subdir="dolphin-plugins/hg"; }
+    { name="dolphin-plugins-bazaar"; sane="dolphin_plugins_bazaar";subdir="dolphin-plugins/bazaar"; }
+    { name="kcachegrind"; }
+    { name="kapptemplate"; }
+    { name="kpartloader"; }
+    { name="strigi-analyzer"; sane="strigi_analyzer";}
+    { name="kioslave"; }
+    { name="okteta"; }
+    { name="kmtrace"; }
+    { name="kompare"; }
+    { name="kprofilemethod"; }
+    { name="kstartperf"; }
+    { name="kuiviewer"; }
+    { name="poxml"; }
+    { name="scripts"; }
+    { name="umbrello"; }
+  ];
+
+}
+{ module="kdetoys";  split=false;
+  pkgs=[
+    { name="kteatime"; }
+    { name="ktux"; }
+    { name="amor"; }
+  ];
+
+}
+{ module="kde-wallpapers"; sane="kde_wallpapers"; split=false;}
+{ module="kdewebdev";  split=false;
+  pkgs=[
+    { name="klinkstatus"; }
+    { name="kfilereplace"; }
+    { name="kimagemapeditor"; }
+    { name="kommander"; }
+  ];
+
+}
+{ module="kde-workspace"; sane="kde_workspace"; split=false;}
+{ module="oxygen-icons"; sane="oxygen_icons"; split=false;}
+];
+}
diff --git a/pkgs/desktops/kde-4.8/kde-wallpapers.nix b/pkgs/desktops/kde-4.8/kde-wallpapers.nix
index 97bfc1bfabf..5de0caf4ba9 100644
--- a/pkgs/desktops/kde-4.8/kde-wallpapers.nix
+++ b/pkgs/desktops/kde-4.8/kde-wallpapers.nix
@@ -1,12 +1,15 @@
-{ kde, kdelibs }:
+{ kde, cmake }:
 
 kde {
+  buildNativeInputs = [ cmake ];
 
-  buildInputs = [ kdelibs ];
+  patches = [ ./files/kde-wallpapers-buildsystem.patch ];
+
+  cmakeFlags = "-DWALLPAPER_INSTALL_DIR=share/wallpapers";
 
   outputHashAlgo = "sha256";
   outputHashMode = "recursive";
-  outputHash = "101v30x8sw96mq43hs7wzppjc8xhh2wn4qpqbi3nxrb16fw6svad";
+  outputHash = "208ebe74f3ffc83fc51cd1197ceb2c5b8b8de8f33fab86b760bfc41d31c2aab6";
 
   meta = {
     description = "Wallpapers for KDE";
diff --git a/pkgs/desktops/kde-4.8/kdegraphics/mobipocket.nix b/pkgs/desktops/kde-4.8/kdegraphics/kdegraphics-mobipocket.nix
index 2c2ba3796a2..2c2ba3796a2 100644
--- a/pkgs/desktops/kde-4.8/kdegraphics/mobipocket.nix
+++ b/pkgs/desktops/kde-4.8/kdegraphics/kdegraphics-mobipocket.nix
diff --git a/pkgs/desktops/kde-4.8/l10n/default.nix b/pkgs/desktops/kde-4.8/l10n/default.nix
index 144968f6672..778879e6e7c 100644
--- a/pkgs/desktops/kde-4.8/l10n/default.nix
+++ b/pkgs/desktops/kde-4.8/l10n/default.nix
@@ -11,7 +11,7 @@ let
       name = "kde-l10n-${saneName}-${release}";
 
       src = fetchurl {
-        url = "mirror://kde/stable/${release}/src/kde-l10n/kde-l10n-${lang}-${release}.tar.bz2";
+        url = "mirror://kde/unstable/${release}/src/kde-l10n/kde-l10n-${lang}-${release}.tar.bz2";
         name = "${name}.tar.bz2";
         inherit sha256;
       };
diff --git a/pkgs/desktops/kde-4.8/l10n/manifest-4.7.97.nix b/pkgs/desktops/kde-4.8/l10n/manifest-4.7.97.nix
deleted file mode 100644
index 0ed6019de7a..00000000000
--- a/pkgs/desktops/kde-4.8/l10n/manifest-4.7.97.nix
+++ /dev/null
@@ -1,272 +0,0 @@
-[
-{
-  lang = "ar";
-  saneName = "ar";
-  sha256 = "0x1d9zp9vb33qs88xvc1hf4rinbhxicvzzmp1d3jj25k1ra938kp";
-}
-{
-  lang = "bg";
-  saneName = "bg";
-  sha256 = "0mzfbjhq0lv3dr28nc0wrhrngl3idzpak6nbnsya32zpbrwgrzlz";
-}
-{
-  lang = "bs";
-  saneName = "bs";
-  sha256 = "0f5xxjgnasdnjfb6ksii9i44cia0vh2icwwgg8vdj0b62bdbd5n6";
-}
-{
-  lang = "ca";
-  saneName = "ca";
-  sha256 = "1b4xk6izq74c7blhdb0ws2nsw4i3q62jcr7w91r8b4j76bhpgif4";
-}
-{
-  lang = "ca@valencia";
-  saneName = "ca_valencia";
-  sha256 = "0rrf2gv8mn1bmzsqkgxgxn0gjikvzrcxbsyfs3dx9s42brwknn3s";
-}
-{
-  lang = "cs";
-  saneName = "cs";
-  sha256 = "1wr85m902jfk0ykvl6z7pbb4v852f35c9gjw4x7md9v899k6lc4g";
-}
-{
-  lang = "da";
-  saneName = "da";
-  sha256 = "0bn4gnm8zljji5av7jvc5jypwr9kqcbc7fdcjljm7sd0v2fg32m3";
-}
-{
-  lang = "de";
-  saneName = "de";
-  sha256 = "19hmsm49lk446425gf4ffiz8hywv9fgnwfrc0i6s0409sfm64jb2";
-}
-{
-  lang = "el";
-  saneName = "el";
-  sha256 = "1ck8ga9zyag24wl03qf9kfawpf1a163d2may3g0cs9iircg0fwxh";
-}
-{
-  lang = "en_GB";
-  saneName = "en_GB";
-  sha256 = "15q25dnyxafgk2glcyk7zxfv5mg2s0cj8440clfj2xxhrkhghlij";
-}
-{
-  lang = "es";
-  saneName = "es";
-  sha256 = "066xw4n8vhq8zdqhwi7pf3n9iyvn1i0lrwiyc3pc0ji98sdfyv29";
-}
-{
-  lang = "et";
-  saneName = "et";
-  sha256 = "103lvb2snik42g933dsl713ik0h853r082a82dm0b11qjgj9qcni";
-}
-{
-  lang = "eu";
-  saneName = "eu";
-  sha256 = "1jnnsj192qflwi2n0b2f01qprhxr7f41nn4iqw7iw0vy11hsy41a";
-}
-{
-  lang = "fa";
-  saneName = "fa";
-  sha256 = "1lk4why9cfbzlj0kb5n2q9hhlhk9cj5i8h88abni4crzdgg5wrfk";
-}
-{
-  lang = "fi";
-  saneName = "fi";
-  sha256 = "10z0rn2gmq3cyjwab9in6c7s57rhyhri3pg30nhbfpvh6jsph36j";
-}
-{
-  lang = "fr";
-  saneName = "fr";
-  sha256 = "0xipq67yjriqy32shlp70kkvnmsjz60j6pjyqk9hvmivsawdvxd6";
-}
-{
-  lang = "ga";
-  saneName = "ga";
-  sha256 = "1c60xbbg03r9laclwnbrxixj8mvang5mcz51szd2s5kml6b4nqb6";
-}
-{
-  lang = "gl";
-  saneName = "gl";
-  sha256 = "181153rrxdxdhcqqczyjw5vwk5lm7dyd46xzvk2k6n38zcvmxklj";
-}
-{
-  lang = "he";
-  saneName = "he";
-  sha256 = "1ivwj638m6izg8v9zdhlgpwihwkc0zcbsklb149ar9az88zmafvm";
-}
-{
-  lang = "hr";
-  saneName = "hr";
-  sha256 = "1z945ccxa0k4adfczb9yz1zws368mgm7j5lq1rvhipkqy82vyfmq";
-}
-{
-  lang = "hu";
-  saneName = "hu";
-  sha256 = "1l6w0d0r09d992vsvv217rq4j9viv681xgpfx9mawvlv81qf6ksx";
-}
-{
-  lang = "ia";
-  saneName = "ia";
-  sha256 = "0bx27j8rlzwd6zn2plps9nb1nwpziyj5gbjqlrd7z1bga957mnis";
-}
-{
-  lang = "id";
-  saneName = "id";
-  sha256 = "1kslyfxf0isigrlwh4rr7n7pivs6cv35bvwwvn7qrz8x513x1n8l";
-}
-{
-  lang = "is";
-  saneName = "is";
-  sha256 = "1am2qlgdww8knqj5lp1b4hvsx8anyncig6mf8iws855lkrbffaci";
-}
-{
-  lang = "it";
-  saneName = "it";
-  sha256 = "1fs8hjz25ryivxs191pvld0ckys8dbfs9kkhq6fv2d9f88igwbgv";
-}
-{
-  lang = "ja";
-  saneName = "ja";
-  sha256 = "0f5crpnqaqyi9x5j4s86iibg28kxsrbagd1i6h0p0lwrfr9yymqf";
-}
-{
-  lang = "kk";
-  saneName = "kk";
-  sha256 = "10r7qjvmpz6bl8j7wj755z69cik540ybfhm8mwbgcaafhfxgl1na";
-}
-{
-  lang = "km";
-  saneName = "km";
-  sha256 = "0lv0d8bcva00g5ydcirmz8r6ki0014v97grk1x39f1rmq08zba9b";
-}
-{
-  lang = "kn";
-  saneName = "kn";
-  sha256 = "0qpxzngv556rrdlhn8fxb5qar5gvfx4vgmpkc1s1qzfn8kxq6ggz";
-}
-{
-  lang = "ko";
-  saneName = "ko";
-  sha256 = "0v0kpbh7brrfqjv40f05gqjf54azfpcar1rrm5fa2gzji38zj6q3";
-}
-{
-  lang = "lt";
-  saneName = "lt";
-  sha256 = "0clzy04vj1dyj52qfszjmfjlwf0r43ffmsskwmy8xi82249pclg0";
-}
-{
-  lang = "lv";
-  saneName = "lv";
-  sha256 = "00id3nf7r56s9yfwgkykin99rikg1kkrj9c9d9ncl16vgz68yzv3";
-}
-{
-  lang = "nb";
-  saneName = "nb";
-  sha256 = "1l76kqb9n7n59krskn9j823h57hxqzdzs7kqa4vcm04in31a9za0";
-}
-{
-  lang = "nds";
-  saneName = "nds";
-  sha256 = "1hgwxm8pn34dp33r7kwdk0vw3ic4ahg39ydqg2mj62h35la3w1sm";
-}
-{
-  lang = "nl";
-  saneName = "nl";
-  sha256 = "1kna3i596mynijrjznqh4b8gqkd66s776yipzjgpg3zlcc21165f";
-}
-{
-  lang = "nn";
-  saneName = "nn";
-  sha256 = "0rkribndan830wd7s1zl0hq4jfgnixfsv61hi5r6l6r8bbn9fl2p";
-}
-{
-  lang = "pa";
-  saneName = "pa";
-  sha256 = "16bbiqxafhffwi8l94vrj22gji5k861pb5dkpnws1n20lk87j5kx";
-}
-{
-  lang = "pl";
-  saneName = "pl";
-  sha256 = "137xb660khkb5k9j0aq6yhn8bcmi7yr3lfmcbchx3xq81cp02v9m";
-}
-{
-  lang = "pt";
-  saneName = "pt";
-  sha256 = "0c5ixw2bkr9kr7xl83s2zvbp5ax8353bhaz7l89w98dshhvdlbsj";
-}
-{
-  lang = "pt_BR";
-  saneName = "pt_BR";
-  sha256 = "00jhrccv5ikn939c7pric5f3hs698by2s8aksfhczgqh29bwmkk3";
-}
-{
-  lang = "ro";
-  saneName = "ro";
-  sha256 = "07pyl2kmf994dzg9nw4xvby1cqza1lwpn29wjrqrpvjw96m1nm8y";
-}
-{
-  lang = "ru";
-  saneName = "ru";
-  sha256 = "0d1syrbxbnwfph3lq02jhw0422yivan7v3b35rfk07zvc13nzx0l";
-}
-{
-  lang = "si";
-  saneName = "si";
-  sha256 = "0dbkdp5fq4421s4m4lfgj6jhi7wa9xbgf2v17pd2bkyd91jixr2s";
-}
-{
-  lang = "sk";
-  saneName = "sk";
-  sha256 = "0f320v7y68dfdnlx9dpa4719rvil0b4qvnmgpha2mfvagql29hxm";
-}
-{
-  lang = "sl";
-  saneName = "sl";
-  sha256 = "1fii0px1r5b1v3q812955qmr3w3cqczh8x2qqcr73x68bk839i8v";
-}
-{
-  lang = "sr";
-  saneName = "sr";
-  sha256 = "01v0nwshak7wlgpcalh6ificsyx85zvn4g4j7fz12f5y0189sdyb";
-}
-{
-  lang = "sv";
-  saneName = "sv";
-  sha256 = "1cz6xdjraskh4ri8bi8j9pf87g03y18hn22jk03y7z9xrzy30lz8";
-}
-{
-  lang = "th";
-  saneName = "th";
-  sha256 = "0bqfk0kvj64gbcgr84ygbvpwrh7lwkpi33lirncrc5yvf4lddqmd";
-}
-{
-  lang = "tr";
-  saneName = "tr";
-  sha256 = "0g83in6ahf5lni206fiz90lmai9fih77bsaa1i8x4iyzddxrysv0";
-}
-{
-  lang = "ug";
-  saneName = "ug";
-  sha256 = "0401g7bz852rj86gipslcw713dq74p58wk8zkmh17xxyqis4n82m";
-}
-{
-  lang = "uk";
-  saneName = "uk";
-  sha256 = "0q2z4klq42cyh1czcyd0f9105a90dxl6diw5bhlw85v3n72i0bl5";
-}
-{
-  lang = "wa";
-  saneName = "wa";
-  sha256 = "1by2804w8gxv3l655ga5mfw9363saq02s7vfbc7kc4vqpjxvbk8s";
-}
-{
-  lang = "zh_CN";
-  saneName = "zh_CN";
-  sha256 = "0x8l280ymdxf9w7rklf1wh4bl7mskdbq2hwgm2rsjvm2cvqifjil";
-}
-{
-  lang = "zh_TW";
-  saneName = "zh_TW";
-  sha256 = "0iv36yi2zjlqnhs6n65b7j4yjh01mdbr3lg35a17awg2a22a8gs0";
-}
-]
diff --git a/pkgs/desktops/kde-4.8/l10n/manifest-4.8.0.nix b/pkgs/desktops/kde-4.8/l10n/manifest-4.8.0.nix
new file mode 100644
index 00000000000..8fc2bf8be94
--- /dev/null
+++ b/pkgs/desktops/kde-4.8/l10n/manifest-4.8.0.nix
@@ -0,0 +1,262 @@
+[
+{
+  lang = "ar";
+  saneName = "ar";
+  sha256 = "1payn79mk0xw6laj3l9zymh3a72yhssid4wxw2sg8wqq1557cd1f";
+}
+{
+  lang = "bg";
+  saneName = "bg";
+  sha256 = "01k26c2shw2xxhfgllljqcvrgib6935dbrimrbix7snwdxdip23b";
+}
+{
+  lang = "bs";
+  saneName = "bs";
+  sha256 = "05vfkzqqm6sz0021rh8qhn3345fmcswlilnkdk23kjsb722v0m47";
+}
+{
+  lang = "ca";
+  saneName = "ca";
+  sha256 = "1ac7y69877yisfcz863w5l4ypiwp3dxip08myfwq631a2qhplwir";
+}
+{
+  lang = "ca@valencia";
+  saneName = "ca_valencia";
+  sha256 = "0qj5r4gs1bm2hzds8gq3dzai7h7fw6dw8mssw14g2yb2w833ag6h";
+}
+{
+  lang = "cs";
+  saneName = "cs";
+  sha256 = "0rh0pivdiybp6n20dyhdrcwc6q3xmmv4i83x64qnxsxdh3yxcysv";
+}
+{
+  lang = "da";
+  saneName = "da";
+  sha256 = "04ylcybr3vpk4vja33iq9ysnljdndvk62vvs35rmvb48sqc02gbr";
+}
+{
+  lang = "de";
+  saneName = "de";
+  sha256 = "1rz1qvy7n3p78idpw8kah991r5rs1hgdlr4kh4pfdk31qng6mdhi";
+}
+{
+  lang = "el";
+  saneName = "el";
+  sha256 = "19hhw9csh59hh7ax1g9yi2bqqv712xyirklaxq8j5225xxva6xhx";
+}
+{
+  lang = "en_GB";
+  saneName = "en_GB";
+  sha256 = "08rwnn4bbp3hhj6fw1n1jdm8b3k72wk14qib2jdmwra2n514i9y2";
+}
+{
+  lang = "es";
+  saneName = "es";
+  sha256 = "098nsrsc7s77kkjh6cai7nkw6h0cz10gd5aa6hfqnafc42zjj7jv";
+}
+{
+  lang = "et";
+  saneName = "et";
+  sha256 = "1avv6xvpqcc1q9k3xcszpknbshkcd1gbmx9nrx2a242jkkgbqcm5";
+}
+{
+  lang = "eu";
+  saneName = "eu";
+  sha256 = "14wqf7bfrhmkknrzdn8725rhlphp2czzf65rc7wfsqj3nk0s8iys";
+}
+{
+  lang = "fa";
+  saneName = "fa";
+  sha256 = "1w3zlf70a9hcwkyv8jc2jr7ddlq1bjbbswrw6qaincpk5qpr9lqc";
+}
+{
+  lang = "fi";
+  saneName = "fi";
+  sha256 = "1gwjbx31z3g7p3am003bll763d1jjvz8k3w7k318x18nbsj5nl2h";
+}
+{
+  lang = "fr";
+  saneName = "fr";
+  sha256 = "0a4yfz5c6pnscq5810jirfl0r0asid1fb4bsyh356rbhfqvx3cf8";
+}
+{
+  lang = "ga";
+  saneName = "ga";
+  sha256 = "1214wmwccg6k97c3q5rnazggjv77mq640wwv23xv3lzyiqxq7h45";
+}
+{
+  lang = "gl";
+  saneName = "gl";
+  sha256 = "0s1wjymdprn56pd311cb6g14kfngnqnbcar8yqn93mgcdxrl6s61";
+}
+{
+  lang = "hr";
+  saneName = "hr";
+  sha256 = "1bw997jypbc2rz2wnlvcw9lk6l6kybiivkq6sk4h7kil9xklam2j";
+}
+{
+  lang = "hu";
+  saneName = "hu";
+  sha256 = "086sx9dak8npi5nmiyq0npqc9kj5gaijc98bml42q1p0fg92b1wv";
+}
+{
+  lang = "ia";
+  saneName = "ia";
+  sha256 = "10x59w6ac2bnz7jgypjk98q80bwnwlix18pz9v0xnhw6z5c71bmg";
+}
+{
+  lang = "is";
+  saneName = "is";
+  sha256 = "0znwyagr8xarw3kjybgpzgxgk7dzc1sqvv128g3l5vdf5cn6ab3p";
+}
+{
+  lang = "it";
+  saneName = "it";
+  sha256 = "0w6nwpq0wxglzspswhiv0y6rjvmcg9c3wsiagjqr0ys2ln1kifp5";
+}
+{
+  lang = "ja";
+  saneName = "ja";
+  sha256 = "0d6fhgnzpapb1axnan7jlsyln0ajv9c08zy56mvcgvnprj92ixjh";
+}
+{
+  lang = "kk";
+  saneName = "kk";
+  sha256 = "1f9ys9slbf6n56g29pxi4a2kl8fp8bgfg9r4n4ygxy6mnl2wggn6";
+}
+{
+  lang = "km";
+  saneName = "km";
+  sha256 = "033jyrjfywwg1mibcwbflhblbv17kc9mi6wbyajgnhrypaxdplmn";
+}
+{
+  lang = "ko";
+  saneName = "ko";
+  sha256 = "1w3dxprfdrp4b2ar61jvbgngjm85nwy5jprjmqjzqb74pj9wvnnf";
+}
+{
+  lang = "lt";
+  saneName = "lt";
+  sha256 = "1vmx35g9w6zf6pp6s7k10bmil6hppms4h54647dz27mlqq6kfi8a";
+}
+{
+  lang = "lv";
+  saneName = "lv";
+  sha256 = "0mmhmw4fsaxx44bs1g903cfcn854gqm509j2fiman8mz58nsd8jn";
+}
+{
+  lang = "nb";
+  saneName = "nb";
+  sha256 = "06gmdcxm0cl4yv39xyhz8nkrj2hbiryx2zb5b7zmyq6l94vmbp83";
+}
+{
+  lang = "nds";
+  saneName = "nds";
+  sha256 = "0yagn8bragyqp38186mla31farrd26q77vm4zmhqfrvzbaiaal0c";
+}
+{
+  lang = "nl";
+  saneName = "nl";
+  sha256 = "073cgksqp8gxvscg6v7gkf4rd4va3cqslwssbzdzark3lrm7flkw";
+}
+{
+  lang = "nn";
+  saneName = "nn";
+  sha256 = "0dwvr0779dg380dv2a4613074gk1pqbiv6q8drawgj8asaa54yg2";
+}
+{
+  lang = "pa";
+  saneName = "pa";
+  sha256 = "1z10wi3grj7y2a1lyjc9xvadrfm6b3ydgy827183mp3qfd6r0jd1";
+}
+{
+  lang = "pl";
+  saneName = "pl";
+  sha256 = "0mzbfizgykq20vqq7b1wna3jhvl73qgr2n11f9mjysj5g592mqnm";
+}
+{
+  lang = "pt";
+  saneName = "pt";
+  sha256 = "1bg0p2czkmx2rwznbwqq3w16xdp09k0jajpw2jwpdz84z1y4c4pz";
+}
+{
+  lang = "pt_BR";
+  saneName = "pt_BR";
+  sha256 = "12zzxsdzb80gs671k8dfw84yb7c1pli2jwh1hncr6ajwbckd4q6c";
+}
+{
+  lang = "ro";
+  saneName = "ro";
+  sha256 = "1rzm8y722jp5z8xlms5gv1qsybix0vyfvn5fv18zxkiaidiyzlfh";
+}
+{
+  lang = "ru";
+  saneName = "ru";
+  sha256 = "1bbz8ixlhywnfm50dm91ykn13mf0gr1c46rj8pmzxqlg2klidm5n";
+}
+{
+  lang = "si";
+  saneName = "si";
+  sha256 = "06763cbbw4bh3y6lx01s6gl4yr4jlgrw73qdxjw30r45hqybblx6";
+}
+{
+  lang = "sk";
+  saneName = "sk";
+  sha256 = "1wgzkjq3pmmrs8d7q2b4wkxkyaylypk25i6h6pi7ly5im1fj0zf3";
+}
+{
+  lang = "sl";
+  saneName = "sl";
+  sha256 = "17zmirf67am4730yf1x1kidaylsl89frziiw8jzf42z88qc63x8x";
+}
+{
+  lang = "sr";
+  saneName = "sr";
+  sha256 = "0yg8x6syad3g2j0nlgcb3ypp26l9m1n7wpxgyhnbhb07w3gmvwf1";
+}
+{
+  lang = "sv";
+  saneName = "sv";
+  sha256 = "0a9qil6m5fmbi5x8h2nwj6al0awclk77zgpiz0njv9vdsiylbwzf";
+}
+{
+  lang = "tg";
+  saneName = "tg";
+  sha256 = "0h62wnhc4m6j33r0w6wx5fkwdacd3y1mz6s047jinzzzvyk6zy4p";
+}
+{
+  lang = "th";
+  saneName = "th";
+  sha256 = "0c23p15rbpg8lmcas61d67cpvsx0rcb9s5nccy0jr9gs2bh7i02i";
+}
+{
+  lang = "tr";
+  saneName = "tr";
+  sha256 = "1wddr9zr0fz4g3d80xdk1y7s60yrb700gkw4689m6cn07drixhcr";
+}
+{
+  lang = "uk";
+  saneName = "uk";
+  sha256 = "1k1fg6ymsyb86jzq9pdy77v568pvr9kykdmvjy159qripyr5gyjq";
+}
+{
+  lang = "vi";
+  saneName = "vi";
+  sha256 = "02zqwgjksb7cxsqxwd7fgagza1skjikipknwxaylhb9qc5s5dd2r";
+}
+{
+  lang = "wa";
+  saneName = "wa";
+  sha256 = "084nak660wcqnvfg3zw2pgglpzwkc1mryd575y3xq11a6aqyrwqi";
+}
+{
+  lang = "zh_CN";
+  saneName = "zh_CN";
+  sha256 = "0c18dhjfp72br8ayrn095201ajnk8zbr1cqyni0qmis387w746b7";
+}
+{
+  lang = "zh_TW";
+  saneName = "zh_TW";
+  sha256 = "04n6zljl3yb8fb5lyz4v30ki8h7k7iic0wz05cmfnc8w5x5zdfxy";
+}
+]
diff --git a/pkgs/desktops/kde-4.8/oxygen-icons.nix b/pkgs/desktops/kde-4.8/oxygen-icons.nix
index 6297a55df76..7896e804aa9 100644
--- a/pkgs/desktops/kde-4.8/oxygen-icons.nix
+++ b/pkgs/desktops/kde-4.8/oxygen-icons.nix
@@ -3,7 +3,7 @@
 kde {
   outputHashAlgo = "sha256";
   outputHashMode = "recursive";
-  outputHash = "ca03ee0a7bbd35ee70f84d32b6f861ee8c019473f16c6ecf6309885317bcfe51";
+  outputHash = "dec510cb1dd47d4254e97021964dcbdcfe4541368a0694ee986666ff745b6860";
 
   buildNativeInputs = [ cmake ];
 
diff --git a/pkgs/development/compilers/gcc-4.5/default.nix b/pkgs/development/compilers/gcc-4.5/default.nix
index a86c317e265..4c449fc781f 100644
--- a/pkgs/development/compilers/gcc-4.5/default.nix
+++ b/pkgs/development/compilers/gcc-4.5/default.nix
@@ -252,8 +252,8 @@ stdenv.mkDerivation ({
         )
       )
     }
-    ${ # Trick that should be taken out once we have a mips64-linux not loongson2f
-      if cross == null && stdenv.system == "mips64-linux" then "--with-arch=loongson2f" else ""}
+    ${ # Trick that should be taken out once we have a mips64el-linux not loongson2f
+      if cross == null && stdenv.system == "mips64el-linux" then "--with-arch=loongson2f" else ""}
     ${if langAda then " --enable-libada" else ""}
     ${if (cross == null && stdenv.isi686) then "--with-arch=i686" else ""}
     ${if cross != null then crossConfigureFlags else ""}
diff --git a/pkgs/development/compilers/gcc-4.6/default.nix b/pkgs/development/compilers/gcc-4.6/default.nix
index 9ae35014916..51985a8da20 100644
--- a/pkgs/development/compilers/gcc-4.6/default.nix
+++ b/pkgs/development/compilers/gcc-4.6/default.nix
@@ -261,8 +261,8 @@ stdenv.mkDerivation ({
         )
       )
     }
-    ${ # Trick that should be taken out once we have a mips64-linux not loongson2f
-      if cross == null && stdenv.system == "mips64-linux" then "--with-arch=loongson2f" else ""}
+    ${ # Trick that should be taken out once we have a mips64el-linux not loongson2f
+      if cross == null && stdenv.system == "mips64el-linux" then "--with-arch=loongson2f" else ""}
     ${if langAda then " --enable-libada" else ""}
     ${if (cross == null && stdenv.isi686) then "--with-arch=i686" else ""}
     ${if cross != null then crossConfigureFlags else ""}
diff --git a/pkgs/development/interpreters/ruby/generated.nix b/pkgs/development/interpreters/ruby/generated.nix
index e46de5d231d..1fea718aeb5 100644
--- a/pkgs/development/interpreters/ruby/generated.nix
+++ b/pkgs/development/interpreters/ruby/generated.nix
@@ -3,13 +3,13 @@
 g: # Get dependencies from patched gems
 {
   aliases = {
-    actionmailer = g.actionmailer_3_1_3;
-    actionpack = g.actionpack_3_1_3;
-    activemodel = g.activemodel_3_1_3;
-    activerecord = g.activerecord_3_1_3;
-    activeresource = g.activeresource_3_1_3;
-    activesupport = g.activesupport_3_1_3;
-    arel = g.arel_2_2_1;
+    actionmailer = g.actionmailer_3_2_0;
+    actionpack = g.actionpack_3_2_0;
+    activemodel = g.activemodel_3_2_0;
+    activerecord = g.activerecord_3_2_0;
+    activeresource = g.activeresource_3_2_0;
+    activesupport = g.activesupport_3_2_0;
+    arel = g.arel_3_0_0;
     atoulme_Antwrap = g.atoulme_Antwrap_0_7_1;
     builder = g.builder_3_0_0;
     buildr = g.buildr_1_4_6;
@@ -20,9 +20,10 @@ g: # Get dependencies from patched gems
     hike = g.hike_1_2_1;
     hoe = g.hoe_2_3_3;
     i18n = g.i18n_0_6_0;
+    journey = g.journey_1_0_0;
     json = g.json_1_6_5;
     json_pure = g.json_pure_1_6_5;
-    mail = g.mail_2_3_0;
+    mail = g.mail_2_4_1;
     mime_types = g.mime_types_1_17_2;
     minitar = g.minitar_0_5_3;
     multi_json = g.multi_json_1_0_4;
@@ -30,13 +31,12 @@ g: # Get dependencies from patched gems
     net_ssh = g.net_ssh_2_3_0;
     nix = g.nix_0_1_1;
     polyglot = g.polyglot_0_3_3;
-    rack = g.rack_1_4_0;
+    rack = g.rack_1_4_1;
     rack_cache = g.rack_cache_1_1;
-    rack_mount = g.rack_mount_0_8_3;
     rack_ssl = g.rack_ssl_1_3_2;
     rack_test = g.rack_test_0_6_1;
-    rails = g.rails_3_1_3;
-    railties = g.railties_3_1_3;
+    rails = g.rails_3_2_0;
+    railties = g.railties_3_2_0;
     rake = g.rake_0_9_2_2;
     rb_fsevent = g.rb_fsevent_0_4_3_1;
     rdoc = g.rdoc_3_12;
@@ -48,7 +48,7 @@ g: # Get dependencies from patched gems
     rubyforge = g.rubyforge_2_0_4;
     rubyzip = g.rubyzip_0_9_4;
     sass = g.sass_3_1_12;
-    sprockets = g.sprockets_2_0_3;
+    sprockets = g.sprockets_2_1_2;
     thor = g.thor_0_14_6;
     tilt = g.tilt_1_3_3;
     treetop = g.treetop_1_4_10;
@@ -57,89 +57,89 @@ g: # Get dependencies from patched gems
   };
   gem_nix_args = [ ''buildr'' ''nix'' ''rails'' ''rake'' ''rb-fsevent'' ''sass'' ];
   gems = {
-    actionmailer_3_1_3 = {
+    actionmailer_3_2_0 = {
       basename = ''actionmailer'';
       meta = {
         description = ''Email composition, delivery, and receiving framework (part of Rails).'';
         homepage = ''http://www.rubyonrails.org'';
         longDescription = ''Email on Rails. Compose, deliver, receive, and test emails using the familiar controller/view pattern. First-class support for multipart email and attachments.'';
       };
-      name = ''actionmailer-3.1.3'';
-      requiredGems = [ g.mail_2_3_0 ];
-      sha256 = ''04qjgf8irg2srqa9j0ahxpydx42h9dymiabfiyzwy0h3wayg2qyj'';
+      name = ''actionmailer-3.2.0'';
+      requiredGems = [ g.mail_2_4_1 ];
+      sha256 = ''0fhvdbxw93y00awz4xfkyzn78zfca210zwqx7xvaizipaq5rs8d6'';
     };
-    actionpack_3_1_3 = {
+    actionpack_3_2_0 = {
       basename = ''actionpack'';
       meta = {
         description = ''Web-flow and rendering framework putting the VC in MVC (part of Rails).'';
         homepage = ''http://www.rubyonrails.org'';
         longDescription = ''Web apps on Rails. Simple, battle-tested conventions for building and testing MVC web applications. Works with any Rack-compatible server.'';
       };
-      name = ''actionpack-3.1.3'';
-      requiredGems = [ g.activemodel_3_1_3 g.rack_cache_1_1 g.rack_1_3_6 g.rack_test_0_6_1 g.rack_mount_0_8_3 g.sprockets_2_0_3 g.erubis_2_7_0 ];
-      sha256 = ''1awhqxdfg2zcb0b34jwq3sm2favay94n4glqywqzrn85wkf47a2q'';
+      name = ''actionpack-3.2.0'';
+      requiredGems = [ g.activemodel_3_2_0 g.rack_cache_1_1 g.rack_test_0_6_1 g.journey_1_0_0 g.sprockets_2_1_2 g.erubis_2_7_0 ];
+      sha256 = ''08fghqa01x6bkcnyik36jaxdd6jp05sh1mnxgqaw4snjwrl5b4ki'';
     };
-    activemodel_3_1_3 = {
+    activemodel_3_2_0 = {
       basename = ''activemodel'';
       meta = {
         description = ''A toolkit for building modeling frameworks (part of Rails).'';
         homepage = ''http://www.rubyonrails.org'';
         longDescription = ''A toolkit for building modeling frameworks like Active Record and Active Resource. Rich support for attributes, callbacks, validations, observers, serialization, internationalization, and testing.'';
       };
-      name = ''activemodel-3.1.3'';
-      requiredGems = [ g.builder_3_0_0 g.i18n_0_6_0 ];
-      sha256 = ''1kpkr1gwvjbxc8q3n1ps1j8zf7m1258swb9n5zm5igr6j0d803a3'';
+      name = ''activemodel-3.2.0'';
+      requiredGems = [ g.builder_3_0_0 ];
+      sha256 = ''1785g6b1daqncgsyc1kjwhxypx6xk9m3pw5vhipfv2bvygan3y9z'';
     };
-    activerecord_3_1_3 = {
+    activerecord_3_2_0 = {
       basename = ''activerecord'';
       meta = {
         description = ''Object-relational mapper framework (part of Rails).'';
         homepage = ''http://www.rubyonrails.org'';
         longDescription = ''Databases on Rails. Build a persistent domain model by mapping database tables to Ruby classes. Strong conventions for associations, validations, aggregations, migrations, and testing come baked-in.'';
       };
-      name = ''activerecord-3.1.3'';
-      requiredGems = [ g.arel_2_2_1 g.tzinfo_0_3_31 ];
-      sha256 = ''0z2p51hm12alg6axih2mhxjsj8vmnvdqp3wwzcg9bbkp3fc368w0'';
+      name = ''activerecord-3.2.0'';
+      requiredGems = [ g.arel_3_0_0 g.tzinfo_0_3_31 ];
+      sha256 = ''065yyv3y1wkzm3ykdxd43hmz3q4gadc9qb3psjydqalgii0dr1ww'';
     };
-    activeresource_3_1_3 = {
+    activeresource_3_2_0 = {
       basename = ''activeresource'';
       meta = {
         description = ''REST modeling framework (part of Rails).'';
         homepage = ''http://www.rubyonrails.org'';
         longDescription = ''REST on Rails. Wrap your RESTful web app with Ruby classes and work with them like Active Record models.'';
       };
-      name = ''activeresource-3.1.3'';
+      name = ''activeresource-3.2.0'';
       requiredGems = [  ];
-      sha256 = ''0hf3fi6zwk9zqzgk4rr95ax9mfzfkzpq28qw7fm2av6841wl54fg'';
+      sha256 = ''0lklbgmf1in8cm3w1xl9nxc5yjr9a884fjslyjca42kc7j90mbr7'';
     };
-    activesupport_3_1_3 = {
+    activesupport_3_2_0 = {
       basename = ''activesupport'';
       meta = {
         description = ''A toolkit of support libraries and Ruby core extensions extracted from the Rails framework.'';
         homepage = ''http://www.rubyonrails.org'';
         longDescription = ''A toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Rich support for multibyte strings, internationalization, time zones, and testing.'';
       };
-      name = ''activesupport-3.1.3'';
-      requiredGems = [ g.multi_json_1_0_4 ];
-      sha256 = ''19na7857adshdsswsgygky30r985ng100z3n78scd65481zcgb9z'';
+      name = ''activesupport-3.2.0'';
+      requiredGems = [ g.i18n_0_6_0 g.multi_json_1_0_4 ];
+      sha256 = ''07x0jl4fnjgiblffbwmjnqzly765l55y9zmyad8divcaa1qjqwmb'';
     };
-    arel_2_2_1 = {
+    arel_3_0_0 = {
       basename = ''arel'';
       meta = {
         description = ''Arel is a SQL AST manager for Ruby'';
         homepage = ''http://github.com/rails/arel'';
         longDescription = ''Arel is a SQL AST manager for Ruby. It
 
-1. Simplifies the generation complex of SQL queries
+1. Simplifies the generation of complex SQL queries
 2. Adapts to various RDBMS systems
 
 It is intended to be a framework framework; that is, you can build your own ORM
 with it, focusing on innovative object and collection modeling as opposed to
 database compatibility and query generation.'';
       };
-      name = ''arel-2.2.1'';
+      name = ''arel-3.0.0'';
       requiredGems = [  ];
-      sha256 = ''19pz68pr9l8h2j2v3vqzhjvs94s0hwqwpb6m9sd6ncj18gaci8jy'';
+      sha256 = ''0ci86z4h8bw2rzx9wf1kdkyz19cdrawmkvjfavdm06bpjrhrpykl'';
     };
     atoulme_Antwrap_0_7_1 = {
       basename = ''atoulme_Antwrap'';
@@ -339,6 +339,17 @@ See class rdoc for help. Hint: ri Hoe'';
       requiredGems = [  ];
       sha256 = ''1pgmfhmh2wv409g7kla30mkp8jpslvp25vcmmim1figl87wpn3j0'';
     };
+    journey_1_0_0 = {
+      basename = ''journey'';
+      meta = {
+        description = ''Journey is a router'';
+        homepage = ''http://github.com/tenderlove/journey'';
+        longDescription = ''Journey is a router.  It routes requests.'';
+      };
+      name = ''journey-1.0.0'';
+      requiredGems = [  ];
+      sha256 = ''0xphcsxksy0m78j1mphzp0lyj7bgrabdnlgs18lrkwivs0gryhdd'';
+    };
     json_1_6_5 = {
       basename = ''json'';
       meta = {
@@ -372,16 +383,16 @@ See class rdoc for help. Hint: ri Hoe'';
       requiredGems = [  ];
       sha256 = ''09s5qymc4y9q0376zjiwf5bjm69fcivr75ar8ji0kmhjkk2rwc55'';
     };
-    mail_2_3_0 = {
+    mail_2_4_1 = {
       basename = ''mail'';
       meta = {
         description = ''Mail provides a nice Ruby DSL for making, sending and reading emails.'';
         homepage = ''http://github.com/mikel/mail'';
         longDescription = ''A really Ruby Mail handler.'';
       };
-      name = ''mail-2.3.0'';
+      name = ''mail-2.4.1'';
       requiredGems = [ g.mime_types_1_17_2 g.treetop_1_4_10 ];
-      sha256 = ''1cnid9wn5wy0d2shx4ykvgd5jrvgq55yal8i51b47d4037n1yr53'';
+      sha256 = ''03h5bj9cws7my0igrqxwyjg9p1p8i0gwvwhma3rff09wz7k45mw0'';
     };
     mime_types_1_17_2 = {
       basename = ''mime_types'';
@@ -488,25 +499,7 @@ augments 'require' to find and load matching files.'';
       requiredGems = [  ];
       sha256 = ''082zmail2h3cxd9z1wnibhk6aj4sb1f3zzwra6kg9bp51kx2c00v'';
     };
-    rack_1_3_6 = {
-      basename = ''rack'';
-      meta = {
-        description = ''a modular Ruby webserver interface'';
-        homepage = ''http://rack.rubyforge.org'';
-        longDescription = ''Rack provides minimal, modular and adaptable interface for developing
-web applications in Ruby.  By wrapping HTTP requests and responses in
-the simplest way possible, it unifies and distills the API for web
-servers, web frameworks, and software in between (the so-called
-middleware) into a single method call.
-
-Also see http://rack.rubyforge.org.
-'';
-      };
-      name = ''rack-1.3.6'';
-      requiredGems = [  ];
-      sha256 = ''1qkhwsr1gz4k5rlf9d6ga4cwkw4lbxpcywxy0bkg92js413hy2fl'';
-    };
-    rack_1_4_0 = {
+    rack_1_4_1 = {
       basename = ''rack'';
       meta = {
         description = ''a modular Ruby webserver interface'';
@@ -520,9 +513,9 @@ middleware) into a single method call.
 Also see http://rack.rubyforge.org.
 '';
       };
-      name = ''rack-1.4.0'';
+      name = ''rack-1.4.1'';
       requiredGems = [  ];
-      sha256 = ''15mqryky86fhx0h3kiab5x1lamq62hq6kc3knl6v10p1az4zpcq9'';
+      sha256 = ''1cx3wzg48pn4sbb6a0iq726fjh3q7y77fly81mfnprrnwp7d0190'';
     };
     rack_cache_1_1 = {
       basename = ''rack_cache'';
@@ -532,21 +525,9 @@ Also see http://rack.rubyforge.org.
         longDescription = ''HTTP Caching for Rack'';
       };
       name = ''rack-cache-1.1'';
-      requiredGems = [ g.rack_1_4_0 ];
+      requiredGems = [ g.rack_1_4_1 ];
       sha256 = ''08jlym48qwfj7wddv0vpjj3vlc03q8wvbya24zbrjj8grgfgrvrl'';
     };
-    rack_mount_0_8_3 = {
-      basename = ''rack_mount'';
-      meta = {
-        description = ''Stackable dynamic tree based Rack router'';
-        homepage = ''https://github.com/josh/rack-mount'';
-        longDescription = ''    A stackable dynamic tree based Rack router.
-'';
-      };
-      name = ''rack-mount-0.8.3'';
-      requiredGems = [  ];
-      sha256 = ''09a1qfaxxsll1kbgz7z0q0nr48sfmfm7akzaviis5bjpa5r00ld2'';
-    };
     rack_ssl_1_3_2 = {
       basename = ''rack_ssl'';
       meta = {
@@ -573,27 +554,27 @@ request helpers feature.'';
       requiredGems = [  ];
       sha256 = ''0hq5q8fjhbb7szzrj7k0l21z025c4qsxqzd5qmgivikhymw10ws0'';
     };
-    rails_3_1_3 = {
+    rails_3_2_0 = {
       basename = ''rails'';
       meta = {
         description = ''Full-stack web application framework.'';
         homepage = ''http://www.rubyonrails.org'';
         longDescription = ''Ruby on Rails is a full-stack web framework optimized for programmer happiness and sustainable productivity. It encourages beautiful code by favoring convention over configuration.'';
       };
-      name = ''rails-3.1.3'';
-      requiredGems = [ g.activesupport_3_1_3 g.actionpack_3_1_3 g.activerecord_3_1_3 g.activeresource_3_1_3 g.actionmailer_3_1_3 g.railties_3_1_3 g.bundler_1_0_21 ];
-      sha256 = ''07p8agfarj5nz8v1nlg1rfqy1cnqxhpakxhadfhk4sqrzlp2a5z8'';
+      name = ''rails-3.2.0'';
+      requiredGems = [ g.activesupport_3_2_0 g.actionpack_3_2_0 g.activerecord_3_2_0 g.activeresource_3_2_0 g.actionmailer_3_2_0 g.railties_3_2_0 g.bundler_1_0_21 ];
+      sha256 = ''10jc4ri60ivd5z54k0i4l1pdqbmswwhh05ydca7axpd9d1ss1jzh'';
     };
-    railties_3_1_3 = {
+    railties_3_2_0 = {
       basename = ''railties'';
       meta = {
         description = ''Tools for creating, working with, and running Rails applications.'';
         homepage = ''http://www.rubyonrails.org'';
         longDescription = ''Rails internals: application bootup, plugins, generators, and rake tasks.'';
       };
-      name = ''railties-3.1.3'';
+      name = ''railties-3.2.0'';
       requiredGems = [ g.thor_0_14_6 g.rack_ssl_1_3_2 g.rdoc_3_12 ];
-      sha256 = ''07kgr9nzvgwpjqwssiknlqds1a9mj74g1hqpwsj6720x4pk9r13h'';
+      sha256 = ''0zwdjj6kfgpslqywyhc171pfp9zc26hs4z0fx0hysyvvc961qhb3'';
     };
     rake_0_8_7 = {
       basename = ''rake'';
@@ -772,16 +753,16 @@ See RDoc for a description of RDoc's markup and basic use.'';
       requiredGems = [  ];
       sha256 = ''10n2aic53290xsa3y3d63523s8xc78w5q5gqpns6cbljkdwb0ndy'';
     };
-    sprockets_2_0_3 = {
+    sprockets_2_1_2 = {
       basename = ''sprockets'';
       meta = {
         description = ''Rack-based asset packaging system'';
         homepage = ''http://getsprockets.org/'';
         longDescription = ''Sprockets is a Rack-based asset packaging system that concatenates and serves JavaScript, CoffeeScript, CSS, LESS, Sass, and SCSS.'';
       };
-      name = ''sprockets-2.0.3'';
+      name = ''sprockets-2.1.2'';
       requiredGems = [ g.hike_1_2_1 g.tilt_1_3_3 ];
-      sha256 = ''1az22a7vjfhfglbn02np8lci6ww1lzgzs0i9qlfwx87ybp2227bi'';
+      sha256 = ''1zjxxvp8lz7hgf7mf1cc0gfca93iqx55nr1864rpwybivkay7s2r'';
     };
     thor_0_14_6 = {
       basename = ''thor'';
diff --git a/pkgs/development/interpreters/ruby/rubygems.nix b/pkgs/development/interpreters/ruby/rubygems.nix
index 0d93b330ca0..4311c6ad5d4 100644
--- a/pkgs/development/interpreters/ruby/rubygems.nix
+++ b/pkgs/development/interpreters/ruby/rubygems.nix
@@ -1,10 +1,10 @@
 args : with args; 
 rec {
 
-  version = "1.8.10";
+  version = "1.8.15";
   src = fetchurl {
     url = "http://production.cf.rubygems.org/rubygems/${name}.tgz";
-    sha256 = "0ll5swf4mi4nbgnr5jcyzmnlwb1zr2md9kvsgy3d1f485bb1n59q";
+    sha256 = "0crfdaxpcv13x40mb0ccm5n0r3dknw7w7xl87icj99kyqmfx8k51";
   };
 
   buildInputs = [ruby makeWrapper];
diff --git a/pkgs/development/libraries/boehm-gc/default.nix b/pkgs/development/libraries/boehm-gc/default.nix
index a5ecc12a8b1..0ad643d9ac4 100644
--- a/pkgs/development/libraries/boehm-gc/default.nix
+++ b/pkgs/development/libraries/boehm-gc/default.nix
@@ -1,17 +1,15 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation (rec {
-  name = "boehm-gc-7.2pre20110122";
+  name = "boehm-gc-7.2alpha6";
 
   src = fetchurl {
-    url = "http://nixos.org/tarballs/${name}.tar.bz2";
-    sha256 = "06nf60flq6344pgic3bz83jh6pvj4k42apm3x4xwxc4d2is457ly";
+    url = "http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-7.2alpha6.tar.gz";
+    sha256 = "05jwadjbrv8pr7z9cb4miskicxqpxm0pca4h2rg5cgbpajr2bx7b";
   };
 
   doCheck = true;
 
-  configureFlags = stdenv.lib.optionalString (stdenv.system == "x86_64-darwin") "CPPFLAGS=-D_XOPEN_SOURCE";
-
   meta = {
     description = "The Boehm-Demers-Weiser conservative garbage collector for C and C++";
 
diff --git a/pkgs/development/libraries/haskell/DSH/default.nix b/pkgs/development/libraries/haskell/DSH/default.nix
new file mode 100644
index 00000000000..0ccc9d810df
--- /dev/null
+++ b/pkgs/development/libraries/haskell/DSH/default.nix
@@ -0,0 +1,22 @@
+{ cabal, convertible, csv, FerryCore, HaXml, HDBC, json, mtl
+, Pathfinder, syb, text, xhtml
+}:
+
+cabal.mkDerivation (self: {
+  pname = "DSH";
+  version = "0.7.8";
+  sha256 = "1mlym2hs7sr78lih8c0yi5y5h14vxy3zpl3gfnidh9wiw5cai9lg";
+  buildDepends = [
+    convertible csv FerryCore HaXml HDBC json mtl Pathfinder syb text
+    xhtml
+  ];
+  meta = {
+    description = "Database Supported Haskell";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/FerryCore/default.nix b/pkgs/development/libraries/haskell/FerryCore/default.nix
new file mode 100644
index 00000000000..e7167baab7d
--- /dev/null
+++ b/pkgs/development/libraries/haskell/FerryCore/default.nix
@@ -0,0 +1,17 @@
+{ cabal, HaXml, mtl, parsec, TableAlgebra }:
+
+cabal.mkDerivation (self: {
+  pname = "FerryCore";
+  version = "0.4.6.4";
+  sha256 = "1dxhbrmcl36dg14lyihpy8fd8sdsmawh70fykllcjk3fh7a11wgp";
+  buildDepends = [ HaXml mtl parsec TableAlgebra ];
+  meta = {
+    description = "Ferry Core Components";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/HStringTemplate/default.nix b/pkgs/development/libraries/haskell/HStringTemplate/default.nix
index 55d2914d5bc..31aef957a4f 100644
--- a/pkgs/development/libraries/haskell/HStringTemplate/default.nix
+++ b/pkgs/development/libraries/haskell/HStringTemplate/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "HStringTemplate";
-  version = "0.6.6";
-  sha256 = "1ian79az5q6m08pwb5fks52ffs4h2mq02kkcwmr6jb7i0ha2k2si";
+  version = "0.6.8";
+  sha256 = "1fybvb3v2b786n1hfzcvyanj3yfm5j8z4fm48vaskcggawh6rlkr";
   buildDepends = [
     deepseq mtl parsec syb sybWithClass text time utf8String
   ];
diff --git a/pkgs/development/libraries/haskell/HsOpenSSL/default.nix b/pkgs/development/libraries/haskell/HsOpenSSL/default.nix
new file mode 100644
index 00000000000..1ab60436f68
--- /dev/null
+++ b/pkgs/development/libraries/haskell/HsOpenSSL/default.nix
@@ -0,0 +1,19 @@
+{ cabal, network, openssl, time }:
+
+cabal.mkDerivation (self: {
+  pname = "HsOpenSSL";
+  version = "0.10.1.2";
+  sha256 = "0najn3749s6jxqavpxw7q58jzsvli06sxjgkvs3lidasv6jhwmxh";
+  buildDepends = [ network time ];
+  extraLibraries = [ openssl ];
+  meta = {
+    homepage = "https://github.com/phonohawk/HsOpenSSL";
+    description = "(Incomplete) OpenSSL binding for Haskell";
+    license = self.stdenv.lib.licenses.publicDomain;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/Pathfinder/default.nix b/pkgs/development/libraries/haskell/Pathfinder/default.nix
new file mode 100644
index 00000000000..90df60cc8e6
--- /dev/null
+++ b/pkgs/development/libraries/haskell/Pathfinder/default.nix
@@ -0,0 +1,18 @@
+{ cabal, libxml2, text }:
+
+cabal.mkDerivation (self: {
+  pname = "Pathfinder";
+  version = "0.5.10";
+  sha256 = "1k38p73jnkfcmmz94iqpzg2g6apsxflidvy8p9lwqyzfmg70brqf";
+  buildDepends = [ text ];
+  extraLibraries = [ libxml2 ];
+  meta = {
+    description = "Relational optimiser and code generator";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/TableAlgebra/default.nix b/pkgs/development/libraries/haskell/TableAlgebra/default.nix
new file mode 100644
index 00000000000..f1c212d7a49
--- /dev/null
+++ b/pkgs/development/libraries/haskell/TableAlgebra/default.nix
@@ -0,0 +1,17 @@
+{ cabal, HaXml, mtl }:
+
+cabal.mkDerivation (self: {
+  pname = "TableAlgebra";
+  version = "0.7.1";
+  sha256 = "1jqkjnyznklyiy2shm4c9gix267war1hmsjncdmailhca41fs4bz";
+  buildDepends = [ HaXml mtl ];
+  meta = {
+    description = "Ferry Table Algebra";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/aeson/default.nix b/pkgs/development/libraries/haskell/aeson/default.nix
index b8ead39671e..2c55bdfc357 100644
--- a/pkgs/development/libraries/haskell/aeson/default.nix
+++ b/pkgs/development/libraries/haskell/aeson/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "aeson";
-  version = "0.5.0.0";
-  sha256 = "1n7c0kf6rdf5p76mjcxlqrzhnfz4b1zkkbxk9w94hibb0s4kwxv6";
+  version = "0.6.0.0";
+  sha256 = "1j8g1q7xr1pgyfyrkbh2zz7fhqshj0q5qg7fczrnsbbzf5k459zw";
   buildDepends = [
     attoparsec blazeBuilder deepseq dlist hashable mtl syb text time
     unorderedContainers vector
diff --git a/pkgs/development/libraries/haskell/bson/default.nix b/pkgs/development/libraries/haskell/bson/default.nix
index d14b0c990c8..53a8ee3ba46 100644
--- a/pkgs/development/libraries/haskell/bson/default.nix
+++ b/pkgs/development/libraries/haskell/bson/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "bson";
-  version = "0.1.6";
-  sha256 = "0w9dab8x6b3dwk2afy0gnmrvcvx2dshwhjvlr2k69nchid4wh823";
+  version = "0.1.7";
+  sha256 = "1dmndq0rx22h9kxv31rxwqhwkgsvqg9qy4l0xmvpcvvl101zj4jx";
   buildDepends = [
     binary compactStringFix cryptohash dataBinaryIeee754 mtl network
     time
diff --git a/pkgs/development/libraries/haskell/criterion/default.nix b/pkgs/development/libraries/haskell/criterion/default.nix
index e8d1c4f901b..e99f4b7df53 100644
--- a/pkgs/development/libraries/haskell/criterion/default.nix
+++ b/pkgs/development/libraries/haskell/criterion/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "criterion";
-  version = "0.6.0.0";
-  sha256 = "0yi6gx9zrmljhhdfqpaylri8x71q2yzyhwwn1c377xngrskpydr9";
+  version = "0.6.0.1";
+  sha256 = "0k6ip41w5h1z8gl67a8vsb6c3md5nc4yh1vd6dysp9fqgn0vky0a";
   buildDepends = [
     aeson deepseq hastache mtl mwcRandom parsec statistics time
     transformers vector vectorAlgorithms
diff --git a/pkgs/development/libraries/haskell/data-object-yaml/default.nix b/pkgs/development/libraries/haskell/data-object-yaml/default.nix
index 1669f4be73e..ec24fc554df 100644
--- a/pkgs/development/libraries/haskell/data-object-yaml/default.nix
+++ b/pkgs/development/libraries/haskell/data-object-yaml/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "data-object-yaml";
-  version = "0.3.4";
-  sha256 = "1wx6m7mjmdks8ym6dh117bhkdks4d1jlfchqif0svcwg04qnfczd";
+  version = "0.3.4.1";
+  sha256 = "04mpa59gyfkqi5s94ps3qhphw4csiasb3lj6kf6rhhmd5yx52dnp";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/fclabels/default.nix b/pkgs/development/libraries/haskell/fclabels/default.nix
index ddd6905d314..f93da3ee549 100644
--- a/pkgs/development/libraries/haskell/fclabels/default.nix
+++ b/pkgs/development/libraries/haskell/fclabels/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "fclabels";
-  version = "1.1.0.1";
-  sha256 = "0nzqx1d4hwailfkcb9g03hagws9j6valqd5yp7972kmhbq0c8h3s";
+  version = "1.1.0.2";
+  sha256 = "19p3ghjmc6jrgzifm5vrsd3cp5xmccw811zczcmsk1xjr4ady95r";
   buildDepends = [ mtl transformers ];
   meta = {
     description = "First class accessor labels";
diff --git a/pkgs/development/libraries/haskell/generic-deriving/default.nix b/pkgs/development/libraries/haskell/generic-deriving/default.nix
index b6f79ed16c2..b34c394cac7 100644
--- a/pkgs/development/libraries/haskell/generic-deriving/default.nix
+++ b/pkgs/development/libraries/haskell/generic-deriving/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "generic-deriving";
-  version = "1.0.2";
-  sha256 = "0qj4ql44f87rgg5l512mh863c1zjfklw1w5k8x4nyw37s7qx9hvq";
+  version = "1.0.3";
+  sha256 = "0g5sw4m9qdr1l47zq15l6jk9ksz1nazssdxz7lrdqx6ib3xbrz6y";
   meta = {
     description = "Generic programming library for generalized deriving";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/ghc-mod/default.nix b/pkgs/development/libraries/haskell/ghc-mod/default.nix
index 3d4d8927a83..945e9ee35e0 100644
--- a/pkgs/development/libraries/haskell/ghc-mod/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-mod/default.nix
@@ -1,4 +1,4 @@
-{ cabal, attoparsec, attoparsecEnumerator, ghcPaths, hlint, regexPosix, emacs, emacs23Packages }:
+{ cabal, attoparsec, attoparsecEnumerator, ghcPaths, hlint, regexPosix, emacsPackages }:
 
 cabal.mkDerivation (self: {
   pname = "ghc-mod";
@@ -7,8 +7,7 @@ cabal.mkDerivation (self: {
   buildDepends = [
     attoparsec attoparsecEnumerator ghcPaths hlint regexPosix
   ];
-#  buildTools = [emacs emacs23];
-  propagatedBuildInputs = [emacs emacs23Packages.haskellMode];
+  propagatedBuildInputs = [emacsPackages.emacs emacsPackages.haskellMode];
   isExecutable = true;
   postInstall = ''
     cd $out/share/$pname-$version
@@ -20,11 +19,14 @@ cabal.mkDerivation (self: {
   '';
 
   meta = {
+    homepage = "http://www.mew.org/~kazu/proj/ghc-mod/";
     description = "Happy Haskell programming on Emacs";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = [
+      self.stdenv.lib.maintainers.andres
       self.stdenv.lib.maintainers.bluescreen303
+      self.stdenv.lib.maintainers.simons
     ];
   };
 })
diff --git a/pkgs/development/libraries/haskell/hakyll/default.nix b/pkgs/development/libraries/haskell/hakyll/default.nix
index d461f54e15a..654d50cdc95 100644
--- a/pkgs/development/libraries/haskell/hakyll/default.nix
+++ b/pkgs/development/libraries/haskell/hakyll/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hakyll";
-  version = "3.2.4.1";
-  sha256 = "0ijym3k8f9za6cd1dnf8qx0jk85r5kz4f8gy7bn50jclcslnfl0n";
+  version = "3.2.5.0";
+  sha256 = "1y1dqfbas7ym1jghq3i7zhqcny01paqfrszj0aakg6ys2jjx0m29";
   buildDepends = [
     binary blazeHtml citeprocHs cryptohash hamlet mtl pandoc parsec
     regexBase regexPcre snapCore snapServer tagsoup time
diff --git a/pkgs/development/libraries/haskell/happstack/happstack-hamlet.nix b/pkgs/development/libraries/haskell/happstack/happstack-hamlet.nix
index 2826d84fa90..a0ec12802a0 100644
--- a/pkgs/development/libraries/haskell/happstack/happstack-hamlet.nix
+++ b/pkgs/development/libraries/haskell/happstack/happstack-hamlet.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "happstack-hamlet";
-  version = "6.2.2";
-  sha256 = "02kpfv7axrmgzyyqsfkdixcm7badh0sgy7am2kryvyb49zzk1vjr";
+  version = "6.2.3";
+  sha256 = "0k8g0rx9ikfklsrry2hxmm4hxwn31ra004qllpn6aldg6dr2w5n1";
   buildDepends = [ hamlet happstackServer text ];
   meta = {
     homepage = "http://www.happstack.com/";
diff --git a/pkgs/development/libraries/haskell/hxt/default.nix b/pkgs/development/libraries/haskell/hxt/default.nix
index c8871f423c0..7a3a5fdcb94 100644
--- a/pkgs/development/libraries/haskell/hxt/default.nix
+++ b/pkgs/development/libraries/haskell/hxt/default.nix
@@ -1,14 +1,14 @@
 { cabal, binary, deepseq, HUnit, hxtCharproperties
-, hxtRegexXmlschema, hxtUnicode, network, parsec
+, hxtRegexXmlschema, hxtUnicode, mtl, network, parsec
 }:
 
 cabal.mkDerivation (self: {
   pname = "hxt";
-  version = "9.1.6";
-  sha256 = "1ir1az8zpi9adkwpm3m4gjrwrn9cbmwd1dbqz4lrwi82i54c9bpb";
+  version = "9.2.0";
+  sha256 = "182yl4ksh4hg332b0lnk4s9cfqxsnnan7p5vqas5lbxvibmg68zc";
   buildDepends = [
     binary deepseq HUnit hxtCharproperties hxtRegexXmlschema hxtUnicode
-    network parsec
+    mtl network parsec
   ];
   meta = {
     homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
diff --git a/pkgs/development/libraries/haskell/instant-generics/default.nix b/pkgs/development/libraries/haskell/instant-generics/default.nix
index ca02a9bc8c7..2a51e8d344b 100644
--- a/pkgs/development/libraries/haskell/instant-generics/default.nix
+++ b/pkgs/development/libraries/haskell/instant-generics/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "instant-generics";
-  version = "0.3.3";
-  sha256 = "125ninsm1k9hixlwqdn7b842fpqxz4zih4rh8fn7r7djmv1zpq9q";
+  version = "0.3.4";
+  sha256 = "0j3sfbw3j0izwmhvwcl8nxxvlrpfla5rngxx2yvl6w5i87wyhswi";
   buildDepends = [ syb ];
   noHaddock = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/language-javascript/default.nix b/pkgs/development/libraries/haskell/language-javascript/default.nix
index 68f8006d2a9..17f57fbe546 100644
--- a/pkgs/development/libraries/haskell/language-javascript/default.nix
+++ b/pkgs/development/libraries/haskell/language-javascript/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "language-javascript";
-  version = "0.4.5";
-  sha256 = "0rsggjpxsvaipkibhl90qcj2w2i16g53srbb54v0hajx2msmi0ci";
+  version = "0.4.6";
+  sha256 = "1rqbb44cyvj6iyipi4bzrdd59lk9q1vxh0zvilvc54kqg97y07v6";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ mtl utf8Light ];
diff --git a/pkgs/development/libraries/haskell/lifted-base/default.nix b/pkgs/development/libraries/haskell/lifted-base/default.nix
index 48822d777bc..255570f6c6e 100644
--- a/pkgs/development/libraries/haskell/lifted-base/default.nix
+++ b/pkgs/development/libraries/haskell/lifted-base/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "lifted-base";
-  version = "0.1.0.2";
-  sha256 = "1j810pdkhl6kpc368081ar1k9342k3bl4cmx294zdyd0j00n23zx";
+  version = "0.1.0.3";
+  sha256 = "1fk2jv8xwjb4xmzcx7h74nh14i3wf5mpifiki9rvq4hnrb7gdx36";
   buildDepends = [
     baseUnicodeSymbols monadControl transformersBase
   ];
diff --git a/pkgs/development/libraries/haskell/mongoDB/default.nix b/pkgs/development/libraries/haskell/mongoDB/default.nix
index 0b59808a53a..374521d36c5 100644
--- a/pkgs/development/libraries/haskell/mongoDB/default.nix
+++ b/pkgs/development/libraries/haskell/mongoDB/default.nix
@@ -1,14 +1,14 @@
-{ cabal, binary, bson, cryptohash, monadControl, mtl, network
-, parsec, random, randomShuffle
+{ cabal, binary, bson, cryptohash, liftedBase, monadControl, mtl
+, network, parsec, random, randomShuffle, transformersBase
 }:
 
 cabal.mkDerivation (self: {
   pname = "mongoDB";
-  version = "1.1.1";
-  sha256 = "0hy47kvswm4g85c3lb75fvdrcnrcbmjrhk15r1jjriwzqicgiimz";
+  version = "1.2.0";
+  sha256 = "0rffa13p889mxbbkj2bmqy3yada3mrhngvp8pp7qvrll1acm7s13";
   buildDepends = [
-    binary bson cryptohash monadControl mtl network parsec random
-    randomShuffle
+    binary bson cryptohash liftedBase monadControl mtl network parsec
+    random randomShuffle transformersBase
   ];
   meta = {
     homepage = "http://github.com/TonyGen/mongoDB-haskell";
diff --git a/pkgs/development/libraries/haskell/mwc-random/default.nix b/pkgs/development/libraries/haskell/mwc-random/0.10.0.1.nix
index ab762c2db63..ab762c2db63 100644
--- a/pkgs/development/libraries/haskell/mwc-random/default.nix
+++ b/pkgs/development/libraries/haskell/mwc-random/0.10.0.1.nix
diff --git a/pkgs/development/libraries/haskell/mwc-random/0.11.0.0.nix b/pkgs/development/libraries/haskell/mwc-random/0.11.0.0.nix
new file mode 100644
index 00000000000..5cf459fb0a9
--- /dev/null
+++ b/pkgs/development/libraries/haskell/mwc-random/0.11.0.0.nix
@@ -0,0 +1,18 @@
+{ cabal, primitive, time, vector }:
+
+cabal.mkDerivation (self: {
+  pname = "mwc-random";
+  version = "0.11.0.0";
+  sha256 = "1yqi472m3snx71fvd4mig6my74rkpf3sbsdcmx2y2l00cyk79ghh";
+  buildDepends = [ primitive time vector ];
+  meta = {
+    homepage = "https://github.com/bos/mwc-random";
+    description = "Fast, high quality pseudo random number generation";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/pool-conduit/default.nix b/pkgs/development/libraries/haskell/pool-conduit/default.nix
new file mode 100644
index 00000000000..f7d1be2f7d0
--- /dev/null
+++ b/pkgs/development/libraries/haskell/pool-conduit/default.nix
@@ -0,0 +1,18 @@
+{ cabal, conduit, resourcePool, transformers }:
+
+cabal.mkDerivation (self: {
+  pname = "pool-conduit";
+  version = "0.0.0";
+  sha256 = "0cbs7swb1ay3l1hlbirys171ybqg887csnp6yiy9biq11q5mhsml";
+  buildDepends = [ conduit resourcePool transformers ];
+  meta = {
+    homepage = "http://www.yesodweb.com/book/persistent";
+    description = "Resource pool allocations via ResourceT";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/pool/default.nix b/pkgs/development/libraries/haskell/pool/default.nix
index 09c871692ec..fb417a3faf2 100644
--- a/pkgs/development/libraries/haskell/pool/default.nix
+++ b/pkgs/development/libraries/haskell/pool/default.nix
@@ -2,12 +2,12 @@
 
 cabal.mkDerivation (self: {
   pname = "pool";
-  version = "0.1.2";
-  sha256 = "05lrinyk9gxdf67vwdav93ral2y8qsb33i9y5k91vlcjfp7w516q";
+  version = "0.1.2.1";
+  sha256 = "1fwwnwxk3kprr2z9y7bwa1qwxfkzwcb2n5l6vkq1c5s8gjls581c";
   buildDepends = [ monadControl transformers ];
   meta = {
     homepage = "http://www.yesodweb.com/book/persistent";
-    description = "Thread-safe resource pools";
+    description = "Thread-safe resource pools. (deprecated)";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = [
diff --git a/pkgs/development/libraries/haskell/pretty-show/default.nix b/pkgs/development/libraries/haskell/pretty-show/default.nix
index deb9e731ebd..19398be7ac7 100644
--- a/pkgs/development/libraries/haskell/pretty-show/default.nix
+++ b/pkgs/development/libraries/haskell/pretty-show/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pretty-show";
-  version = "1.1.1";
-  sha256 = "0w6r68l1452vh9aqnlh4066y62h8ylh45gbsl5l558wjgchlna5k";
+  version = "1.2";
+  sha256 = "0lbalmyrqisgd2spbvzifsy25lr6cl9sgz78hav8q8r406k7nf2l";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ haskellLexer ];
diff --git a/pkgs/development/libraries/haskell/resource-pool/default.nix b/pkgs/development/libraries/haskell/resource-pool/default.nix
new file mode 100644
index 00000000000..51952598f61
--- /dev/null
+++ b/pkgs/development/libraries/haskell/resource-pool/default.nix
@@ -0,0 +1,22 @@
+{ cabal, hashable, monadControl, stm, time, transformers
+, transformersBase, vector
+}:
+
+cabal.mkDerivation (self: {
+  pname = "resource-pool";
+  version = "0.2.1.0";
+  sha256 = "12akfi906l1nm7h3wvjkzl9bxn74dbv17xw2c1mqgl6sg470d587";
+  buildDepends = [
+    hashable monadControl stm time transformers transformersBase vector
+  ];
+  meta = {
+    homepage = "http://github.com/bos/pool";
+    description = "A high-performance striped resource pooling implementation";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/statistics/default.nix b/pkgs/development/libraries/haskell/statistics/default.nix
index ad18f9cbd98..97202c4ec60 100644
--- a/pkgs/development/libraries/haskell/statistics/default.nix
+++ b/pkgs/development/libraries/haskell/statistics/default.nix
@@ -1,13 +1,14 @@
-{ cabal, deepseq, erf, monadPar, mwcRandom, primitive, vector
-, vectorAlgorithms
+{ cabal, deepseq, erf, mathFunctions, monadPar, mwcRandom
+, primitive, vector, vectorAlgorithms
 }:
 
 cabal.mkDerivation (self: {
   pname = "statistics";
-  version = "0.10.0.1";
-  sha256 = "0bn131yzq3qk4dpr78i3ndsxyn7hars9jw9krfsxmin9pqr114sw";
+  version = "0.10.1.0";
+  sha256 = "0fnpwnhcwxjcm81b9daqdy07cw5qgqa7m2bj6fxxwicpvawcyabc";
   buildDepends = [
-    deepseq erf monadPar mwcRandom primitive vector vectorAlgorithms
+    deepseq erf mathFunctions monadPar mwcRandom primitive vector
+    vectorAlgorithms
   ];
   meta = {
     homepage = "https://github.com/bos/statistics";
diff --git a/pkgs/development/libraries/haskell/text/0.11.1.13.nix b/pkgs/development/libraries/haskell/text/0.11.1.13.nix
new file mode 100644
index 00000000000..9576e1806e1
--- /dev/null
+++ b/pkgs/development/libraries/haskell/text/0.11.1.13.nix
@@ -0,0 +1,18 @@
+{ cabal, deepseq }:
+
+cabal.mkDerivation (self: {
+  pname = "text";
+  version = "0.11.1.13";
+  sha256 = "0lbc4yfqpydps0rd1qjymnnhp87sl9w7n1f5vd5lsixby93zjv2f";
+  buildDepends = [ deepseq ];
+  meta = {
+    homepage = "https://github.com/bos/text";
+    description = "An efficient packed Unicode text type";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/tls-extra/default.nix b/pkgs/development/libraries/haskell/tls-extra/default.nix
index d9d5c8c11d6..6ea11c7d6ad 100644
--- a/pkgs/development/libraries/haskell/tls-extra/default.nix
+++ b/pkgs/development/libraries/haskell/tls-extra/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tls-extra";
-  version = "0.4.2";
-  sha256 = "14zi5xzdyzdzw9qv6775li635x8i9rkp2z655ygzcwz5v3spjz9z";
+  version = "0.4.2.1";
+  sha256 = "0gddss5pnvrkjgjlvyl92rb78i4q8x9m6r8z01ba1snqjgldmj56";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/zeromq-haskell/default.nix b/pkgs/development/libraries/haskell/zeromq-haskell/default.nix
index f7c6a81d188..ef2eb97063a 100644
--- a/pkgs/development/libraries/haskell/zeromq-haskell/default.nix
+++ b/pkgs/development/libraries/haskell/zeromq-haskell/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "zeromq-haskell";
-  version = "0.8.2";
-  sha256 = "0wi3s3ygxd15jbj5bpq6xvrsjsm94hhj6na8r45j241j0cgr322x";
+  version = "0.8.3";
+  sha256 = "1gp85fbgylsqkxacgdxv4ifvgvwca03gy88raphqhrnk59bmjgzd";
   extraLibraries = [ zeromq ];
   meta = {
     homepage = "http://github.com/twittner/zeromq-haskell/";
diff --git a/pkgs/development/libraries/libmsn/default.nix b/pkgs/development/libraries/libmsn/default.nix
index 3d7f20291b9..4ec5e62ea04 100644
--- a/pkgs/development/libraries/libmsn/default.nix
+++ b/pkgs/development/libraries/libmsn/default.nix
@@ -1,12 +1,10 @@
 {stdenv, fetchurl, cmake, openssl}:
 
 stdenv.mkDerivation rec {
-  name = "libmsn-4.1";
+  name = "libmsn-4.2.1";
   src = fetchurl {
     url = "mirror://sourceforge/libmsn/${name}.tar.bz2";
-    sha256 = "0p3c3gidnq4ai697dgg930hm7aap4176sbq7w7nn0mxg4rg5gwfx";
+    sha256 = "338369c7455b123e84b9a7a858ac0ed2b1dc32e6529f460fdc01d28869a20fde";
   };
-  patches = [ ./libmsn-4.1-openssl-1.patch ];
-  patchFlags = "-p0";
   buildInputs = [ cmake openssl ];
 }
diff --git a/pkgs/development/libraries/libxcrypt/default.nix b/pkgs/development/libraries/libxcrypt/default.nix
index b2c9a2c9cf5..9122335b34a 100644
--- a/pkgs/development/libraries/libxcrypt/default.nix
+++ b/pkgs/development/libraries/libxcrypt/default.nix
@@ -2,7 +2,7 @@
 
 # I could not build it in armv5tel-linux or the fuloon2f
 assert stdenv.system != "armv5tel-linux";
-assert stdenv.system != "mips64-linux";
+assert stdenv.system != "mips64el-linux";
    
 stdenv.mkDerivation {
   name = "libxcrypt-3.0.2";
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index edbde5a9b49..55701cf18c9 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -17,14 +17,15 @@ stdenv.mkDerivation {
     sha256 = "0msk1fh4yw4yi7z37v75vhpa23z49lkwgin6drczbihbqsl6lx2p";
   };
 
-  patches = [ ./swrast-settexbuffer.patch ];
+  patches = [ ./swrast-settexbuffer.patch ] ++ stdenv.lib.optional
+    (stdenv.system == "mips64el-linux") ./mips_wmb.patch;
 
   prePatch = "patchShebangs .";
 
 # r300
   configureFlags =
       " --with-driver=dri --enable-gl-osmesa --enable-gles1"
-    + " --with-gallium-drivers=i915,i965,nouveau,r600,svga,swrast"
+    + " --with-gallium-drivers=i915,nouveau,r600,svga,swrast"
     + " --enable-gles2 --enable-gallium-egl --disable-glx-tls"
     + " --enable-xcb --enable-egl --disable-glut"
     # Texture floats are patented, see docs/patents.txt
diff --git a/pkgs/development/libraries/mesa/mips_wmb.patch b/pkgs/development/libraries/mesa/mips_wmb.patch
new file mode 100644
index 00000000000..1ffa1bdd8df
--- /dev/null
+++ b/pkgs/development/libraries/mesa/mips_wmb.patch
@@ -0,0 +1,16 @@
+rixed told me (viric) it's the patch to apply for mesa.
+I adapted his patch for mesa 7.5 to this 7.10
+
+diff --git a/src/mesa/drivers/dri/sis/sis_context.h b/src/mesa/drivers/dri/sis/sis_context.h
+index a82a659..d8d8d9a 100644
+--- a/src/mesa/drivers/dri/sis/sis_context.h
++++ b/src/mesa/drivers/dri/sis/sis_context.h
+@@ -404,6 +404,8 @@ struct sis_context
+ #define MMIO_WMB()	__asm __volatile("" : : : "memory")
+ #elif defined(__ia64__)
+ #define MMIO_WMB()	__asm __volatile("mf" : : : "memory")
++#elif defined(__mips__)
++#define MMIO_WMB()     __asm __volatile("" : : : "memory")
+ #else
+ #error platform needs WMB
+ #endif
diff --git a/pkgs/development/libraries/mlt/default.nix b/pkgs/development/libraries/mlt/default.nix
index 384c31a7cd4..50100e3f1f3 100644
--- a/pkgs/development/libraries/mlt/default.nix
+++ b/pkgs/development/libraries/mlt/default.nix
@@ -2,11 +2,11 @@
 libvorbis, sox}:
 
 stdenv.mkDerivation {
-  name = "mlt-0.7.4";
+  name = "mlt-0.7.6";
 
   src = fetchurl {
-    url = mirror://sourceforge/mlt/mlt-0.7.4.tar.gz;
-    sha256 = "1xcrrd3xbz9hmahgl7xf610cm97chwpxwgcajkd10mpcxbqs08i0";
+    url = mirror://sourceforge/mlt/mlt-0.7.6.tar.gz;
+    sha256 = "f8ea8590417ea2b5543a495f2edc30636d3931932deee7a4e0d8516e9c2b58ae";
   };
 
   buildInputs = [ qt4 SDL ffmpeg libdv libxml2 libsamplerate libvorbis sox ];
diff --git a/pkgs/development/libraries/xapian/bindings/default.nix b/pkgs/development/libraries/xapian/bindings/default.nix
index 93d31ada975..789d9a65308 100644
--- a/pkgs/development/libraries/xapian/bindings/default.nix
+++ b/pkgs/development/libraries/xapian/bindings/default.nix
@@ -5,11 +5,11 @@ let inherit (composableDerivation) wwf; in
 
 composableDerivation.composableDerivation {} rec {
 
-  name = "xapian-bindings-1.2.7";
+  name = "xapian-bindings-1.2.8";
 
   src = fetchurl {
-    url = "http://oligarchy.co.uk/xapian/1.2.7/${name}.tar.gz";
-    sha256 = "c9f63ad7a032c260f0617e029327d7b05dd986d91af401032268a9f7b2eabde8";
+    url = "http://oligarchy.co.uk/xapian/1.2.8/${name}.tar.gz";
+    sha256 = "eb740c619c75d288e65a1c2f86faecdca53d44d3f9896bcc080085839887b124";
   };
 
   buildInputs = [ xapian pkgconfig zlib ];
diff --git a/pkgs/development/libraries/xapian/default.nix b/pkgs/development/libraries/xapian/default.nix
index ac27962b8c5..99837974b1d 100644
--- a/pkgs/development/libraries/xapian/default.nix
+++ b/pkgs/development/libraries/xapian/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libuuid, zlib }:
 
 stdenv.mkDerivation {
-  name = "xapian-1.2.7";
+  name = "xapian-1.2.8";
 
   src = fetchurl {
-    url = http://oligarchy.co.uk/xapian/1.2.7/xapian-core-1.2.7.tar.gz;
-    sha256 = "6ce8cb3502f35245ec0cb0dcf579ce4f65c015a2f2e8d1b4c388c95f58278c89";
+    url = http://oligarchy.co.uk/xapian/1.2.8/xapian-core-1.2.8.tar.gz;
+    sha256 = "00411ebac66a5592b87fc57ccfeb234c84b929ed23c185befb5df9929df3d4f9";
   };
 
   buildInputs = [ libuuid zlib ];
diff --git a/pkgs/development/tools/haskell/hlint/default.nix b/pkgs/development/tools/haskell/hlint/default.nix
index 1e4b04db04a..47034c6ebce 100644
--- a/pkgs/development/tools/haskell/hlint/default.nix
+++ b/pkgs/development/tools/haskell/hlint/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hlint";
-  version = "1.8.20";
-  sha256 = "0nkvlvax2yv8lqq7axnghdw38fj6r44y78ss23yxqqav7q046vyh";
+  version = "1.8.21";
+  sha256 = "1vjl1qncxia9352469k9v28283f17xk0xhb28by6crchz596xln6";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/tools/haskell/tar/default.nix b/pkgs/development/tools/haskell/tar/default.nix
index ef03d80f5e9..8bffe95fe89 100644
--- a/pkgs/development/tools/haskell/tar/default.nix
+++ b/pkgs/development/tools/haskell/tar/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tar";
-  version = "0.3.1.0";
-  sha256 = "1n16sq5y7x30r1k7ydxmncn9x2nx3diildzyfxjy2b8drxp4jr03";
+  version = "0.3.2.0";
+  sha256 = "0yplrfai8bwihyn18whi0jiz1qzll9hgbc37xcy2jkr28480jba9";
   meta = {
     description = "Reading, writing and manipulating \".tar\" archive files.";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/tools/misc/astyle/default.nix b/pkgs/development/tools/misc/astyle/default.nix
new file mode 100644
index 00000000000..9b1e9955732
--- /dev/null
+++ b/pkgs/development/tools/misc/astyle/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl }:
+
+let
+  name = "astyle";
+  version = "2.02.1";
+in
+stdenv.mkDerivation {
+  name = "${name}-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/${name}/${name}_${version}_linux.tar.gz";
+    sha256 = "0bece9a32887e51f42c57617cf7c4f9b63d0a386749fe3a094f5525b639ef953";
+  };
+
+  sourceRoot = "astyle/build/gcc";
+
+  installFlags = "INSTALL=install prefix=$$out";
+
+  meta = {
+    homepage = "http://astyle.sourceforge.net/";
+    description = "source code reformatter";
+    license = "LGPL";
+
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.simons ];
+  };
+}
diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix
index 41ce4684962..353cd9f40bc 100644
--- a/pkgs/development/tools/misc/binutils/default.nix
+++ b/pkgs/development/tools/misc/binutils/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-static-libgcc";
 
   configureFlags = "--disable-werror" # needed for dietlibc build
-      + stdenv.lib.optionalString (stdenv.system == "mips64-linux")
+      + stdenv.lib.optionalString (stdenv.system == "mips64el-linux")
         " --enable-fix-loongson2f-nop"
       + stdenv.lib.optionalString (cross != null) " --target=${cross.config}"
       + stdenv.lib.optionalString gold " --enable-gold";
diff --git a/pkgs/development/tools/misc/ccache/default.nix b/pkgs/development/tools/misc/ccache/default.nix
index dc1238cc47e..2cd00f51d9d 100644
--- a/pkgs/development/tools/misc/ccache/default.nix
+++ b/pkgs/development/tools/misc/ccache/default.nix
@@ -1,10 +1,40 @@
-{stdenv, fetchurl}:
+{stdenv, fetchurl, runCommand, gcc, zlib}:
 
+let
+  ccache =
 stdenv.mkDerivation {
-  name = "ccache-3.0";
+  name = "ccache-3.1.7";
   src = fetchurl {
-    url = http://samba.org/ftp/ccache/ccache-3.0.tar.gz;
-    sha256 = "0mi8sfnlcp2pmp7nzb7894rv85v13zxrj0v3qgnwhny3gx2p5pgk";
+    url = http://samba.org/ftp/ccache/ccache-3.1.7.tar.gz;
+    sha256 = "04ax6ks49b6rn57hx4v9wbvmsfmw6ipn0wyfqwhh4lzw70flv3r7";
+  };
+
+  buildInputs = [ zlib ];
+
+  passthru = {
+    # A derivation that provides gcc and g++ commands, but that
+    # will end up calling ccache for the given cacheDir
+    links = extraConfig : (runCommand "ccache-links"
+        { inherit (gcc) langC langCC; }
+      ''
+        mkdir -p $out/bin
+        if [ $langC -eq 1 ]; then
+          cat > $out/bin/gcc << EOF
+          #!/bin/sh
+          ${extraConfig}
+          exec ${ccache}/bin/ccache ${gcc.gcc}/bin/gcc "\$@"
+        EOF
+          chmod +x $out/bin/gcc
+        fi
+        if [ $langCC -eq 1 ]; then
+          cat > $out/bin/g++ << EOF
+          #!/bin/sh
+          ${extraConfig}
+          exec ${ccache}/bin/ccache ${gcc.gcc}/bin/g++ "\$@"
+        EOF
+          chmod +x $out/bin/g++
+        fi
+      '');
   };
 
   meta = {
@@ -12,4 +42,6 @@ stdenv.mkDerivation {
     homepage = http://ccache.samba.org/;
     license = "GPL";
   };
-}
+};
+in
+ccache
diff --git a/pkgs/development/tools/misc/coccinelle/default.nix b/pkgs/development/tools/misc/coccinelle/default.nix
index 7a247b0b2e3..276c3bd1ed0 100644
--- a/pkgs/development/tools/misc/coccinelle/default.nix
+++ b/pkgs/development/tools/misc/coccinelle/default.nix
@@ -27,9 +27,6 @@ stdenv.mkDerivation rec {
 
   # Note: The tests want $out/share/coccinelle/standard.h so they must be run
   # after "make install".
-  # (I'm not sure if this is still needed.)
-  # Note: The check phase is now disabled completely, because the expected
-  # testing score is not always updated.
   doCheck = false;
 
   postInstall =
diff --git a/pkgs/development/tools/misc/pkgconfig/default.nix b/pkgs/development/tools/misc/pkgconfig/default.nix
index 22035f6fee7..ae5048f6306 100644
--- a/pkgs/development/tools/misc/pkgconfig/default.nix
+++ b/pkgs/development/tools/misc/pkgconfig/default.nix
@@ -1,6 +1,6 @@
-{stdenv, fetchurl}:
+{stdenv, fetchurl, automake}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (rec {
   name = "pkg-config-0.23";
   
   setupHook = ./setup-hook.sh;
@@ -21,5 +21,9 @@ stdenv.mkDerivation rec {
     homepage = http://pkg-config.freedesktop.org/wiki/;
   };
 
-}
-
+} // (if stdenv.system == "mips64el-linux" then
+  {
+    preConfigure = ''
+      cp -v ${automake}/share/automake*/config.{sub,guess} .
+    '';
+  } else {}))
diff --git a/pkgs/development/tools/parsing/ebnf2ps/default.nix b/pkgs/development/tools/parsing/ebnf2ps/default.nix
new file mode 100644
index 00000000000..5abb52566fe
--- /dev/null
+++ b/pkgs/development/tools/parsing/ebnf2ps/default.nix
@@ -0,0 +1,35 @@
+{ cabal, fetchurl, happy }:
+
+let
+  pname = "ebnf2ps";
+  version = "1.0.8";
+in
+cabal.mkDerivation (self: {
+  inherit pname version;
+
+  src = fetchurl {
+    url = "http://www.informatik.uni-freiburg.de/~thiemann/haskell/ebnf2ps/${pname}-${version}.tar.gz";
+    sha256 = "1yfgq4nf79g1nyfb0yxqi887kxc04dvwpm1fwrk50bs4xj1vg3wf";
+  };
+
+  buildTools = [ happy ];
+
+  patches = [ ./modernize.patch ];
+
+  meta = {
+    homepage = "http://www.informatik.uni-freiburg.de/~thiemann/haskell/ebnf2ps/";
+    description = "Syntax Diagram Drawing Tool";
+    license = "BSD";
+
+    longDescription = ''
+      Ebnf2ps generates nice looking syntax diagrams in EPS and FIG
+      format from EBNF specifications and from yacc, bison, and Happy
+      input grammars. The diagrams can be immediatedly included in
+      TeX/LaTeX documents and in texts created with other popular
+      document preparation systems.
+    '';
+
+    platforms = self.stdenv.lib.platforms.linux;
+    maintainers = [ self.stdenv.lib.maintainers.simons ];
+  };
+})
diff --git a/pkgs/development/tools/parsing/ebnf2ps/modernize.patch b/pkgs/development/tools/parsing/ebnf2ps/modernize.patch
new file mode 100644
index 00000000000..edb5e366d48
--- /dev/null
+++ b/pkgs/development/tools/parsing/ebnf2ps/modernize.patch
@@ -0,0 +1,256 @@
+diff --git a/Ebnf2ps.cabal b/Ebnf2ps.cabal
+index 483d34a..0a7b96e 100644
+--- a/Ebnf2ps.cabal
++++ b/Ebnf2ps.cabal
+@@ -1,66 +1,30 @@
+--- Ebnf2ps.cabal auto-generated by cabal init. For additional options,
+--- see
+--- http://www.haskell.org/cabal/release/cabal-latest/doc/users-guide/authors.html#pkg-descr.
+--- The name of the package.
+ Name:                Ebnf2ps
+-
+--- The package version. See the Haskell package versioning policy
+--- (http://www.haskell.org/haskellwiki/Package_versioning_policy) for
+--- standards guiding when and how versions should be incremented.
+ Version:             1.0.8
+-
+--- A short (one-line) description of the package.
+-Synopsis:            Ebnf2ps: Peter's Syntax Diagram Drawing Tool
+-
+--- A longer description of the package.
+--- Description:         
+-
+--- URL for the project homepage or repository.
++Synopsis:               Peter's Syntax Diagram Drawing Tool
+ Homepage:            http://www.informatik.uni-freiburg.de/~thiemann/haskell/ebnf2ps/
+-
+--- The license under which the package is released.
+ License:             BSD4
+-
+--- The file containing the license text.
+ -- License-file:        LICENSE
+-
+--- The package author(s).
+-Author:              Peter Thiemann
+-
+--- An email address to which users can send suggestions, bug reports,
+--- and patches.
+-Maintainer:          thiemann@acm.org
+-
+--- A copyright notice.
+--- Copyright:           
+-
++Author:                 Peter Thiemann <thiemann@acm.org>
++Maintainer:             Peter Thiemann <thiemann@acm.org>
+ Category:            Language
+-
+ Build-type:          Simple
+-
+--- Extra files to be distributed with the package, such as examples or
+--- a README.
+--- Extra-source-files:  
+-
+--- Constraint on the version of Cabal needed to build this package.
+ Cabal-version:       >=1.2
+-
++Tested-With:            GHC == 6.10.4, GHC == 6.12.3, GHC == 7.0.4, GHC == 7.2.2
++Description:            Ebnf2ps generates nice looking syntax diagrams in EPS
++                        and FIG format from EBNF specifications and from yacc,
++                        bison, and Happy input grammars. The diagrams can be
++                        immediatedly included in TeX/LaTeX documents and in
++                        texts created with other popular document preparation
++                        systems.
+ 
+ Executable Ebnf2ps
+-  -- .hs or .lhs file containing the Main module.
+   Main-is:   Ebnf2ps.hs
+   Hs-source-dirs: src
+-  
+-  -- Packages needed in order to build this package.
+-  Build-depends:  base < 4.3
+-               ,  containers < 0.4
+-               ,  haskell98
+-               ,  unix < 2.5
+-  
+-  -- Modules not exported by this package.
+-  -- Other-modules:       
+-  
+-  -- Extra tools (e.g. alex, hsc2hs, ...) needed to build the source.
++  Build-depends:        base >= 2 && < 5,
++                        containers,
++                        old-time,
++                        directory,
++                        unix
+   Build-tools:         happy
+   Cc-options: -DAFMPATH=/usr/share/texmf-texlive/fonts/afm
+   
+diff --git a/src/Color.hs b/src/Color.hs
+index 184e5e6..8786dac 100644
+--- a/src/Color.hs
++++ b/src/Color.hs
+@@ -23,7 +23,7 @@
+ module Color where
+ -- (Color (..), lookupColor, showsColor, showsAColor, prepareColors)
+ 
+-import Char
++import Data.Char
+ import Numeric
+ 
+ type Color = (Int, Int, Int)
+diff --git a/src/CommandLine.hs b/src/CommandLine.hs
+index 50d6546..518b107 100644
+--- a/src/CommandLine.hs
++++ b/src/CommandLine.hs
+@@ -1,6 +1,6 @@
+ module CommandLine (parse_cmds) where
+-import System
+-
++import System.IO
++import System.Environment
+ 
+ defaultArgs :: Args
+ defaultArgs  =  MkArgs "Times-Roman" 10 "black" "Times-Roman" 10 "black" "white" "black" "Times-Roman" 10 "black" "white" "black" "black" 500 500 30 100 200 "rgb.txt" False False False False True False False False False
+diff --git a/src/Ebnf2ps.hs b/src/Ebnf2ps.hs
+index 9dc2e4d..6f340cf 100644
+--- a/src/Ebnf2ps.hs
++++ b/src/Ebnf2ps.hs
+@@ -25,11 +25,10 @@ import Defaults		(afmPathDefault, ebnfInputDefault, rgbPathDefault)
+ import PathExpansion	(expandPath) 
+ import Color
+ import Info
+-import IO
+-import Monad
++import System.Time
++import System.Environment
++import Control.Monad
+ import Numeric
+-import System 
+-import Time
+ 
+ --------------------------------------------------------------------------------
+ main :: IO () 
+diff --git a/src/Ebnf2psParser.hs b/src/Ebnf2psParser.hs
+index 4cc7052..0fb4557 100644
+--- a/src/Ebnf2psParser.hs
++++ b/src/Ebnf2psParser.hs
+@@ -4,7 +4,7 @@
+ module Ebnf2psParser (theEbnfParser, theHappyParser, theYaccParser) where
+ import AbstractSyntax
+ import Lexer
+-import List
++import Data.List
+ 
+ data HappyAbsSyn 
+ 	= HappyTerminal Token'
+diff --git a/src/EbnfLayout.hs b/src/EbnfLayout.hs
+index cd0b4d9..aecc0b4 100644
+--- a/src/EbnfLayout.hs
++++ b/src/EbnfLayout.hs
+@@ -25,7 +25,7 @@ import AbstractSyntax
+ import Color
+ import Fonts (FONT, stringWidth, stringHeight, fontDescender)
+ import Info
+-import List
++import Data.List
+ 
+ -- all arithmetic is done in 1/100 pt
+ 
+diff --git a/src/Fonts.hs b/src/Fonts.hs
+index c1639de..ed36a79 100644
+--- a/src/Fonts.hs
++++ b/src/Fonts.hs
+@@ -17,7 +17,7 @@
+ module Fonts (FONT, makeFont, fontDescender, stringWidth, stringHeight, fontName, fontScale, noFont)
+ where
+ 
+-import Char
++import Data.Char
+ import Numeric
+ 
+ data FONT = FONT String Int Int (String -> Int)
+diff --git a/src/GrammarTransform.hs b/src/GrammarTransform.hs
+index 99c3840..65624ab 100644
+--- a/src/GrammarTransform.hs
++++ b/src/GrammarTransform.hs
+@@ -13,7 +13,7 @@ module GrammarTransform
+ where
+ 
+ import AbstractSyntax
+-import List
++import Data.List
+ 
+ 
+ data RInfo
+diff --git a/src/GrammarUnfold.hs b/src/GrammarUnfold.hs
+index 056119a..d35a630 100644
+--- a/src/GrammarUnfold.hs
++++ b/src/GrammarUnfold.hs
+@@ -17,7 +17,7 @@ module GrammarUnfold (
+ import AbstractSyntax
+ import GrammarTransform 
+ import StringMatch      (stringMatch)
+-import List
++import Data.List
+ 
+ import qualified Data.Map (Map, keys, elems, findWithDefault, fromList)
+ 
+diff --git a/src/IOSupplement.hs b/src/IOSupplement.hs
+index 3251365..ba666b1 100644
+--- a/src/IOSupplement.hs
++++ b/src/IOSupplement.hs
+@@ -29,8 +29,9 @@
+ module IOSupplement (getPath, readPathFile, readRGBPathFile)
+ where
+ 
+-import System
+-import IO
++import System.IO
++import System.IO.Error
++import System.Environment
+ 
+ #ifdef __HBC__
+ ioError = fail
+diff --git a/src/Lexer.hs b/src/Lexer.hs
+index 52f2549..8bf9f82 100644
+--- a/src/Lexer.hs
++++ b/src/Lexer.hs
+@@ -3,7 +3,7 @@ module Lexer where
+ -- Last Modified By: M. Walter
+ --
+ 
+-import Char
++import Data.Char
+ 
+ ------------------------------------------------------------------------------
+ --NOW the lexer
+diff --git a/src/PathExpansion.hs b/src/PathExpansion.hs
+index 48e27d6..01807e5 100644
+--- a/src/PathExpansion.hs
++++ b/src/PathExpansion.hs
+@@ -3,10 +3,11 @@ module PathExpansion (expandPath)
+ where
+  
+ #ifdef __GLASGOW_HASKELL__
+-import System
+-import Directory
+-import Monad
+-import IO
++import System.Directory
++import System.Environment
++import Control.Monad
++import System.IO
++import System.IO.Error
+ import System.Posix.User (getUserEntryForName, homeDirectory)
+ #endif
+ 
+@@ -99,8 +100,8 @@ replaceEnv (x:xs) = do t <- replaceEnv xs
+ 		       return (x:t)
+ 
+ getEnv2 t
+-	|t == "HOME" = catch (getEnv t) (\e -> if IO.isDoesNotExistError e then return ['.'] else ioError e)
+-	|otherwise = catch (getEnv t) (\e -> if IO.isDoesNotExistError e then return [] else ioError e)
++	|t == "HOME" = catch (getEnv t) (\e -> if isDoesNotExistError e then return ['.'] else ioError e)
++	|otherwise = catch (getEnv t) (\e -> if isDoesNotExistError e then return [] else ioError e)
+ -------------------------------------------------------	
+ 
+ ---------------- Teilen nach Doppelpunkt --------------
diff --git a/pkgs/games/torcs/default.nix b/pkgs/games/torcs/default.nix
index 7f7c95d3cd1..cf740def511 100644
--- a/pkgs/games/torcs/default.nix
+++ b/pkgs/games/torcs/default.nix
@@ -1,13 +1,13 @@
 { fetchurl, stdenv, mesa, freeglut, libX11, plib, openal, freealut, libXrandr, xproto,
-libXext, libSM, libICE, libXi, libXt, libXrender, libXxf86vm,
+libXext, libSM, libICE, libXi, libXt, libXrender, libXxf86vm, libvorbis,
 libpng, zlib, bash }:
 
 stdenv.mkDerivation rec {
-  name = "torcs-1.3.1";
+  name = "torcs-1.3.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/torcs/${name}.tar.bz2";
-    sha256 = "1zai7nrx93pcv24r3fkr08831szj7vz3a6xy8fihlv6wvfnpn6wh";
+    sha256 = "0171ixhnd9cs8jkwa5awrxklfgyykcbc9m8270b8cw30lsx7qhp1";
   };
 
   patchPhase = ''
@@ -15,7 +15,9 @@ stdenv.mkDerivation rec {
   '';
 
   buildInputs = [ mesa freeglut libX11 plib openal freealut libXrandr xproto
-    libXext libSM libICE libXi libXt libXrender libXxf86vm libpng zlib bash ];
+    libXext libSM libICE libXi libXt libXrender libXxf86vm libpng zlib libvorbis ];
+
+  buildNativeInputs = [ bash ];
 
   installTargets = "install datainstall";
 
diff --git a/pkgs/lib/platforms.nix b/pkgs/lib/platforms.nix
index 19ceb16fcff..c10d0e63a97 100644
--- a/pkgs/lib/platforms.nix
+++ b/pkgs/lib/platforms.nix
@@ -3,7 +3,7 @@ let lists = import ./lists.nix; in
 rec {
   gnu = linux; /* ++ hurd ++ kfreebsd ++ ... */
   linux = ["i686-linux" "x86_64-linux" "powerpc-linux" "armv5tel-linux"
-    "mips64-linux"];
+    "mips64el-linux"];
   darwin = ["i686-darwin" "powerpc-darwin" "x86_64-darwin"];
   freebsd = ["i686-freebsd" "x86_64-freebsd" "powerpc-freebsd"];
   openbsd = ["i686-openbsd" "x86_64-openbsd"];
diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix
index 56461f2e858..d8dfd95502e 100644
--- a/pkgs/misc/cups/default.nix
+++ b/pkgs/misc/cups/default.nix
@@ -1,8 +1,9 @@
 { stdenv, fetchurl, pkgconfig, zlib, libjpeg, libpng, libtiff, pam, openssl
 , dbus, libusb, acl }:
 
-let version = "1.5.0"; in
-
+let
+  version = "1.5.0";
+in
 stdenv.mkDerivation {
   name = "cups-${version}";
 
@@ -13,7 +14,14 @@ stdenv.mkDerivation {
     sha256 = "0czc0bmrm31jy03inm6w2mbr5s9q9xk6s1x5x4kddx2qlml9pyf6";
   };
 
-  buildInputs = [ pkgconfig zlib libjpeg libpng libtiff pam dbus libusb acl ];
+  # The following code looks strange, but it had to be arranged like
+  # this in order to avoid major rebuilds while testing portability to
+  # non-Linux platforms. This should be cleaned once the expression is
+  # stable.
+  buildInputs = [ pkgconfig zlib libjpeg libpng libtiff ]
+    ++ stdenv.lib.optionals stdenv.isLinux [ pam dbus ]
+    ++ [ libusb ]
+    ++ stdenv.lib.optionals stdenv.isLinux [ acl ] ;
 
   propagatedBuildInputs = [ openssl ];
 
@@ -42,6 +50,6 @@ stdenv.mkDerivation {
     description = "A standards-based printing system for UNIX";
     license = stdenv.lib.licenses.gpl2; # actually LGPL for the library and GPL for the rest
     maintainers = [ stdenv.lib.maintainers.urkud stdenv.lib.maintainers.simons ];
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
   };
 }
diff --git a/pkgs/os-specific/linux/bbswitch/default.nix b/pkgs/os-specific/linux/bbswitch/default.nix
new file mode 100644
index 00000000000..d64701a1d07
--- /dev/null
+++ b/pkgs/os-specific/linux/bbswitch/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchurl, kernel }:
+
+let
+
+  version = "0.4.1";
+  name = "bbswitch-${version}";
+
+in stdenv.mkDerivation {
+  inherit name;
+
+  src = fetchurl {
+    url = "http://github.com/downloads/Bumblebee-Project/bbswitch/${name}.tar.gz";
+    sha256 = "d579c6efc5f6482f0cf0b2c1b1f1a127413218cdffdc8f2d5a946c11909bda23";
+  };
+
+  preBuild = ''
+    kernelVersion=$(cd ${kernel}/lib/modules && ls)
+    substituteInPlace Makefile \
+      --replace "\$(shell uname -r)" "$kernelVersion" \
+      --replace "/lib/modules" "${kernel}/lib/modules"
+  '';
+ 
+  installPhase = ''
+    kernelVersion=$(cd ${kernel}/lib/modules && ls)
+    ensureDir $out/lib/modules/$kernelVersion/misc
+    cp bbswitch.ko $out/lib/modules/$kernelVersion/misc
+
+    ensureDir $out/bin
+    tee $out/bin/discrete_vga_poweroff << EOF
+    #!/bin/sh
+
+    echo -n OFF > /proc/acpi/bbswitch
+    EOF
+    tee $out/bin/discrete_vga_poweron << EOF
+    #!/bin/sh
+
+    echo -n ON > /proc/acpi/bbswitch
+    EOF
+    chmod +x $out/bin/discrete_vga_poweroff $out/bin/discrete_vga_poweron
+  '';
+
+  meta = {
+    platforms = stdenv.lib.platforms.linux;
+    description = "A module for powering off hybrid GPUs";
+  };
+}
diff --git a/pkgs/os-specific/linux/kbd/default.nix b/pkgs/os-specific/linux/kbd/default.nix
index c54ac4c2c73..cc95a6cff16 100644
--- a/pkgs/os-specific/linux/kbd/default.nix
+++ b/pkgs/os-specific/linux/kbd/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   # We get a warning in armv5tel-linux and the fuloong2f,
   # so we disable -Werror in it
   patchPhase = if (stdenv.system == "armv5tel-linux" ||
-    stdenv.system == "mips64-linux")
+    stdenv.system == "mips64el-linux")
     then ''
       sed -i s/-Werror// src/Makefile.am
     '' else "";
diff --git a/pkgs/os-specific/linux/kernel-headers/2.6.28.nix b/pkgs/os-specific/linux/kernel-headers/2.6.28.nix
index 920ccf9363d..fdbe6cf1bce 100644
--- a/pkgs/os-specific/linux/kernel-headers/2.6.28.nix
+++ b/pkgs/os-specific/linux/kernel-headers/2.6.28.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
     if stdenv.system == "x86_64-linux" then "x86_64" else
     if stdenv.system == "powerpc-linux" then "powerpc" else
     if stdenv.system == "armv5tel-linux" then "arm" else
-    if stdenv.system == "mips64-linux" then "mips" else
+    if stdenv.system == "mips64el-linux" then "mips" else
     abort "don't know what the kernel include directory is called for this platform";
 
   buildInputs = [perl];
diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix
index dbfdf86f9c9..223a38da54e 100644
--- a/pkgs/os-specific/linux/kernel/generic.nix
+++ b/pkgs/os-specific/linux/kernel/generic.nix
@@ -46,7 +46,7 @@
 }:
 
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux"
-  || stdenv.system == "armv5tel-linux" || stdenv.system == "mips64-linux";
+  || stdenv.system == "armv5tel-linux" || stdenv.system == "mips64el-linux";
 
 assert stdenv.platform.name == "sheevaplug" -> stdenv.platform.uboot != null;
 
@@ -102,7 +102,7 @@ stdenv.mkDerivation {
     if stdenv.system == "i686-linux" then "i386" else
     if stdenv.system == "x86_64-linux" then "x86_64" else
     if stdenv.system == "armv5tel-linux" then "arm" else
-    if stdenv.system == "mips64-linux" then "mips" else
+    if stdenv.system == "mips64el-linux" then "mips" else
     abort "Platform ${stdenv.system} is not supported.";
 
   crossAttrs = let
diff --git a/pkgs/os-specific/linux/kernel/linux-3.2.nix b/pkgs/os-specific/linux/kernel/linux-3.2.nix
index 1969ad4f5ac..7870f2c0ca5 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.2.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.2.nix
@@ -214,10 +214,10 @@ in
 import ./generic.nix (
 
   rec {
-    version = "3.2";
+    version = "3.2.1";
     testing = false;
 
-    modDirVersion = "3.2.0";
+    modDirVersion = version;
 
     preConfigure = ''
       substituteInPlace scripts/depmod.sh --replace '-b "$INSTALL_MOD_PATH"' ""
@@ -225,7 +225,7 @@ import ./generic.nix (
   
     src = fetchurl {
       url = "mirror://kernel/linux/kernel/v3.0/${if testing then "testing/" else ""}linux-${version}.tar.bz2";
-      sha256 = "0qylk7b6w7x3a47mvzbn3yj47q3x79i49aiq8p5af3fgacmzr0f8";
+      sha256 = "0kplzd61zblbsqzhggwk5lca0diqd8crhrd7d7jd6gc8jcyiwavy";
     };
 
     config = configWithPlatform stdenv.platform;
diff --git a/pkgs/os-specific/linux/pam/default.nix b/pkgs/os-specific/linux/pam/default.nix
index 1782d439c4f..6ac14095103 100644
--- a/pkgs/os-specific/linux/pam/default.nix
+++ b/pkgs/os-specific/linux/pam/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   buildNativeInputs = [ flex ];
   buildInputs = [ cracklib ]
     ++ stdenv.lib.optional
-      (stdenv.system != "armv5tel-linux" && stdenv.system != "mips64-linux")
+      (stdenv.system != "armv5tel-linux" && stdenv.system != "mips64el-linux")
       libxcrypt;
 
   crossAttrs = {
diff --git a/pkgs/servers/sql/mysql55/default.nix b/pkgs/servers/sql/mysql55/default.nix
index 493f86f00f7..f1bc60673cb 100644
--- a/pkgs/servers/sql/mysql55/default.nix
+++ b/pkgs/servers/sql/mysql55/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, cmake, bison, ncurses, openssl, readline, zlib}:
+{stdenv, fetchurl, cmake, bison, ncurses, openssl, readline, zlib, darwinInstallNameToolUtility, perl}:
 
 # Note: zlib is not required; MySQL can use an internal zlib.
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
     sha256 = "03jl60mzrsd1jb8fvkz6c8j2239b37k8n1i07jk1q4yk58aq8ynh";
   };
 
-  buildInputs = [ cmake bison ncurses openssl readline zlib ];
+  buildInputs = [ cmake bison ncurses openssl readline zlib ] ++ stdenv.lib.optionals stdenv.isDarwin [ darwinInstallNameToolUtility perl ];
   
   cmakeFlags = "-DWITH_SSL=yes -DWITH_READLINE=yes -DWITH_EMBEDDED_SERVER=yes -DWITH_ZLIB=yes -DINSTALL_SCRIPTDIR=bin";
   
diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix
index 42e89d43649..296dac46cba 100644
--- a/pkgs/servers/x11/xorg/default.nix
+++ b/pkgs/servers/x11/xorg/default.nix
@@ -68,11 +68,11 @@ let
   })) // {inherit ;};
     
   dri2proto = (stdenv.mkDerivation ((if overrides ? dri2proto then overrides.dri2proto else x: x) {
-    name = "dri2proto-2.3";
+    name = "dri2proto-2.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/dri2proto-2.3.tar.bz2;
-      sha256 = "0xz6nf5rrn1fvply5mq7dd1w89r73mggylp9lpzzwdfvl291h55j";
+      url = mirror://xorg/individual/proto/dri2proto-2.6.tar.bz2;
+      sha256 = "02drlfqvjm2q7dvkkwli3fs2crb6rdb3kyd13vwx7z0rijrc10md";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
diff --git a/pkgs/servers/x11/xorg/tarballs-7.6.list b/pkgs/servers/x11/xorg/tarballs-7.6.list
index c2fe1c77b65..27cd5ca5d82 100644
--- a/pkgs/servers/x11/xorg/tarballs-7.6.list
+++ b/pkgs/servers/x11/xorg/tarballs-7.6.list
@@ -3,7 +3,7 @@ mirror://xorg/X11R7.6/src/everything/bdftopcf-1.0.3.tar.bz2
 mirror://xorg/X11R7.6/src/everything/bigreqsproto-1.1.1.tar.bz2
 mirror://xorg/X11R7.6/src/everything/compositeproto-0.4.2.tar.bz2
 mirror://xorg/X11R7.6/src/everything/damageproto-1.2.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/dri2proto-2.3.tar.bz2
+mirror://xorg/individual/proto/dri2proto-2.6.tar.bz2
 mirror://xorg/individual/proto/dmxproto-2.3.1.tar.bz2
 mirror://xorg/X11R7.6/src/everything/encodings-1.0.4.tar.bz2
 mirror://xorg/X11R7.6/src/everything/fixesproto-4.1.2.tar.bz2
diff --git a/pkgs/servers/xmpp/ejabberd/default.nix b/pkgs/servers/xmpp/ejabberd/default.nix
index 1bccfef75a6..788fe0d6ccb 100644
--- a/pkgs/servers/xmpp/ejabberd/default.nix
+++ b/pkgs/servers/xmpp/ejabberd/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, expat, erlang, zlib, openssl, pam, lib}:
 
 stdenv.mkDerivation rec {
-  version = "2.1.4";
-  name = "ejabberd-2.1.4";
+  version = "2.1.10";
+  name = "ejabberd-2.1.10";
   src = fetchurl {
-    url = http://www.process-one.net/downloads/ejabberd/2.1.4/ejabberd-2.1.4.tar.gz;
-    sha256 = "205ee09e38c57527cfa1a4be6ca664cec2e8c6b40eeffaac008735fcdc5e7527";
+    url = http://www.process-one.net/downloads/ejabberd/2.1.10/ejabberd-2.1.10.tar.gz;
+    sha256 = "1gijv6d90w9fq0as2l0mp0fn65jihgd86nxry98pv6liks4fbhlx";
   };
   buildInputs = [ expat erlang zlib openssl pam ];
   patchPhase = ''
diff --git a/pkgs/stdenv/default.nix b/pkgs/stdenv/default.nix
index 11af6d371cd..03f14d6d57b 100644
--- a/pkgs/stdenv/default.nix
+++ b/pkgs/stdenv/default.nix
@@ -55,7 +55,7 @@ rec {
     if stdenvType == "i686-linux" then stdenvLinux else
     if stdenvType == "x86_64-linux" then stdenvLinux else
     if stdenvType == "armv5tel-linux" then stdenvLinux else
-    if stdenvType == "mips64-linux" then stdenvLinux else
+    if stdenvType == "mips64el-linux" then stdenvLinux else
     if stdenvType == "powerpc-linux" then /* stdenvLinux */ stdenvNative else
     if stdenvType == "i686-mingw" then stdenvMinGW else
     if stdenvType == "i686-darwin" then stdenvNix else
diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix
index a20ebda4bad..f2abf294de1 100644
--- a/pkgs/stdenv/generic/default.nix
+++ b/pkgs/stdenv/generic/default.nix
@@ -93,7 +93,7 @@ let
                || result.system == "x86_64-linux"
                || result.system == "powerpc-linux"
                || result.system == "armv5tel-linux"
-               || result.system == "mips64-linux";
+               || result.system == "mips64el-linux";
         isSunOS = result.system == "i686-solaris"
                || result.system == "x86_64-solaris";
         isCygwin = result.system == "i686-cygwin";
@@ -117,7 +117,7 @@ let
         is64bit = result.system == "x86_64-linux"
                 || result.system == "x86_64-darwin";
         isMips = result.system == "mips-linux"
-                || result.system == "mips64-linux";
+                || result.system == "mips64el-linux";
         isArm = result.system == "armv5tel-linux";
 
         # Utility function: allow stdenv to be easily regenerated with
diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix
index 4a63d0bf95a..8b6599e6bc0 100644
--- a/pkgs/stdenv/linux/default.nix
+++ b/pkgs/stdenv/linux/default.nix
@@ -16,7 +16,7 @@ rec {
     else if system == "x86_64-linux" then import ./bootstrap/x86_64
     else if system == "powerpc-linux" then import ./bootstrap/powerpc
     else if system == "armv5tel-linux" then import ./bootstrap/armv5tel
-    else if system == "mips64-linux" then import ./bootstrap/loongson2f
+    else if system == "mips64el-linux" then import ./bootstrap/loongson2f
     else abort "unsupported platform for the pure Linux stdenv";
 
 
@@ -25,7 +25,7 @@ rec {
       export NIX_ENFORCE_PURITY=1
       havePatchELF=1
       ${if system == "x86_64-linux" then "NIX_LIB64_IN_SELF_RPATH=1" else ""}
-      ${if system == "mips64-linux" then "NIX_LIB32_IN_SELF_RPATH=1" else ""}
+      ${if system == "mips64el-linux" then "NIX_LIB32_IN_SELF_RPATH=1" else ""}
     '';
 
 
diff --git a/pkgs/tools/package-management/disnix/default.nix b/pkgs/tools/package-management/disnix/default.nix
index 815ec864626..13534b7dbd4 100644
--- a/pkgs/tools/package-management/disnix/default.nix
+++ b/pkgs/tools/package-management/disnix/default.nix
@@ -1,16 +1,16 @@
 { stdenv, fetchurl, pkgconfig, dbus_glib, libxml2, libxslt, getopt, nixUnstable, gettext, libiconv }:
 
 stdenv.mkDerivation {
-  name = "disnix-0.3pre29816";
+  name = "disnix-0.3pre30527";
   
   src = fetchurl {
-    url = http://hydra.nixos.org/build/1453079/download/4/disnix-0.3pre29816.tar.gz;
-    sha256 = "13gi0zs0a8pvgmgh3h431ydran3qf3px5m3d6vddd9b225kbkgwz";
+    url = http://hydra.nixos.org/build/1926928/download/4/disnix-0.3pre30527.tar.gz;
+    sha256 = "1mdcxyrz60nxcyn116i41nhh94r9hacvyilkjyjfiyf8d58pji1y";
   };
   
   buildInputs = [ pkgconfig dbus_glib libxml2 libxslt getopt nixUnstable ]
                 ++ stdenv.lib.optional (!stdenv.isLinux) libiconv
-		++ stdenv.lib.optional (!stdenv.isLinux) gettext;
+                ++ stdenv.lib.optional (!stdenv.isLinux) gettext;
                 
   dontStrip = true;
   
diff --git a/pkgs/tools/package-management/disnix/disnixos/default.nix b/pkgs/tools/package-management/disnix/disnixos/default.nix
index 843304d9673..f9c9aa8c593 100644
--- a/pkgs/tools/package-management/disnix/disnixos/default.nix
+++ b/pkgs/tools/package-management/disnix/disnixos/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, disnix, socat, pkgconfig }:
 
 stdenv.mkDerivation {
-  name = "disnixos-0.2pre29928";
+  name = "disnixos-0.2pre31830";
   
   src = fetchurl {
-    url = http://hydra.nixos.org/build/1464065/download/3/disnixos-0.2pre29928.tar.gz;
-    sha256 = "0l7kszbpi8lzq95khi45fbq71l5csf8kamds4va6bxsyfwxrx6sm";
+    url = http://hydra.nixos.org/build/1934498/download/3/disnixos-0.2pre31830.tar.gz;
+    sha256 = "02f2b4lk1gr24rqs56az82b3h3mnqrk1m48bcj21x109g4vrlpmm";
   };
   
   buildInputs = [ socat pkgconfig disnix ];
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 8ae536ed2be..ac1f4daf6ba 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -204,15 +204,20 @@ let
 
   stdenv =
     if bootStdenv != null then (bootStdenv // {inherit platform;}) else
-      let changer = getConfig ["replaceStdenv"] null;
-      in if changer != null then
-        changer {
-          stdenv = stdenvCross;
-          overrideSetup = overrideSetup;
-        }
-      else if crossSystem != null then
+      if crossSystem != null then
         stdenvCross
       else
+        let
+            changer = getConfig ["replaceStdenv"] null;
+        in if changer != null then
+          changer {
+            # We import again all-packages to avoid recursivities.
+            pkgs = import ./all-packages.nix {
+              # We remove packageOverrides to avoid recursivities
+              config = removeAttrs config [ "replaceStdenv" ];
+            };
+          }
+      else
         defaultStdenv;
 
   forceBuildDrv = drv : if (crossSystem == null) then drv else
@@ -2827,6 +2832,8 @@ let
     gcj = gcj.gcc; # use the raw GCJ, which has ${gcj}/lib/jvm
   };
 
+  astyle = callPackage ../development/tools/misc/astyle { };
+
   autobuild = callPackage ../development/tools/misc/autobuild { };
 
   autoconf = callPackage ../development/tools/misc/autoconf { };
@@ -2891,6 +2898,24 @@ let
 
   ccache = callPackage ../development/tools/misc/ccache { };
 
+  # Wrapper that works as gcc or g++
+  # It can be used by setting in nixpkgs config like this, for example:
+  #    replaceStdenv = { pkgs }: pkgs.ccacheStdenv;
+  # But if you build in chroot, you should have that path in chroot
+  # If instantiated directly, it will use the HOME/.ccache as cache directory.
+  # You can use an override in packageOverrides to set extraConfig:
+  #    packageOverrides = pkgs: {
+  #     ccacheWrapper = pkgs.ccacheWrapper.override {
+  #       extraConfig = ''
+  #         CCACHE_COMPRESS=1
+  #         CCACHE_DIR=/bin/.ccache
+  #       '';
+  #     };
+  #
+  ccacheWrapper = makeOverridable ({ extraConfig ? "" }:
+     wrapGCC (ccache.links extraConfig)) {};
+  ccacheStdenv = overrideGCC stdenv ccacheWrapper;
+
   complexity = callPackage ../development/tools/misc/complexity { };
 
   ctags = callPackage ../development/tools/misc/ctags { };
@@ -4998,9 +5023,7 @@ let
   dovecot_1_1_1 = callPackage ../servers/mail/dovecot/1.1.1.nix { };
   dovecot_2_0 = callPackage ../servers/mail/dovecot/2.0.nix { };
 
-  ejabberd = callPackage ../servers/xmpp/ejabberd {
-    erlang = erlangR13B ;
-  };
+  ejabberd = callPackage ../servers/xmpp/ejabberd { };
 
   couchdb = callPackage ../servers/http/couchdb {
     spidermonkey = spidermonkey_185;
@@ -5772,6 +5795,8 @@ let
 
     acpi_call = callPackage ../os-specific/linux/acpi-call {};
 
+    bbswitch = callPackage ../os-specific/linux/bbswitch {};
+
     ati_drivers_x11 = callPackage ../os-specific/linux/ati-drivers { };
 
     aufs =
@@ -6614,12 +6639,17 @@ let
     librsvg = null /* if stdenv.isDarwin then null else librsvg */;
   };
 
-  emacsSnapshot = lowPrio (callPackage ../applications/editors/emacs-snapshot {
-    xawSupport = getConfig [ "emacs" "xawSupport" ] false;
-    xaw3dSupport = getConfig [ "emacs" "xaw3dSupport" ] false;
-    gtkGUI = getConfig [ "emacs" "gtkSupport" ] true;
-    xftSupport = getConfig [ "emacs" "xftSupport" ] true;
-    dbusSupport = getConfig [ "emacs" "dbusSupport" ] true;
+  emacs24 = lowPrio (callPackage ../applications/editors/emacs-24 {
+    # use override to select the appropriate gui toolkit
+    libXaw = if stdenv.isDarwin then xlibs.libXaw else null;
+    Xaw3d = null;
+    gtk = if stdenv.isDarwin then null else gtkLibs.gtk;
+    # TODO: these packages don't build on Darwin.
+    gconf = null /* if stdenv.isDarwin then null else gnome.GConf */;
+    librsvg = if stdenv.isDarwin then null else librsvg;
+    # alsa only on linux
+    alsaLib = if stdenv.isLinux then alsaLib else null;
+    imagemagick = imagemagickBig;
   });
 
   emacsPackages = emacs: self: let callPackage = newScope self; in rec {
@@ -6657,6 +6687,8 @@ let
 
     maudeMode = callPackage ../applications/editors/emacs-modes/maude { };
 
+    notmuch = callPackage ../applications/networking/mailreaders/notmuch { };
+
     nxml = callPackage ../applications/editors/emacs-modes/nxml { };
 
     # This is usually a newer version of Org-Mode than that found in GNU Emacs, so
@@ -6667,7 +6699,11 @@ let
 
     prologMode = callPackage ../applications/editors/emacs-modes/prolog { };
 
-    proofgeneral = callPackage ../applications/editors/emacs-modes/proofgeneral { };
+    proofgeneral = callPackage ../applications/editors/emacs-modes/proofgeneral {
+      texLive = pkgs.texLiveAggregationFun {
+                  paths = [ pkgs.texLive pkgs.texLiveCMSuper ];
+                };
+    };
 
     quack = callPackage ../applications/editors/emacs-modes/quack { };
 
@@ -6680,6 +6716,7 @@ let
 
   emacs22Packages = emacsPackages emacs22 pkgs.emacs22Packages;
   emacs23Packages = recurseIntoAttrs (emacsPackages emacs23 pkgs.emacs23Packages);
+  emacs24Packages = recurseIntoAttrs (emacsPackages emacs24 pkgs.emacs24Packages);
 
   epdfview = callPackage ../applications/misc/epdfview { };
 
@@ -7029,6 +7066,8 @@ let
 
   jwm = callPackage ../applications/window-managers/jwm { };
 
+  k3d = callPackage ../applications/graphics/k3d {};
+
   keepnote = callPackage ../applications/office/keepnote {
     pygtk = pyGtkGlade;
   };
@@ -7059,13 +7098,18 @@ let
 
   librecad = callPackage ../applications/misc/librecad { };
 
+  libreoffice = callPackage ../applications/office/openoffice/libreoffice.nix {
+    inherit (perlPackages) ArchiveZip CompressZlib;
+    inherit (gnome) GConf ORBit2;
+  };
+
   lingot = callPackage ../applications/audio/lingot {
     inherit (gnome) libglade;
   };
 
   links = callPackage ../applications/networking/browsers/links { };
 
-  ledger = callPackage ../applications/office/ledger { };
+  ledger = callPackage ../applications/office/ledger/2.6.3.nix { };
   ledger3 = callPackage ../applications/office/ledger/3.0.nix { };
 
   links2 = (builderDefsPackage ../applications/networking/browsers/links2) {
@@ -7100,14 +7144,12 @@ let
   };
 
   mercurial = callPackage ../applications/version-management/mercurial {
-    guiSupport = getConfig ["mercurial" "guiSupport"] false; # for hgk (gitk gui for hg)
     inherit (pythonPackages) ssl curses;
-    # when used with hg-fast-export (git) mercurials files are using
-    # httplib.FakeSocket which is not provided after python 2.6.  (httplib2
-    # has removed it from its interface).
-    python = python27;
+    guiSupport = false;		# use mercurialFull to get hgk GUI
   };
 
+  mercurialFull = appendToName "full" (pkgs.mercurial.override { guiSupport = true; });
+
   merkaartor = callPackage ../applications/misc/merkaartor { };
 
   meshlab = callPackage ../applications/graphics/meshlab {
@@ -7215,7 +7257,10 @@ let
   netsurfBrowser = netsurf.browser;
   netsurf = recurseIntoAttrs (import ../applications/networking/browsers/netsurf { inherit pkgs; });
 
-  notmuch = callPackage ../applications/networking/mailreaders/notmuch { };
+  notmuch = callPackage ../applications/networking/mailreaders/notmuch {
+      # use emacsPackages.notmuch if you want emacs support
+      emacs = null;
+  };
 
   nova = callPackage ../applications/virtualization/nova { };
 
@@ -7587,9 +7632,7 @@ let
     inherit (xlibs) libX11;
   };
 
-  vlc = callPackage ../applications/video/vlc {
-    lua = lua5;
-  };
+  vlc = callPackage ../applications/video/vlc { };
 
   vnstat = callPackage ../applications/networking/vnstat { };
 
@@ -8160,7 +8203,9 @@ let
 
       polkit_kde_agent = callPackage ../tools/security/polkit-kde-agent { };
 
-      psi = callPackage ../applications/networking/instant-messengers/psi { };
+      psi = callPackage ../applications/networking/instant-messengers/psi {
+        inherit (gtkLibs) glib;
+      };
 
       quassel = callPackage ../applications/networking/irc/quassel { };
 
@@ -8185,6 +8230,8 @@ let
       yakuake = callPackage ../applications/misc/yakuake { };
 
       zanshin = callPackage ../applications/office/zanshin { };
+
+      kwooty = callPackage ../applications/networking/newsreaders/kwooty { };
     };
 
   redshift = callPackage ../applications/misc/redshift {
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 87448499a42..15cb3336262 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -154,7 +154,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
     zlib         = self.zlib_0_5_3_1; # 7.2 ok, 7.3 ok
     HTTP         = self.HTTP_4000_2_2; # 7.2 ok, 7.3 ok
     deepseq      = self.deepseq_1_1_0_2; # 7.2 ok, 7.3 ok
-    text         = self.text_0_11_1_12; # 7.2 ok, 7.3 ok
+    text         = self.text_0_11_1_13; # 7.2 ok, 7.3 ok
     transformers = self.transformers_0_2_2_0; # 7.2 ok, 7.3 ok
     mtl          = self.mtl_2_0_1_0; # 7.2 ok, 7.3 ok
     random       = self.random_1_0_1_1; # 7.2 ok, 7.3 ok
@@ -625,6 +625,10 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   downloadCurl = callPackage ../development/libraries/haskell/download-curl { tagsoup = self.tagsoup_0_10_1; };
 
+  DSH = callPackage ../development/libraries/haskell/DSH {
+    json = self.json_0_5;
+  };
+
   dstring = callPackage ../development/libraries/haskell/dstring {};
 
   editline = callPackage ../development/libraries/haskell/editline {};
@@ -650,6 +654,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   fclabels = callPackage ../development/libraries/haskell/fclabels {};
 
+  FerryCore = callPackage ../development/libraries/haskell/FerryCore {};
+
   funcmp = callPackage ../development/libraries/haskell/funcmp {};
 
   feed = callPackage ../development/libraries/haskell/feed {};
@@ -677,7 +683,9 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   ghcEvents = callPackage ../development/libraries/haskell/ghc-events {};
 
-  ghcMod = callPackage ../development/libraries/haskell/ghc-mod {};
+  ghcMod = callPackage ../development/libraries/haskell/ghc-mod {
+    emacsPackages = pkgs.emacs23Packages;
+  };
 
   ghcMtl = callPackage ../development/libraries/haskell/ghc-mtl {};
 
@@ -842,6 +850,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   HsSyck = callPackage ../development/libraries/haskell/HsSyck {};
 
+  HsOpenSSL = callPackage ../development/libraries/haskell/HsOpenSSL {};
+
   HStringTemplate = callPackage ../development/libraries/haskell/HStringTemplate {};
 
   hspread = callPackage ../development/libraries/haskell/hspread {};
@@ -904,7 +914,9 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   jsonTypes = callPackage ../development/libraries/haskell/jsonTypes {};
 
-  languageJavascript = callPackage ../development/libraries/haskell/language-javascript {};
+  languageJavascript = callPackage ../development/libraries/haskell/language-javascript {
+    alex = self.alex_3_0_1;
+  };
 
   languageHaskellExtract = callPackage ../development/libraries/haskell/language-haskell-extract {};
 
@@ -981,7 +993,9 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   murmurHash = callPackage ../development/libraries/haskell/murmur-hash {};
 
-  mwcRandom = callPackage ../development/libraries/haskell/mwc-random {};
+  mwcRandom_0_10_0_1 = callPackage ../development/libraries/haskell/mwc-random/0.10.0.1.nix {};
+  mwcRandom_0_11_0_0 = callPackage ../development/libraries/haskell/mwc-random/0.11.0.0.nix {};
+  mwcRandom = self.mwcRandom_0_11_0_0;
 
   NanoProlog = callPackage ../development/libraries/haskell/NanoProlog {};
 
@@ -1048,6 +1062,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   parsimony = callPackage ../development/libraries/haskell/parsimony {};
 
+  Pathfinder = callPackage ../development/libraries/haskell/Pathfinder {};
+
   pathtype = callPackage ../development/libraries/haskell/pathtype {};
 
   pcreLight = callPackage ../development/libraries/haskell/pcre-light {};
@@ -1062,6 +1078,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   pool = callPackage ../development/libraries/haskell/pool {};
 
+  poolConduit = callPackage ../development/libraries/haskell/pool-conduit {};
+
   ppm = callPackage ../development/libraries/haskell/ppm {};
 
   prettyShow = callPackage ../development/libraries/haskell/pretty-show {};
@@ -1162,6 +1180,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   repr = callPackage ../development/libraries/haskell/repr {};
 
+  resourcePool = callPackage ../development/libraries/haskell/resource-pool {};
+
   RSA = callPackage ../development/libraries/haskell/RSA {};
 
   safe = callPackage ../development/libraries/haskell/safe {};
@@ -1176,7 +1196,9 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   smallcheck = callPackage ../development/libraries/haskell/smallcheck {};
 
-  snapCore = callPackage ../development/libraries/haskell/snap/core.nix {};
+  snapCore = callPackage ../development/libraries/haskell/snap/core.nix {
+    mwcRandom = self.mwcRandom_0_10_0_1;
+  };
 
   snapServer = callPackage ../development/libraries/haskell/snap/server.nix {};
 
@@ -1256,6 +1278,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   systemFileio = callPackage ../development/libraries/haskell/system-fileio {};
 
+  TableAlgebra = callPackage ../development/libraries/haskell/TableAlgebra {};
+
   tabular = callPackage ../development/libraries/haskell/tabular {};
 
   tagged = callPackage ../development/libraries/haskell/tagged {};
@@ -1287,8 +1311,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   text_0_11_0_5 = callPackage ../development/libraries/haskell/text/0.11.0.5.nix {};
   text_0_11_0_6 = callPackage ../development/libraries/haskell/text/0.11.0.6.nix {};
   text_0_11_1_5 = callPackage ../development/libraries/haskell/text/0.11.1.5.nix {};
-  text_0_11_1_12 = callPackage ../development/libraries/haskell/text/0.11.1.12.nix {};
-  text = self.text_0_11_1_12;
+  text_0_11_1_13 = callPackage ../development/libraries/haskell/text/0.11.1.13.nix {};
+  text = self.text_0_11_1_13;
 
   thespian = callPackage ../development/libraries/haskell/thespian {};
 
@@ -1493,7 +1517,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   alex_2_3_3 = callPackage ../development/tools/parsing/alex/2.3.3.nix {};
   alex_2_3_5 = callPackage ../development/tools/parsing/alex/2.3.5.nix {};
   alex_3_0_1 = callPackage ../development/tools/parsing/alex/3.0.1.nix {};
-  alex = self.alex_2_3_1;
+  alex = self.alex_3_0_1;
 
   alexMeta = callPackage ../development/tools/haskell/alex-meta {};
 
@@ -1503,6 +1527,10 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   cpphs = callPackage ../development/tools/misc/cpphs {};
 
+  ebnf2ps = callPackage ../development/tools/parsing/ebnf2ps {
+    inherit (pkgs) fetchurl;
+  };
+
   frown = callPackage ../development/tools/parsing/frown {};
 
   haddock_2_4_2 = callPackage ../development/tools/documentation/haddock/2.4.2.nix {};
diff --git a/pkgs/top-level/platforms.nix b/pkgs/top-level/platforms.nix
index 730629731f3..43fcdea62d0 100644
--- a/pkgs/top-level/platforms.nix
+++ b/pkgs/top-level/platforms.nix
@@ -230,6 +230,15 @@ rec {
 
         # Needed for udev >= 150
         SYSFS_DEPRECATED_V2 n
+
+        VGA_CONSOLE n
+        VT_HW_CONSOLE_BINDING y
+        SERIAL_8250_CONSOLE y
+        FRAMEBUFFER_CONSOLE y
+        EXT2_FS y
+        EXT3_FS y
+        REISERFS_FS y
+        MAGIC_SYSRQ y
       '';
     kernelTarget = "vmlinux";
     uboot = null;