diff --git a/pkgs/applications/editors/gobby/default.nix b/pkgs/applications/editors/gobby/default.nix
index ea86f9caf528..badd18b8915b 100644
--- a/pkgs/applications/editors/gobby/default.nix
+++ b/pkgs/applications/editors/gobby/default.nix
@@ -2,7 +2,7 @@
 , gnomeSupport ? false # build support for Gnome(gnome-vfs)
 , stdenv, fetchurl, pkgconfig
 , gtkmm, gsasl, gtksourceview, libxmlxx, libinfinity, intltool
-, gnomevfs ? null}:
+, gnome_vfs ? null}:
 
 let
   libinf = libinfinity.override { gtkWidgets = true; inherit avahiSupport; };
@@ -16,7 +16,7 @@ in stdenv.mkDerivation rec {
   };
 
   buildInputs = [ pkgconfig gtkmm gsasl gtksourceview libxmlxx libinf intltool ]
-    ++ stdenv.lib.optional gnomeSupport gnomevfs;
+    ++ stdenv.lib.optional gnomeSupport gnome_vfs;
   
   configureFlags = ''
   '';
@@ -28,4 +28,4 @@ in stdenv.mkDerivation rec {
     maintainers = [ maintainers.phreedom ];
     platforms = platforms.all;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/editors/kile/2.0.nix b/pkgs/applications/editors/kile/2.0.nix
deleted file mode 100644
index 704b8e1b8249..000000000000
--- a/pkgs/applications/editors/kile/2.0.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{stdenv, fetchurl, perl, arts, qt, kdelibs,
- libX11, libXt, libXext, libXrender, libXft,
- zlib, libpng, libjpeg, freetype, expat }:
-
-stdenv.mkDerivation {
-  name = "kile-2.0.3";
-
-  src = fetchurl {
-    url = mirror://sourceforge/kile/kile-2.0.3.tar.bz2;
-    md5 = "f0296547d3e916dd385e0b8913918852";
-  };
-
-  buildInputs = [ perl arts qt kdelibs libX11 libXt libXext libXrender libXft
-                  zlib libpng libjpeg freetype expat ];
-
-  meta = {
-    description = "An integrated LaTeX editor for KDE";
-    homepage = http://kile.sourceforge.net;
-    license = "GPLv2";
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/applications/editors/kile/2.1.nix b/pkgs/applications/editors/kile/default.nix
similarity index 100%
rename from pkgs/applications/editors/kile/2.1.nix
rename to pkgs/applications/editors/kile/default.nix
diff --git a/pkgs/applications/editors/monodevelop/default.nix b/pkgs/applications/editors/monodevelop/default.nix
index 23dab206e188..e4dc00ff0a13 100644
--- a/pkgs/applications/editors/monodevelop/default.nix
+++ b/pkgs/applications/editors/monodevelop/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, file, mono, gtksharp, gtksourceviewsharp
 , gtkmozembedsharp, monodoc
 , perl, perlXMLParser, pkgconfig
-, glib, gtk, GConf, gnomevfs, libbonobo, libglade, libgnome
+, glib, gtk, GConf, gnome_vfs, libbonobo, libglade, libgnome
 , mozilla
 }:
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
   
   buildInputs = [
     file mono gtksharp gtksourceviewsharp perl perlXMLParser pkgconfig
-    glib gtk GConf gnomevfs libbonobo libglade libgnome
+    glib gtk GConf gnome_vfs libbonobo libglade libgnome
     gtkmozembedsharp monodoc
   ];
   
diff --git a/pkgs/applications/networking/browsers/conkeror/default.nix b/pkgs/applications/networking/browsers/conkeror/default.nix
index e9c1c926ba43..08196780143c 100644
--- a/pkgs/applications/networking/browsers/conkeror/default.nix
+++ b/pkgs/applications/networking/browsers/conkeror/default.nix
@@ -1,14 +1,23 @@
-{ stdenv, fetchurl, unzip }:
+{ stdenv, fetchurl, unzip, xulrunner, makeWrapper }:
+
 stdenv.mkDerivation {
   name = "conkeror-1.0pre-20110917";
+  
   src = fetchurl {
     url = http://repo.or.cz/w/conkeror.git/snapshot/9d1f522674379874e502545babe0c843f78fa43c.zip;
     sha256 = "1ga3d9rc3xfaxvjnhnar752q9ga897q9fck0864i7rh0w7xbrhx2";
   };
-  buildInputs = [ unzip ];
-  installPhase = ''
-    cp -v -r . $out
+  
+  buildInputs = [ unzip makeWrapper ];
+  
+  buildCommand = ''
+    mkdir -p $out/libexec/conkeror
+    unzip $src -d $out/libexec
+
+    makeWrapper ${xulrunner}/bin/xulrunner $out/bin/conkeror \
+      --add-flags $out/libexec/conkeror/application.ini
   '';
+
   meta = {
     description = "A keyboard-oriented, customizable, extensible web browser";
     longDescription = ''
diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix
index 24e1e8273637..0784b79d8bd7 100644
--- a/pkgs/applications/networking/browsers/firefox/wrapper.nix
+++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix
@@ -1,7 +1,5 @@
 { stdenv, browser, makeDesktopItem, makeWrapper, plugins
-, browserName ? "firefox"
-, desktopName ? "Firefox"
-, nameSuffix ? ""
+, browserName, desktopName, nameSuffix, icon
 }:
 
 stdenv.mkDerivation {
@@ -10,7 +8,7 @@ stdenv.mkDerivation {
   desktopItem = makeDesktopItem {
     name = browserName;
     exec = browserName;
-    icon = "${browser}/lib/${browser.name}/icons/mozicon128.png";
+    icon = icon;
     comment = "";
     desktopName = desktopName;
     genericName = "Web Browser";
diff --git a/pkgs/applications/networking/browsers/icecat-3/default.nix b/pkgs/applications/networking/browsers/icecat-3/default.nix
index a63584fda289..99f135c6d7b4 100644
--- a/pkgs/applications/networking/browsers/icecat-3/default.nix
+++ b/pkgs/applications/networking/browsers/icecat-3/default.nix
@@ -1,6 +1,6 @@
 { fetchurl, stdenv, xz, pkgconfig, gtk, pango, perl, python, ply, zip, libIDL
 , libjpeg, libpng, zlib, cairo, dbus, dbus_glib, bzip2, xlibs, alsaLib
-, libnotify, gnomevfs, libgnomeui
+, libnotify, gnome_vfs, libgnomeui
 , freetype, fontconfig, wirelesstools ? null, pixman
 , application ? "browser" }:
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   };
 
   buildInputs =
-    [ xz libgnomeui libnotify gnomevfs alsaLib
+    [ xz libgnomeui libnotify gnome_vfs alsaLib
       pkgconfig gtk perl zip libIDL libjpeg libpng zlib cairo bzip2 pixman
       python ply dbus dbus_glib pango freetype fontconfig
       xlibs.libXi xlibs.libX11 xlibs.libXrender xlibs.libXft xlibs.libXt
diff --git a/pkgs/applications/networking/browsers/icecat-4/default.nix b/pkgs/applications/networking/browsers/icecat-4/default.nix
index 5d6f5c3acb0d..9de1b4525a94 100644
--- a/pkgs/applications/networking/browsers/icecat-4/default.nix
+++ b/pkgs/applications/networking/browsers/icecat-4/default.nix
@@ -1,6 +1,6 @@
 { fetchurl, stdenv, xz, pkgconfig, gtk, pango, perl, python, ply, zip, libIDL
 , libjpeg, libpng, zlib, cairo, dbus, dbus_glib, bzip2, xlibs, alsaLib
-, libnotify, gnomevfs, libgnomeui
+, libnotify, gnome_vfs, libgnomeui
 , freetype, fontconfig, wirelesstools ? null, pixman
 , application ? "browser" }:
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   };
 
   buildInputs =
-    [ xz libgnomeui libnotify gnomevfs alsaLib
+    [ xz libgnomeui libnotify gnome_vfs alsaLib
       pkgconfig gtk perl zip libIDL libjpeg libpng zlib cairo bzip2 pixman
       python ply dbus dbus_glib pango freetype fontconfig
       xlibs.libXi xlibs.libX11 xlibs.libXrender xlibs.libXft xlibs.libXt
diff --git a/pkgs/applications/networking/irc/chatzilla/default.nix b/pkgs/applications/networking/irc/chatzilla/default.nix
index a0197a99a509..8ce73c69f3df 100644
--- a/pkgs/applications/networking/irc/chatzilla/default.nix
+++ b/pkgs/applications/networking/irc/chatzilla/default.nix
@@ -1,19 +1,22 @@
-{ stdenv, fetchurl, unzip }:
+{ stdenv, fetchurl, unzip, xulrunner, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "chatzilla-0.9.86.1";
+  name = "chatzilla-0.9.87";
   
   src = fetchurl {
     # Obtained from http://chatzilla.rdmsoft.com/xulrunner/.
-    url = http://chatzilla.rdmsoft.com/xulrunner/download/chatzilla-0.9.86.1-xr.zip;
-    sha256 = "06s4g0x7hsckd7wr904j8rzksvqhvcrhl9zwga2458rgafcbbghd";
+    url = http://chatzilla.rdmsoft.com/xulrunner/download/chatzilla-0.9.87-xr.zip;
+    sha256 = "1qwbqngrxyip3k2b71adg271sifvrrxcixkyrsy4vmgl5bwdsl4d";
   };
 
-  buildInputs = [ unzip ];
+  buildInputs = [ unzip makeWrapper ];
 
   buildCommand = ''
-    ensureDir $out
-    unzip $src -d $out
+    mkdir -p $out/libexec/chatzilla
+    unzip $src -d $out/libexec/chatzilla
+
+    makeWrapper ${xulrunner}/bin/xulrunner $out/bin/chatzilla \
+      --add-flags $out/libexec/chatzilla/application.ini
   '';
 
   meta = {
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/2.x.nix b/pkgs/applications/networking/mailreaders/thunderbird/2.x.nix
deleted file mode 100644
index 3604470cb0d0..000000000000
--- a/pkgs/applications/networking/mailreaders/thunderbird/2.x.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, gtk, perl, zip, libIDL, libXi
-, libjpeg, libpng, zlib, cairo
-
-, # If you want the resulting program to call itself "Thunderbird"
-  # instead of "Mail", enable this option.  However, those
-  # binaries may not be distributed without permission from the
-  # Mozilla Foundation, see
-  # http://www.mozilla.org/foundation/trademarks/.
-  enableOfficialBranding ? false
-    
-}:
-
-stdenv.mkDerivation {
-  name = "thunderbird-2.0.0.22";
-
-  builder = ./builder.sh;
-  
-  src = fetchurl {
-    url = ftp://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/2.0.0.22/source/thunderbird-2.0.0.22-source.tar.bz2;
-    sha1 = "a9da470ff090dfd049cae6b0c3b1a4e95c3f2022";
-  };
-
-  buildInputs = [
-    pkgconfig gtk perl zip libIDL libXi libjpeg libpng zlib cairo
-  ];
-
-  patches = [
-    # Ugh, inexplicable problem since GTK+ 2.10.  Probably a Firefox
-    # bug, but I don't know.  See
-    # http://lists.gobolinux.org/pipermail/gobolinux-users/2007-January/004344.html
-    ./xlibs.patch
-  ];
-
-  configureFlags = [
-    "--enable-application=mail"
-    "--enable-optimize"
-    "--disable-debug"
-    "--enable-xft"
-    "--disable-freetype2"
-    "--enable-svg"
-    "--enable-canvas"
-    "--enable-strip"
-    "--enable-default-toolkit=gtk2"
-    "--with-system-jpeg"
-    "--with-system-png"
-    "--with-system-zlib"
-    "--enable-system-cairo"
-    "--enable-extensions=default"
-  ]
-  ++ (if enableOfficialBranding then ["--enable-official-branding"] else []);
-
-  meta = {
-    description = "Mozilla Thunderbird, a full-featured email client";
-  };
-}
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/3.x.nix b/pkgs/applications/networking/mailreaders/thunderbird/3.x.nix
deleted file mode 100644
index cc21a5b04006..000000000000
--- a/pkgs/applications/networking/mailreaders/thunderbird/3.x.nix
+++ /dev/null
@@ -1,71 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, gtk, perl, python, zip, libIDL
-, dbus_glib, bzip2, alsaLib, nspr
-, libnotify, cairo, pixman, fontconfig
-
-, # If you want the resulting program to call itself "Thunderbird"
-  # instead of "Shredder", enable this option.  However, those
-  # binaries may not be distributed without permission from the
-  # Mozilla Foundation, see
-  # http://www.mozilla.org/foundation/trademarks/.
-  enableOfficialBranding ? false
-    
-}:
-
-let version = "3.1.9"; in
-
-stdenv.mkDerivation {
-  name = "thunderbird-${version}";
-
-  src = fetchurl {
-    url = "http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.bz2";
-    sha1 = "22b153102939430180ae1873ce15ef52286ff08d";
-  };
-
-  buildInputs =
-    [ pkgconfig perl python zip bzip2 gtk dbus_glib alsaLib libIDL nspr libnotify
-      libnotify cairo pixman fontconfig
-    ];
-
-  NIX_LDFLAGS = "-lpixman-1";
-
-  configureFlags =
-    [ "--enable-application=mail"
-      "--enable-optimize"
-      "--disable-debug"
-      "--enable-strip"
-      "--with-system-jpeg"
-      "--with-system-zlib"
-      "--with-system-bz2"
-      "--with-system-nspr"
-      "--enable-system-cairo"
-      "--disable-crashreporter"
-      "--disable-necko-wifi"
-      "--disable-tests"
-      "--enable-static" # required by `make install'
-    ]
-    ++ stdenv.lib.optional enableOfficialBranding "--enable-official-branding";
-
-  # The Thunderbird Makefiles refer to the variables LIBXUL_DIST,
-  # prefix, and PREFIX in some places where they are not set.  In
-  # particular, there are some linker flags like
-  # `-rpath-link=$(LIBXUL_DIST)/bin'.  Since this expands to
-  # `-rpath-link=/bin', the build fails due to the purity checks in
-  # the ld wrapper.  So disable the purity check for now.
-  preBuild = "NIX_ENFORCE_PURITY=0";
-
-  # This doesn't work:
-  #makeFlags = "LIBXUL_DIST=$(out) prefix=$(out) PREFIX=$(out)";
-    
-  postInstall =
-    ''
-      # Fix some references to /bin paths in the Xulrunner shell script.
-      substituteInPlace $out/lib/thunderbird-*/thunderbird \
-          --replace /bin/pwd "$(type -tP pwd)" \
-          --replace /bin/ls "$(type -tP ls)"
-    '';
-
-  meta = {
-    description = "Mozilla Thunderbird, a full-featured email client";
-    homepage = http://www.mozilla.org/thunderbird/;
-  };
-}
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/5.x.nix b/pkgs/applications/networking/mailreaders/thunderbird/7.x.nix
similarity index 82%
rename from pkgs/applications/networking/mailreaders/thunderbird/5.x.nix
rename to pkgs/applications/networking/mailreaders/thunderbird/7.x.nix
index a409cae0d28e..fb84271787c0 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/5.x.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/7.x.nix
@@ -11,21 +11,21 @@
 
 }:
 
-let version = "5.0"; in
+let version = "7.0.1"; in
 
-# from wikipedia: This Release no longer supports versions of Mac OS X
-# before Mac OS X 10.5 Leopard or Mac computers with PowerPC processors.
 stdenv.mkDerivation {
   name = "thunderbird-${version}";
 
   src = fetchurl {
     url = "http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.bz2";
-    sha1 = "392c3e0ef70b62c29a543f88b2b8d5a51bfe69a7";
+    sha1 = "ccfc6fe3fe4ad07b214e20bc440d20e14d3ffbe5";
   };
 
+  enableParallelBuilding = true;
+
   buildInputs =
     [ pkgconfig perl python zip bzip2 gtk dbus_glib alsaLib libIDL nspr libnotify
-      libnotify cairo pixman fontconfig yasm mesa nss
+      libnotify cairo pixman fontconfig yasm mesa /* nss */
     ];
 
   patches = [
@@ -69,6 +69,18 @@ stdenv.mkDerivation {
       substituteInPlace $out/lib/thunderbird-*/thunderbird \
           --replace /bin/pwd "$(type -tP pwd)" \
           --replace /bin/ls "$(type -tP ls)"
+
+      # Create a desktop item.
+      mkdir -p $out/share/applications
+      cat > $out/share/applications/thunderbird.desktop <<EOF
+      [Desktop Entry]
+      Type=Application
+      Exec=$out/bin/thunderbird
+      Icon=$out/lib/thunderbird-${version}/chrome/icons/default/default256.png
+      Name=Thunderbird
+      GenericName=Mail Reader
+      Categories=Application;Network;
+      EOF
     '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/builder.sh b/pkgs/applications/networking/mailreaders/thunderbird/builder.sh
deleted file mode 100644
index c4b477fcec5a..000000000000
--- a/pkgs/applications/networking/mailreaders/thunderbird/builder.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-source $stdenv/setup
-
-postInstall() {
-
-    # Strip some more stuff
-    strip -S $out/lib/*/* || true
-
-    # Fix some references to /bin paths in the Thunderbird shell script.
-    substituteInPlace $out/bin/thunderbird \
-        --replace /bin/pwd "$(type -tP pwd)" \
-        --replace /bin/ls "$(type -tP ls)"
-
-    # This fixes starting Thunderbird when there already is a running
-    # instance.  The `thunderbird' wrapper script actually expects to
-    # be in the same directory as `run-mozilla.sh', apparently.
-    libDir=$(cd $out/lib && ls -d thunderbird-*)
-    test -n "$libDir"
-    cd $out/bin
-    mv thunderbird ../lib/$libDir/
-    ln -s ../lib/$libDir/thunderbird .
-
-    # Register extensions etc.
-    echo "running thunderbird -register..."
-    (cd $out/lib/$libDir && LD_LIBRARY_PATH=. ./thunderbird-bin -register) || false
-
-    echo "running regxpcom..."
-    (cd $out/lib/$libDir && LD_LIBRARY_PATH=. ./regxpcom) || false
-
-    # Put the Thunderbird icon in the right place.
-    ensureDir $out/lib/$libDir/chrome/icons/default
-    ln -s ../../../icons/default.xpm  $out/lib/$libDir/chrome/icons/default/
-}
-
-genericBuild
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/xlibs.patch b/pkgs/applications/networking/mailreaders/thunderbird/xlibs.patch
deleted file mode 100644
index a656fbf9beb4..000000000000
--- a/pkgs/applications/networking/mailreaders/thunderbird/xlibs.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- mozilla/layout/build/Makefile.in.orig	2007-01-13 14:23:19.000000000 -0200
-+++ mozilla/layout/build/Makefile.in	2007-01-13 14:24:55.000000000 -0200
-@@ -282,5 +282,6 @@ LDFLAGS += -Wl,-LD_LAYOUT:lgot_buffer=50
- endif
- endif
- 
-+LDFLAGS += -lX11 -lXrender
- 
- export:: $(BUILD_DATE)
- 
\ No newline at end of file
diff --git a/pkgs/applications/science/misc/boinc/default.nix b/pkgs/applications/science/misc/boinc/default.nix
new file mode 100644
index 000000000000..460355b274fd
--- /dev/null
+++ b/pkgs/applications/science/misc/boinc/default.nix
@@ -0,0 +1,51 @@
+{ fetchsvn, stdenv, autoconf, automake, pkgconfig, m4, curl,
+mesa, libXmu, libXi, freeglut, libjpeg, libtool, wxGTK,
+sqlite, gtk, patchelf, libXScrnSaver, libnotify, libX11 }:
+
+stdenv.mkDerivation rec {
+  name = "boinc-6.13.6";
+
+  src = fetchsvn {
+    url = "http://boinc.berkeley.edu/svn/tags/boinc_core_release_6_13_6";
+    rev = 24341;
+    sha256 = "17312g4mhxigka1rafxxw46a4mbdlfj1wh1nlp1cbg43hv2rf7bq";
+  };
+
+  buildInputs = [ libtool automake autoconf m4 pkgconfig curl mesa libXmu libXi
+    freeglut libjpeg wxGTK sqlite gtk libXScrnSaver libnotify patchelf libX11 ];
+
+  postConfigure = ''
+    sed -i -e s,/etc,$out/etc, client/scripts/Makefile
+  '';
+
+  NIX_LDFLAGS = "-lX11";
+
+  preConfigure = ''
+    ./_autosetup
+    configureFlags="$configureFlags --sysconfdir=$out/etc"
+  '';
+
+  enableParallelBuilding = true;
+
+  configureFlags = "--disable-server --disable-fast-install";
+
+  postInstall = "
+    # Remove a leading rpath to /tmp/... I don't know how it got there
+    # I could not manage to get rid of that through autotools.
+    for a in $out/bin/*; do
+      RPATH=$(patchelf --print-rpath $a)
+      NEWRPATH=$(echo $RPATH | sed 's/^[^:]*://')
+      patchelf --set-rpath $out/lib:$NEWRPATH $a
+    done
+  ";
+
+  meta = {
+    description = "Free software for distributed and grid computing";
+
+    homepage = http://boinc.berkeley.edu/;
+
+    license = "LGPLv2+";
+
+    platforms = stdenv.lib.platforms.linux;  # arbitrary choice
+  };
+}
diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix
index cc3d93bd561a..aaeeef12a69d 100644
--- a/pkgs/build-support/vm/default.nix
+++ b/pkgs/build-support/vm/default.nix
@@ -1194,22 +1194,22 @@ rec {
     };
 
     debian50i386 = {
-      name = "debian-5.0.8-lenny-i386";
-      fullName = "Debian 5.0.8 Lenny (i386)";
+      name = "debian-5.0.9-lenny-i386";
+      fullName = "Debian 5.0.9 Lenny (i386)";
       packagesList = fetchurl {
         url = mirror://debian/dists/lenny/main/binary-i386/Packages.bz2;
-        sha256 = "0dcvd8ivn71dwln7mx5dbqj30v4cqmc61lj21ry05karkglb5scg";
+        sha256 = "07f54775e2b54e201c7020cd65212fbb44288b1071a73f630f58b68b2d08b2af";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
     };
-        
+
     debian50x86_64 = {
-      name = "debian-5.0.8-lenny-amd64";
-      fullName = "Debian 5.0.8 Lenny (amd64)";
+      name = "debian-5.0.9-lenny-amd64";
+      fullName = "Debian 5.0.9 Lenny (amd64)";
       packagesList = fetchurl {
         url = mirror://debian/dists/lenny/main/binary-amd64/Packages.bz2;
-        sha256 = "1wrqjfcqfs7q5i7jnr8115zsjlhzxxm2x41agp546d3wpj68k938";
+        sha256 = "1jqb3rr5q5y7yyhrymwa51djsydm92zbbmg4vbif65i7sp9ggky0";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
diff --git a/pkgs/desktops/gnome-2.28/default.nix b/pkgs/desktops/gnome-2.28/default.nix
deleted file mode 100644
index e486cac465ea..000000000000
--- a/pkgs/desktops/gnome-2.28/default.nix
+++ /dev/null
@@ -1,339 +0,0 @@
-pkgs:
-pkgs.makeOverridable
-(__overrides: rec {
-  inherit __overrides;
-
-  inherit (pkgs.gtkLibs) glib pango atk gtk gtkmm;
-
-  # Backward compatibility.
-  gnomevfs = gnome_vfs;
-  startupnotification = startup_notification;
-  gnomedocutils = gnome_doc_utils;
-  gnomeicontheme = gnome_icon_theme;
-  gnomepanel = gnome_panel;
-
-#### PLATFORM
-
-  audiofile = import ./platform/audiofile {
-    inherit (pkgs) stdenv fetchurl;
-  };
-
-  esound = import ./platform/esound {
-    inherit (pkgs) stdenv fetchurl pkgconfig alsaLib;
-    inherit audiofile;
-  };
-
-  libIDL = import ./platform/libIDL {
-    inherit (pkgs) stdenv fetchurl flex bison pkgconfig;
-    inherit (pkgs.gtkLibs) glib;
-    gettext = if pkgs.stdenv.isDarwin then pkgs.gettext else null;
-  };
-
-  ORBit2 = import ./platform/ORBit2 {
-    inherit (pkgs) stdenv fetchurl pkgconfig;
-    inherit (pkgs.gtkLibs) glib;
-    inherit libIDL;
-  };
-
-  libart_lgpl = import ./platform/libart_lgpl {
-    inherit (pkgs) stdenv fetchurl;
-  };
-
-  libglade = import ./platform/libglade {
-    inherit (pkgs) stdenv fetchurl pkgconfig libxml2 python gettext;
-    inherit (pkgs.gtkLibs) gtk;
-  };
-
-  libgnomeprint = import ./platform/libgnomeprint {
-    inherit intltool libart_lgpl libgnomecups;
-    inherit (pkgs) stdenv fetchurl pkgconfig gettext libxml2 bison flex;
-    inherit (pkgs.gtkLibs) gtk;
-  };
-
-  libgnomeprintui = import ./platform/libgnomeprintui {
-    inherit intltool libgnomecanvas libgnomeprint gnomeicontheme;
-    inherit (pkgs) stdenv fetchurl pkgconfig gettext;
-    inherit (pkgs.gtkLibs) gtk;
-  };
-
-  libgnomecups = import ./platform/libgnomecups {
-    inherit intltool libart_lgpl;
-    inherit (pkgs) stdenv fetchurl pkgconfig gettext libxml2;
-    inherit (pkgs.gtkLibs) gtk;
-  };
-
-  libgtkhtml = import ./platform/libgtkhtml {
-    inherit (pkgs) stdenv fetchurl pkgconfig gettext libxml2;
-    inherit (pkgs.gtkLibs) gtk;
-  };
-
-  intltool = import ./platform/intltool {
-    inherit (pkgs) stdenv fetchurl pkgconfig perl perlXMLParser gettext;
-  };
-
-  GConf = import ./platform/GConf {
-    inherit (pkgs) stdenv fetchurl pkgconfig dbus_glib libxml2 policykit;
-    inherit (pkgs.gtkLibs) glib;
-    inherit intltool ORBit2;
-    dbus_libs = pkgs.dbus.libs;
-  };
-
-  libgnomecanvas = import ./platform/libgnomecanvas {
-    inherit (pkgs) stdenv fetchurl pkgconfig;
-    inherit (pkgs.gtkLibs) gtk;
-    inherit intltool libart_lgpl libglade;
-  };
-
-  libgnomecanvasmm = import ./platform/libgnomecanvasmm {
-    inherit (pkgs) stdenv fetchurl pkgconfig;
-    inherit libgnomecanvas gtkmm;
-  };
-
-  # for git-head builds
-  gnome_common = import platform/gnome-common {
-    inherit (pkgs) stdenv fetchgit pkgconfig
-      autoconf automake libtool;
-  };
-
-  gnome_mime_data = import ./platform/gnome-mime-data {
-    inherit (pkgs) stdenv fetchurl;
-    inherit intltool;
-  };
-
-  gnome_vfs = import ./platform/gnome-vfs {
-    inherit (pkgs) stdenv fetchurl pkgconfig libxml2 bzip2 openssl samba dbus_glib fam hal cdparanoia;
-    inherit (pkgs.gtkLibs) glib;
-    inherit intltool GConf gnome_mime_data;
-  };
-
-  gnome_vfs_monikers = import ./platform/gnome-vfs-monikers {
-    inherit (pkgs) stdenv fetchurl pkgconfig;
-    inherit (pkgs.gtkLibs) glib;
-    inherit intltool gnome_vfs libbonobo ORBit2;
-  };
-
-  libgnome = import ./platform/libgnome {
-    inherit (pkgs) stdenv fetchurl pkgconfig popt zlib;
-    inherit (pkgs.gtkLibs) glib;
-    inherit intltool esound libbonobo GConf gnome_vfs ORBit2;
-  };
-
-  libgnomeui = import ./platform/libgnomeui {
-    inherit (pkgs) stdenv fetchurl pkgconfig libxml2 xlibs;
-    inherit intltool libgnome libgnomecanvas libbonoboui GConf;
-    inherit gnome_vfs gnome_keyring libglade glib pango;
-  };
-
-  libbonobo = import ./platform/libbonobo {
-    inherit (pkgs) stdenv fetchurl flex bison pkgconfig dbus_glib libxml2 popt;
-    inherit (pkgs.gtkLibs) glib;
-    inherit intltool ORBit2;
-  };
-
-  libbonoboui = import ./platform/libbonoboui {
-    inherit (pkgs) stdenv fetchurl bison pkgconfig popt libxml2;
-    inherit intltool libbonobo GConf libgnomecanvas libgnome libglade gtk;
-  };
-
-  at_spi = import ./platform/at-spi {
-    inherit (pkgs) stdenv fetchurl python pkgconfig popt;
-    inherit (pkgs.xlibs) libX11 libICE libXtst libXi;
-    inherit (pkgs.gtkLibs) atk gtk;
-    inherit intltool libbonobo ORBit2;
-  };
-
-  glib_networking = import ./platform/glib-networking {
-    inherit (pkgs) stdenv fetchurl pkgconfig glib libtool intltool gnutls2
-      libproxy libgcrypt libtasn1;
-  };
-
-  gtk_doc = import ./platform/gtk-doc {
-    inherit (pkgs) stdenv fetchurl pkgconfig perl python libxml2 libxslt;
-    inherit (pkgs) docbook_xml_dtd_43 docbook_xsl dblatex;
-    inherit gnome_doc_utils;
-  };
-
-  # What name should we use??
-  gtkdoc = gtk_doc;
-
-  gtkhtml = import ./platform/gtkhtml {
-    inherit (pkgs.gtkLibs) gtk;
-    inherit (pkgs) fetchurl stdenv pkgconfig intltool enchant isocodes;
-    inherit GConf gnome_icon_theme;
-  };
-
-
-  # Freedesktop library
-  startup_notification = import ./platform/startup-notification {
-    inherit (pkgs) stdenv fetchurl pkgconfig xlibs;
-  };
-
-  # Required for nautilus
-  libunique = import ./platform/libunique {
-    inherit (pkgs) stdenv fetchurl pkgconfig gettext;
-    inherit (pkgs.gtkLibs) gtk;
-  };
-
-  gtkglext = import ./platform/gtkglext {
-    inherit (pkgs) stdenv fetchurl mesa pkgconfig;
-    inherit (pkgs.gtkLibs) gtk pango;
-  };
-
-#### DESKTOP
-
-  gnome_keyring = import ./desktop/gnome-keyring {
-    inherit (pkgs) stdenv fetchurl pkgconfig dbus libgcrypt libtasn1 pam python;
-    inherit (pkgs.gtkLibs) glib gtk;
-    inherit intltool GConf;
-  };
-
-  libsoup = import ./desktop/libsoup {
-    inherit (pkgs) stdenv fetchurl pkgconfig libxml2 gnutls libproxy sqlite curl;
-    inherit (pkgs.gtkLibs) glib;
-    inherit GConf gnome_keyring;
-  };
-
-  libwnck = import ./desktop/libwnck {
-    inherit (pkgs) stdenv fetchurl pkgconfig;
-    inherit (pkgs.xlibs) libX11;
-    inherit (pkgs.gtkLibs) gtk;
-    inherit intltool;
-  };
-
-  # Not part of GNOME desktop, but provides CSS support for librsvg
-  libcroco = import ./desktop/libcroco {
-    inherit (pkgs) stdenv fetchurl pkgconfig libxml2;
-    inherit (pkgs.gtkLibs) glib;
-  };
-
-  librsvg = import ./desktop/librsvg {
-    inherit (pkgs) stdenv fetchurl pkgconfig libxml2 libgsf bzip2;
-    inherit (pkgs.gtkLibs) glib gtk;
-    inherit libcroco;
-  };
-
-  libgweather = import ./desktop/libgweather {
-    inherit (pkgs) stdenv fetchurl pkgconfig libxml2 libtasn1 nettle gmp;
-    inherit (pkgs.gtkLibs) gtk;
-    inherit intltool GConf libsoup;
-  };
-
-  gvfs = import ./desktop/gvfs {
-    inherit (pkgs) stdenv fetchurl pkgconfig dbus samba hal libarchive fuse libgphoto2 cdparanoia libxml2 libtool;
-    inherit (pkgs.gtkLibs) glib;
-    inherit intltool GConf gnome_keyring libsoup;
-  };
-
-  libgnomekbd = import ./desktop/libgnomekbd {
-    inherit (pkgs) stdenv fetchurl pkgconfig dbus_glib libxklavier;
-    inherit (pkgs.gtkLibs) glib gtk;
-    inherit intltool GConf libglade;
-  };
-
-  # Removed from recent GNOME releases, but still required
-  scrollkeeper = import ./desktop/scrollkeeper {
-    inherit (pkgs) stdenv fetchurl pkgconfig perl perlXMLParser libxml2 libxslt docbook_xml_dtd_42 automake;
-  };
-
-  # scrollkeeper replacement
-  rarian = import ./desktop/rarian {
-    inherit (pkgs) stdenv fetchurl pkgconfig perl perlXMLParser libxml2 libxslt docbook_xml_dtd_42;
-  };
-
-  gnome_doc_utils = import ./desktop/gnome-doc-utils {
-    inherit (pkgs) stdenv fetchurl python pkgconfig libxslt
-      makeWrapper;
-    inherit intltool scrollkeeper;
-    libxml2 = pkgs.libxml2Python;
-  };
-
-  zenity = import ./desktop/zenity {
-    inherit (pkgs) stdenv fetchurl pkgconfig cairo libxml2 libxslt;
-    inherit (pkgs.gtkLibs) glib gtk pango atk;
-    inherit gnome_doc_utils intltool libglade;
-    inherit (pkgs.xlibs) libX11;
-  };
-
-  metacity = import ./desktop/metacity {
-    inherit (pkgs) stdenv fetchurl pkgconfig libcanberra;
-    inherit (pkgs.gtkLibs) glib gtk;
-    inherit (pkgs.xlibs) libXcomposite libXcursor libXdamage;
-    inherit intltool GConf startup_notification zenity gnome_doc_utils;
-  };
-
-  gnome_menus = import ./desktop/gnome-menus {
-    inherit (pkgs) stdenv fetchurl pkgconfig python;
-    inherit (pkgs.gtkLibs) glib;
-    inherit intltool;
-  };
-
-  gnome_desktop = import ./desktop/gnome-desktop {
-    inherit (pkgs) stdenv fetchurl pkgconfig python libxslt which;
-    libxml2 = pkgs.libxml2Python;
-    inherit (pkgs.xlibs) libX11;
-    inherit (pkgs.gtkLibs) gtk;
-    inherit intltool GConf gnome_doc_utils;
-  };
-
-  gnome_panel = import ./desktop/gnome-panel {
-    inherit (pkgs) stdenv fetchurl pkgconfig dbus_glib dbus cairo popt which bzip2 python libxslt libtasn1;
-    libxml2 = pkgs.libxml2Python;
-    inherit (pkgs.gtkLibs) glib gtk pango atk;
-    inherit (pkgs.xlibs) libXau;
-    inherit intltool ORBit2 libglade libgnome libgnomeui libbonobo libbonoboui GConf gnome_menus gnome_desktop;
-    inherit libwnck librsvg libgweather gnome_doc_utils libgnomecanvas libart_lgpl;
-  };
-
-  gnome_session = import ./desktop/gnome-session {
-    inherit (pkgs) stdenv fetchurl pkgconfig dbus_glib cairo dbus;
-    inherit (pkgs.gtkLibs) gtk pango atk;
-    inherit (pkgs.xlibs) libXau libXtst inputproto;
-    inherit intltool libglade startup_notification GConf;
-  };
-
-  gnome_settings_daemon = import ./desktop/gnome-settings-daemon {
-    inherit (pkgs) stdenv fetchurl pkgconfig dbus_glib libxklavier;
-    inherit (pkgs.gtkLibs) gtk;
-    inherit intltool GConf gnome_desktop libglade libgnomekbd;
-  };
-
-  gnome_control_center = import ./desktop/gnome-control-center {
-    inherit (pkgs) stdenv fetchurl pkgconfig dbus_glib libxklavier hal libtool bzip2;
-    inherit (pkgs) cairo popt which python libxslt shared_mime_info desktop_file_utils;
-    inherit (pkgs.gtkLibs) glib gtk pango atk;
-    inherit gnome_doc_utils intltool GConf libglade libgnome libgnomeui libgnomekbd libunique;
-    inherit librsvg gnome_menus gnome_desktop gnome_panel metacity gnome_settings_daemon;
-    inherit libbonobo libbonoboui libgnomecanvas libart_lgpl gnome_vfs ORBit2;
-    libxml2 = pkgs.libxml2Python;
-  };
-
-  gtksourceview = import ./desktop/gtksourceview {
-    inherit (pkgs) stdenv fetchurl pkgconfig cairo perl intltool
-      gettext;
-    inherit (pkgs.gtkLibs) atk glib gtk pango;
-    libxml2 = pkgs.libxml2Python;
-  };
-
-  nautilus = import ./desktop/nautilus {
-    inherit (pkgs) stdenv fetchurl pkgconfig libxml2 dbus_glib libexif shared_mime_info;
-    inherit (pkgs.gtkLibs) gtk;
-    inherit gnome_desktop libunique intltool GConf;
-  };
-
-  gnome_icon_theme = import ./desktop/gnome-icon-theme {
-    inherit (pkgs) stdenv fetchurl pkgconfig intltool iconnamingutils;
-  };
-
-  vte = import ./desktop/vte {
-    inherit (pkgs) stdenv fetchurl pkgconfig ncurses python;
-    inherit intltool glib gtk;
-  };
-
-#### BINDINGS
-
-  libglademm = import ./bindings/libglademm {
-    inherit (pkgs) stdenv fetchurl pkgconfig intltool;
-    inherit gtkmm libglade;
-  };
-
-}) {}
diff --git a/pkgs/desktops/gnome-2.28/platform/ORBit2/default.nix b/pkgs/desktops/gnome-2.28/platform/ORBit2/default.nix
deleted file mode 100644
index 0d536e830b1f..000000000000
--- a/pkgs/desktops/gnome-2.28/platform/ORBit2/default.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{stdenv, fetchurl, pkgconfig, glib, libIDL}:
-
-stdenv.mkDerivation {
-  name = "ORBit2-2.14.17";
-  
-  src = fetchurl {
-    url = mirror://gnome/sources/ORBit2/2.14/ORBit2-2.14.17.tar.bz2;
-    sha256 = "0k4px2f949ac7vmj7b155g1rpf7pmvl48sbnkjhlg4wgcwzwxgv2";
-  };
-  
-  buildInputs = [ pkgconfig ];
-  propagatedBuildInputs = [ glib libIDL ];
-}
diff --git a/pkgs/desktops/gnome-2.28/platform/gnome-common/default.nix b/pkgs/desktops/gnome-2.28/platform/gnome-common/default.nix
deleted file mode 100644
index 1d2e17241632..000000000000
--- a/pkgs/desktops/gnome-2.28/platform/gnome-common/default.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{stdenv, fetchgit, pkgconfig, autoconf, automake, libtool}:
-
-stdenv.mkDerivation {
-  name = "gnome-common-2.28.0";
-  src =  fetchgit {
-    url = mirror://gnome/sources/gnome-common/2.28/gnome-common-2.28.0.tar.bz2;
-    sha256 = "18dnx5hndl19lpk6i3ybfsssfasma5wi7p9mqw05sx137l81fj6x";
-  };
-  buildInputs = [ pkgconfig automake autoconf libtool
-    ];
-  preConfigure = ''
-    ./autogen.sh
-  '';
-}
diff --git a/pkgs/desktops/gnome-2.28/platform/gnome-vfs/default.nix b/pkgs/desktops/gnome-2.28/platform/gnome-vfs/default.nix
deleted file mode 100644
index 1e35ac9430bd..000000000000
--- a/pkgs/desktops/gnome-2.28/platform/gnome-vfs/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, libxml2, bzip2, openssl, samba, dbus_glib, glib, fam, hal, cdparanoia
-, intltool, GConf, gnome_mime_data}:
-
-stdenv.mkDerivation {
-  name = "gnome-vfs-2.24.1";
-
-  src = fetchurl {
-    url = mirror://gnome/sources/gnome-vfs/2.24/gnome-vfs-2.24.1.tar.bz2;
-    sha256 = "1dmyr8nj77717r8dhwkixpar2yp8ld3r683gp222n59v61718ndw";
-  };
-
-  buildInputs =
-    [ pkgconfig libxml2 bzip2 openssl samba dbus_glib fam cdparanoia
-      intltool gnome_mime_data
-    ]
-    ++ (if stdenv.isLinux then [hal] else []);
-
-  propagatedBuildInputs = [ GConf glib ];
-}
diff --git a/pkgs/desktops/gnome-2.28/platform/libIDL/default.nix b/pkgs/desktops/gnome-2.28/platform/libIDL/default.nix
deleted file mode 100644
index f48b0821f126..000000000000
--- a/pkgs/desktops/gnome-2.28/platform/libIDL/default.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{stdenv, fetchurl, flex, bison, pkgconfig, glib, gettext ? null}:
-
-stdenv.mkDerivation {
-  name = "libIDL-0.8.13";
-  src = fetchurl {
-    url = mirror://gnome/sources/libIDL/0.8/libIDL-0.8.13.tar.bz2;
-    sha256 = "0w9b4q5sllwncz498sj5lmc3ajzc8x74dy0jy27m2yg9v887xk5w";
-  };
-  buildInputs = [ flex bison pkgconfig glib gettext ];
-}
diff --git a/pkgs/desktops/gnome-2.28/platform/libbonobo/default.nix b/pkgs/desktops/gnome-2.28/platform/libbonobo/default.nix
deleted file mode 100644
index 9910965cf917..000000000000
--- a/pkgs/desktops/gnome-2.28/platform/libbonobo/default.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{stdenv, fetchurl, flex, bison, pkgconfig, glib, dbus_glib, libxml2, popt, intltool, ORBit2}:
-
-stdenv.mkDerivation {
-  name = "libbonobo-2.24.2";
-  
-  src = fetchurl {
-    url = mirror://gnome/sources/libbonobo/2.24/libbonobo-2.24.2.tar.bz2;
-    sha256 = "1gr85amd271z0lbr68crcsc24rx1pa5k20f67y3y2mx664527h4m";
-  };
-  
-  buildInputs = [ flex bison pkgconfig dbus_glib libxml2 intltool ];
-  propagatedBuildInputs = [ popt glib ORBit2 ];
-}
diff --git a/pkgs/desktops/gnome-2.28/platform/libbonoboui/default.nix b/pkgs/desktops/gnome-2.28/platform/libbonoboui/default.nix
deleted file mode 100644
index 20169161b82a..000000000000
--- a/pkgs/desktops/gnome-2.28/platform/libbonoboui/default.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ stdenv, fetchurl, bison, pkgconfig, popt, libxml2, gtk
-, intltool, libbonobo, GConf, libgnomecanvas, libgnome, libglade }:
-
-stdenv.mkDerivation {
-  name = "libbonoboui-2.24.2";
-  
-  src = fetchurl {
-    url = mirror://gnome/sources/libbonoboui/2.24/libbonoboui-2.24.2.tar.bz2;
-    sha256 = "005ypnzb3mfsb0k0aa3h77vwc4ifjq6r4d11msqllvx7avfgkg5f";
-  };
-  
-  buildInputs = [ bison pkgconfig popt gtk libxml2 intltool GConf libglade ];
-  propagatedBuildInputs = [ libbonobo libgnomecanvas libgnome ];
-}
diff --git a/pkgs/desktops/gnome-2.28/platform/libgnome/default.nix b/pkgs/desktops/gnome-2.28/platform/libgnome/default.nix
deleted file mode 100644
index c79a61b883a3..000000000000
--- a/pkgs/desktops/gnome-2.28/platform/libgnome/default.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, glib, popt, zlib
-, intltool, esound, libbonobo, GConf, gnome_vfs, ORBit2}:
-
-stdenv.mkDerivation {
-  name = "libgnome-2.28.0";
-  
-  src = fetchurl {
-    url = mirror://gnome/sources/libgnome/2.28/libgnome-2.28.0.tar.bz2;
-    sha256 = "03hc1m88swxxw4cq491kz7495ksv762imamzbbvhci41bc40anwv";
-  };
-  
-  buildInputs = [ pkgconfig popt zlib intltool GConf gnome_vfs ];
-  propagatedBuildInputs = [ glib libbonobo esound ];
-}
diff --git a/pkgs/desktops/gnome-2.28/platform/libgnomecanvas/default.nix b/pkgs/desktops/gnome-2.28/platform/libgnomecanvas/default.nix
deleted file mode 100644
index 95f484ff7a40..000000000000
--- a/pkgs/desktops/gnome-2.28/platform/libgnomecanvas/default.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, gtk, intltool, libart_lgpl, libglade }:
-
-stdenv.mkDerivation {
-  name = "libgnomecanvas-2.26.0";
-  
-  src = fetchurl {
-    url = mirror://gnome/sources/libgnomecanvas/2.26/libgnomecanvas-2.26.0.tar.bz2;
-    sha256 = "13f5rf5pkp9hnyxzvssrxnlykjaixa7vrig9a7v06wrxqfn81d40";
-  };
-  
-  buildInputs = [ pkgconfig intltool libglade ];
-
-  propagatedBuildInputs = [ libart_lgpl gtk ];
-}
diff --git a/pkgs/desktops/gnome-2.28/platform/libunique/default.nix b/pkgs/desktops/gnome-2.28/platform/libunique/default.nix
deleted file mode 100644
index ed6d268fdeb2..000000000000
--- a/pkgs/desktops/gnome-2.28/platform/libunique/default.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{stdenv, fetchurl, pkgconfig, gettext, gtk}:
-
-stdenv.mkDerivation {
-  name = "libunique-1.1.2";
-  src = fetchurl {
-    url = mirror://gnome/sources/libunique/1.1/libunique-1.1.2.tar.bz2;
-    sha256 = "0vhcbw4ccc58xhs99r6bkabrzbayyq2qk01xm8vv4hpwjl117yvk";
-  };
-  buildInputs = [ pkgconfig gettext gtk ];
-}
diff --git a/pkgs/desktops/gnome-2.28/bindings/libglademm/default.nix b/pkgs/desktops/gnome-2/bindings/libglademm/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/bindings/libglademm/default.nix
rename to pkgs/desktops/gnome-2/bindings/libglademm/default.nix
diff --git a/pkgs/desktops/gnome-2/default.nix b/pkgs/desktops/gnome-2/default.nix
new file mode 100644
index 000000000000..814b054f74e7
--- /dev/null
+++ b/pkgs/desktops/gnome-2/default.nix
@@ -0,0 +1,133 @@
+{ callPackage, self, stdenv, gettext, overrides ? {} }:
+{
+  __overrides = overrides;
+
+  # Backward compatibility.
+  gtkdoc = self.gtk_doc;
+  startupnotification = self.startup_notification;
+  gnomedocutils = self.gnome_doc_utils;
+  gnomeicontheme = self.gnome_icon_theme;
+  gnomepanel = self.gnome_panel;
+
+#### PLATFORM
+
+  audiofile = callPackage ./platform/audiofile { };
+
+  esound = callPackage ./platform/esound { };
+
+  libIDL = callPackage ./platform/libIDL {
+    gettext = if stdenv.isDarwin then gettext else null;
+  };
+
+  ORBit2 = callPackage ./platform/ORBit2 { };
+
+  libart_lgpl = callPackage ./platform/libart_lgpl { };
+
+  libglade = callPackage ./platform/libglade { };
+
+  libgnomeprint = callPackage ./platform/libgnomeprint { };
+
+  libgnomeprintui = callPackage ./platform/libgnomeprintui { };
+
+  libgnomecups = callPackage ./platform/libgnomecups { };
+
+  libgtkhtml = callPackage ./platform/libgtkhtml { };
+
+  intltool = callPackage ./platform/intltool { };
+
+  GConf = callPackage ./platform/GConf { };
+
+  libgnomecanvas = callPackage ./platform/libgnomecanvas { };
+
+  libgnomecanvasmm = callPackage ./platform/libgnomecanvasmm { };
+
+  # for git-head builds
+  gnome_common = callPackage platform/gnome-common { };
+
+  gnome_mime_data = callPackage ./platform/gnome-mime-data { };
+
+  gnome_vfs = callPackage ./platform/gnome-vfs { };
+
+  gnome_vfs_monikers = callPackage ./platform/gnome-vfs-monikers { };
+
+  libgnome = callPackage ./platform/libgnome { };
+
+  libgnomeui = callPackage ./platform/libgnomeui { };
+
+  libbonobo = callPackage ./platform/libbonobo { };
+
+  libbonoboui = callPackage ./platform/libbonoboui { };
+
+  at_spi = callPackage ./platform/at-spi { };
+
+  glib_networking = callPackage ./platform/glib-networking { };
+
+  gtk_doc = callPackage ./platform/gtk-doc { };
+
+  gtkhtml = callPackage ./platform/gtkhtml { };
+
+
+  # Freedesktop library
+  startup_notification = callPackage ./platform/startup-notification { };
+
+  # Required for nautilus
+  libunique = callPackage ./platform/libunique { };
+
+  gtkglext = callPackage ./platform/gtkglext { };
+
+#### DESKTOP
+
+  gnome_keyring = callPackage ./desktop/gnome-keyring { };
+
+  libsoup = callPackage ./desktop/libsoup { };
+
+  libwnck = callPackage ./desktop/libwnck { };
+
+  # Not part of GNOME desktop, but provides CSS support for librsvg
+  libcroco = callPackage ./desktop/libcroco { };
+
+  librsvg = callPackage ./desktop/librsvg { };
+
+  libgweather = callPackage ./desktop/libgweather { };
+
+  gvfs = callPackage ./desktop/gvfs { };
+
+  libgnomekbd = callPackage ./desktop/libgnomekbd { };
+
+  # Removed from recent GNOME releases, but still required
+  scrollkeeper = callPackage ./desktop/scrollkeeper { };
+
+  # scrollkeeper replacement
+  rarian = callPackage ./desktop/rarian { };
+
+  gnome_doc_utils = callPackage ./desktop/gnome-doc-utils { };
+
+  zenity = callPackage ./desktop/zenity { };
+
+  metacity = callPackage ./desktop/metacity { };
+
+  gnome_menus = callPackage ./desktop/gnome-menus { };
+
+  gnome_desktop = callPackage ./desktop/gnome-desktop { };
+
+  gnome_panel = callPackage ./desktop/gnome-panel { };
+
+  gnome_session = callPackage ./desktop/gnome-session { };
+
+  gnome_settings_daemon = callPackage ./desktop/gnome-settings-daemon { };
+
+  gnome_control_center = callPackage ./desktop/gnome-control-center { };
+
+  gtksourceview = callPackage ./desktop/gtksourceview { };
+
+  nautilus = callPackage ./desktop/nautilus { };
+
+  gnome_icon_theme = callPackage ./desktop/gnome-icon-theme { };
+
+  vte = callPackage ./desktop/vte { };
+
+#### BINDINGS
+
+  libglademm = callPackage ./bindings/libglademm { };
+
+}
diff --git a/pkgs/desktops/gnome-2.28/desktop/gnome-control-center/default.nix b/pkgs/desktops/gnome-2/desktop/gnome-control-center/default.nix
similarity index 88%
rename from pkgs/desktops/gnome-2.28/desktop/gnome-control-center/default.nix
rename to pkgs/desktops/gnome-2/desktop/gnome-control-center/default.nix
index 4ebbd20d2292..7d7e6cb6aec6 100644
--- a/pkgs/desktops/gnome-2.28/desktop/gnome-control-center/default.nix
+++ b/pkgs/desktops/gnome-2/desktop/gnome-control-center/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, dbus_glib, libxml2, libxslt, libxklavier, hal, cairo, popt, which, python
+{ stdenv, fetchurl, pkgconfig, dbus_glib, libxml2Python, libxslt, libxklavier, hal, cairo, popt, which, python
 , shared_mime_info, desktop_file_utils, libunique, libtool, bzip2
 , glib, gtk, pango, atk, gnome_doc_utils, intltool, GConf, libglade, libgnome, libgnomeui, libgnomekbd
 , librsvg, gnome_menus, gnome_desktop, gnome_panel, metacity, gnome_settings_daemon
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
     url = mirror://gnome/sources/gnome-control-center/2.28/gnome-control-center-2.28.0.tar.bz2;
     sha256 = "0m0z7dn5qzl63cpc8ivagm4yfsfgigfawl5v3df3pw3z4jk2bsfp";
   };
-  buildInputs = [ pkgconfig dbus_glib libxml2 libxslt libxklavier hal popt which python shared_mime_info desktop_file_utils
+  buildInputs = [ pkgconfig dbus_glib libxml2Python libxslt libxklavier hal popt which python shared_mime_info desktop_file_utils
                   gtk gnome_doc_utils intltool GConf libglade libgnomekbd libunique libtool bzip2 
                   libgnomeui librsvg gnome_menus gnome_desktop gnome_panel metacity gnome_settings_daemon ];
   configureFlags = "--disable-scrollkeeper";
diff --git a/pkgs/desktops/gnome-2.28/desktop/gnome-desktop/default.nix b/pkgs/desktops/gnome-2/desktop/gnome-desktop/default.nix
similarity index 70%
rename from pkgs/desktops/gnome-2.28/desktop/gnome-desktop/default.nix
rename to pkgs/desktops/gnome-2/desktop/gnome-desktop/default.nix
index e048488bff81..8c011ad27699 100644
--- a/pkgs/desktops/gnome-2.28/desktop/gnome-desktop/default.nix
+++ b/pkgs/desktops/gnome-2/desktop/gnome-desktop/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, python, libxml2, libxslt, which, libX11, gtk
+{ stdenv, fetchurl, pkgconfig, python, libxml2Python, libxslt, which, libX11, gtk
 , intltool, GConf, gnome_doc_utils}:
 
 stdenv.mkDerivation {
@@ -8,6 +8,6 @@ stdenv.mkDerivation {
     sha256 = "1raag5c74pyy0f1i37fjxyxcnk9ck4mh6c1hcdmv5dv40xndwvwp";
   };
   configureFlags = "--disable-scrollkeeper";
-  buildInputs = [ pkgconfig python libxml2 libxslt which libX11 gtk
+  buildInputs = [ pkgconfig python libxml2Python libxslt which libX11 gtk
                   intltool GConf gnome_doc_utils ];
 }
diff --git a/pkgs/desktops/gnome-2.28/desktop/gnome-doc-utils/default.nix b/pkgs/desktops/gnome-2/desktop/gnome-doc-utils/default.nix
similarity index 74%
rename from pkgs/desktops/gnome-2.28/desktop/gnome-doc-utils/default.nix
rename to pkgs/desktops/gnome-2/desktop/gnome-doc-utils/default.nix
index c2e49deb009e..58d3dfd0a8f7 100644
--- a/pkgs/desktops/gnome-2.28/desktop/gnome-doc-utils/default.nix
+++ b/pkgs/desktops/gnome-2/desktop/gnome-doc-utils/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, python, pkgconfig, libxml2, libxslt, intltool, scrollkeeper,
+{stdenv, fetchurl, python, pkgconfig, libxml2Python, libxslt, intltool, scrollkeeper,
   makeWrapper}:
 
 stdenv.mkDerivation {
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
     sha256 = "1937zr088vn7vhy9rwfc021ih21hhf700c3m4ria8mlcpcvh1380";
   };
   configureFlags = "--disable-scrollkeeper";
-  buildInputs = [ python pkgconfig libxml2 libxslt intltool scrollkeeper 
+  buildInputs = [ python pkgconfig libxml2Python libxslt intltool scrollkeeper 
     makeWrapper ];
   postInstall = ''
     wrapProgram $out/bin/xml2po --prefix PYTHONPATH : $(toPythonPath $out) \
diff --git a/pkgs/desktops/gnome-2.28/desktop/gnome-icon-theme/default.nix b/pkgs/desktops/gnome-2/desktop/gnome-icon-theme/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/gnome-icon-theme/default.nix
rename to pkgs/desktops/gnome-2/desktop/gnome-icon-theme/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/gnome-keyring/default.nix b/pkgs/desktops/gnome-2/desktop/gnome-keyring/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/gnome-keyring/default.nix
rename to pkgs/desktops/gnome-2/desktop/gnome-keyring/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/gnome-menus/default.nix b/pkgs/desktops/gnome-2/desktop/gnome-menus/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/gnome-menus/default.nix
rename to pkgs/desktops/gnome-2/desktop/gnome-menus/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/gnome-panel/default.nix b/pkgs/desktops/gnome-2/desktop/gnome-panel/default.nix
similarity index 92%
rename from pkgs/desktops/gnome-2.28/desktop/gnome-panel/default.nix
rename to pkgs/desktops/gnome-2/desktop/gnome-panel/default.nix
index 48b2ca2f8eff..774b1ff508b1 100644
--- a/pkgs/desktops/gnome-2.28/desktop/gnome-panel/default.nix
+++ b/pkgs/desktops/gnome-2/desktop/gnome-panel/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, dbus_glib, dbus, cairo, popt, which, libxml2, libxslt, bzip2, python
+{ stdenv, fetchurl, pkgconfig, dbus_glib, dbus, cairo, popt, which, libxml2Python, libxslt, bzip2, python
 , glib, gtk, pango, atk, libXau
 , intltool, ORBit2, libglade, libgnome, libgnomeui, libbonobo, libbonoboui, GConf, gnome_menus, gnome_desktop
 , libwnck, librsvg, libgweather, gnome_doc_utils, libgnomecanvas, libart_lgpl, libtasn1}:
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
     url = mirror://gnome/sources/gnome-panel/2.28/gnome-panel-2.28.0.tar.bz2;
     sha256 = "0rc4f6vmyrm3s8ncbll0a1ik2j1gg068fq3xal120sc4iw68q5n1";
   };
-  buildInputs = [ pkgconfig gtk dbus_glib popt which libxml2 libxslt bzip2 python libXau
+  buildInputs = [ pkgconfig gtk dbus_glib popt which libxml2Python libxslt bzip2 python libXau
                   intltool ORBit2 libglade libgnome libgnomeui libbonobo libbonoboui GConf gnome_menus gnome_desktop 
 		  libwnck librsvg libgweather gnome_doc_utils libtasn1 ];
   configureFlags = "--disable-scrollkeeper";
diff --git a/pkgs/desktops/gnome-2.28/desktop/gnome-session/default.nix b/pkgs/desktops/gnome-2/desktop/gnome-session/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/gnome-session/default.nix
rename to pkgs/desktops/gnome-2/desktop/gnome-session/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/gnome-settings-daemon/default.nix b/pkgs/desktops/gnome-2/desktop/gnome-settings-daemon/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/gnome-settings-daemon/default.nix
rename to pkgs/desktops/gnome-2/desktop/gnome-settings-daemon/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/gtksourceview/default.nix b/pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix
similarity index 71%
rename from pkgs/desktops/gnome-2.28/desktop/gtksourceview/default.nix
rename to pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix
index 64dbd8e1a6f3..aa1080012d52 100644
--- a/pkgs/desktops/gnome-2.28/desktop/gtksourceview/default.nix
+++ b/pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix
@@ -1,5 +1,5 @@
 {stdenv, fetchurl, pkgconfig, atk, cairo, glib, gtk, pango, 
-  libxml2, perl, intltool, gettext}:
+  libxml2Python, perl, intltool, gettext}:
 
 stdenv.mkDerivation {
   name = "gtksourceview-2.9.9";
@@ -7,6 +7,6 @@ stdenv.mkDerivation {
     url = mirror://gnome/sources/gtksourceview/2.9/gtksourceview-2.9.9.tar.bz2;
     sha256 = "0d0i586nj8jsqqfcjcvaj0yzc3sid3s1a4y62xr0qbddkbn1wllj";
   };
-  buildInputs = [pkgconfig atk cairo glib gtk pango libxml2 perl intltool
+  buildInputs = [pkgconfig atk cairo glib gtk pango libxml2Python perl intltool
     gettext];
 }
diff --git a/pkgs/desktops/gnome-2.28/desktop/gvfs/builder.sh b/pkgs/desktops/gnome-2/desktop/gvfs/builder.sh
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/gvfs/builder.sh
rename to pkgs/desktops/gnome-2/desktop/gvfs/builder.sh
diff --git a/pkgs/desktops/gnome-2.28/desktop/gvfs/default.nix b/pkgs/desktops/gnome-2/desktop/gvfs/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/gvfs/default.nix
rename to pkgs/desktops/gnome-2/desktop/gvfs/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/libcroco/default.nix b/pkgs/desktops/gnome-2/desktop/libcroco/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/libcroco/default.nix
rename to pkgs/desktops/gnome-2/desktop/libcroco/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/libgnomekbd/default.nix b/pkgs/desktops/gnome-2/desktop/libgnomekbd/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/libgnomekbd/default.nix
rename to pkgs/desktops/gnome-2/desktop/libgnomekbd/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/libgweather/default.nix b/pkgs/desktops/gnome-2/desktop/libgweather/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/libgweather/default.nix
rename to pkgs/desktops/gnome-2/desktop/libgweather/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/librsvg/default.nix b/pkgs/desktops/gnome-2/desktop/librsvg/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/librsvg/default.nix
rename to pkgs/desktops/gnome-2/desktop/librsvg/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/libsoup/default.nix b/pkgs/desktops/gnome-2/desktop/libsoup/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/libsoup/default.nix
rename to pkgs/desktops/gnome-2/desktop/libsoup/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/libwnck/default.nix b/pkgs/desktops/gnome-2/desktop/libwnck/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/libwnck/default.nix
rename to pkgs/desktops/gnome-2/desktop/libwnck/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/metacity/default.nix b/pkgs/desktops/gnome-2/desktop/metacity/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/metacity/default.nix
rename to pkgs/desktops/gnome-2/desktop/metacity/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/nautilus/default.nix b/pkgs/desktops/gnome-2/desktop/nautilus/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/nautilus/default.nix
rename to pkgs/desktops/gnome-2/desktop/nautilus/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/rarian/default.nix b/pkgs/desktops/gnome-2/desktop/rarian/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/rarian/default.nix
rename to pkgs/desktops/gnome-2/desktop/rarian/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/scrollkeeper/default.nix b/pkgs/desktops/gnome-2/desktop/scrollkeeper/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/scrollkeeper/default.nix
rename to pkgs/desktops/gnome-2/desktop/scrollkeeper/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/vte/default.nix b/pkgs/desktops/gnome-2/desktop/vte/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/vte/default.nix
rename to pkgs/desktops/gnome-2/desktop/vte/default.nix
diff --git a/pkgs/desktops/gnome-2.28/desktop/zenity/default.nix b/pkgs/desktops/gnome-2/desktop/zenity/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/desktop/zenity/default.nix
rename to pkgs/desktops/gnome-2/desktop/zenity/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/GConf/default.nix b/pkgs/desktops/gnome-2/platform/GConf/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/GConf/default.nix
rename to pkgs/desktops/gnome-2/platform/GConf/default.nix
diff --git a/pkgs/desktops/gnome-2/platform/ORBit2/default.nix b/pkgs/desktops/gnome-2/platform/ORBit2/default.nix
new file mode 100644
index 000000000000..e58dd38e369e
--- /dev/null
+++ b/pkgs/desktops/gnome-2/platform/ORBit2/default.nix
@@ -0,0 +1,14 @@
+{stdenv, fetchurl_gnome, pkgconfig, glib, libIDL}:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+  
+  src = fetchurl_gnome {
+    project = "ORBit2";
+    major = "2"; minor = "14"; patchlevel = "19";
+    sha256 = "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam";
+  };
+
+  buildNativeInputs = [ pkgconfig ];
+  propagatedBuildInputs = [ glib libIDL ];
+}
diff --git a/pkgs/desktops/gnome-2.28/platform/at-spi/default.nix b/pkgs/desktops/gnome-2/platform/at-spi/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/at-spi/default.nix
rename to pkgs/desktops/gnome-2/platform/at-spi/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/audiofile/default.nix b/pkgs/desktops/gnome-2/platform/audiofile/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/audiofile/default.nix
rename to pkgs/desktops/gnome-2/platform/audiofile/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/esound/default.nix b/pkgs/desktops/gnome-2/platform/esound/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/esound/default.nix
rename to pkgs/desktops/gnome-2/platform/esound/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/glib-networking/default.nix b/pkgs/desktops/gnome-2/platform/glib-networking/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/glib-networking/default.nix
rename to pkgs/desktops/gnome-2/platform/glib-networking/default.nix
diff --git a/pkgs/desktops/gnome-2/platform/gnome-common/default.nix b/pkgs/desktops/gnome-2/platform/gnome-common/default.nix
new file mode 100644
index 000000000000..548783abf793
--- /dev/null
+++ b/pkgs/desktops/gnome-2/platform/gnome-common/default.nix
@@ -0,0 +1,11 @@
+{ stdenv, fetchurl_gnome }:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+
+  src = fetchurl_gnome {
+    project = "gnome-common";
+    major = "2"; minor = "34"; patchlevel = "0";
+    sha256 = "1pz13mpp09q5s3bikm8ml92s1g0scihsm4iipqv1ql3mp6d4z73s";
+  };
+}
diff --git a/pkgs/desktops/gnome-2.28/platform/gnome-mime-data/default.nix b/pkgs/desktops/gnome-2/platform/gnome-mime-data/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/gnome-mime-data/default.nix
rename to pkgs/desktops/gnome-2/platform/gnome-mime-data/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/gnome-vfs-monikers/default.nix b/pkgs/desktops/gnome-2/platform/gnome-vfs-monikers/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/gnome-vfs-monikers/default.nix
rename to pkgs/desktops/gnome-2/platform/gnome-vfs-monikers/default.nix
diff --git a/pkgs/desktops/gnome-2/platform/gnome-vfs/default.nix b/pkgs/desktops/gnome-2/platform/gnome-vfs/default.nix
new file mode 100644
index 000000000000..c141da4324df
--- /dev/null
+++ b/pkgs/desktops/gnome-2/platform/gnome-vfs/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl_gnome, pkgconfig, libxml2, bzip2, openssl, samba, dbus_glib
+, glib, fam, hal, cdparanoia, intltool, GConf, gnome_mime_data}:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+
+  src = fetchurl_gnome {
+    project = "gnome-vfs";
+    major = "2"; minor = "24"; patchlevel = "4";
+    sha256 = "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2";
+  };
+
+  buildInputs =
+    [ pkgconfig libxml2 bzip2 openssl samba dbus_glib fam cdparanoia
+      intltool gnome_mime_data
+    ]
+    ++ (if stdenv.isLinux then [hal] else []);
+
+  propagatedBuildInputs = [ GConf glib ];
+}
diff --git a/pkgs/desktops/gnome-2.28/platform/gtk-doc/default.nix b/pkgs/desktops/gnome-2/platform/gtk-doc/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/gtk-doc/default.nix
rename to pkgs/desktops/gnome-2/platform/gtk-doc/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/gtkglext/default.nix b/pkgs/desktops/gnome-2/platform/gtkglext/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/gtkglext/default.nix
rename to pkgs/desktops/gnome-2/platform/gtkglext/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/gtkhtml/01_remove-disable-deprecated.patch b/pkgs/desktops/gnome-2/platform/gtkhtml/01_remove-disable-deprecated.patch
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/gtkhtml/01_remove-disable-deprecated.patch
rename to pkgs/desktops/gnome-2/platform/gtkhtml/01_remove-disable-deprecated.patch
diff --git a/pkgs/desktops/gnome-2.28/platform/gtkhtml/default.nix b/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/gtkhtml/default.nix
rename to pkgs/desktops/gnome-2/platform/gtkhtml/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/intltool/default.nix b/pkgs/desktops/gnome-2/platform/intltool/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/intltool/default.nix
rename to pkgs/desktops/gnome-2/platform/intltool/default.nix
diff --git a/pkgs/desktops/gnome-2/platform/libIDL/default.nix b/pkgs/desktops/gnome-2/platform/libIDL/default.nix
new file mode 100644
index 000000000000..5783976d9a22
--- /dev/null
+++ b/pkgs/desktops/gnome-2/platform/libIDL/default.nix
@@ -0,0 +1,15 @@
+{stdenv, fetchurl_gnome, flex, bison, pkgconfig, glib, gettext}:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+
+  src = fetchurl_gnome {
+    project = "libIDL";
+    major = "0"; minor = "8"; patchlevel = "14";
+    sha256 = "08129my8s9fbrk0vqvnmx6ph4nid744g5vbwphzkaik51664vln5";
+  };
+
+  buildInputs = [ glib gettext ];
+
+  buildNativeInputs = [ flex bison pkgconfig ];
+}
diff --git a/pkgs/desktops/gnome-2.28/platform/libart_lgpl/default.nix b/pkgs/desktops/gnome-2/platform/libart_lgpl/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/libart_lgpl/default.nix
rename to pkgs/desktops/gnome-2/platform/libart_lgpl/default.nix
diff --git a/pkgs/desktops/gnome-2/platform/libbonobo/default.nix b/pkgs/desktops/gnome-2/platform/libbonobo/default.nix
new file mode 100644
index 000000000000..bd268e5ec43a
--- /dev/null
+++ b/pkgs/desktops/gnome-2/platform/libbonobo/default.nix
@@ -0,0 +1,17 @@
+{ stdenv, fetchurl_gnome, flex, bison, pkgconfig, glib, dbus_glib, libxml2, popt
+, intltool, ORBit2, procps }:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+  
+  src = fetchurl_gnome {
+    project = "libbonobo";
+    major = "2"; minor = "32"; patchlevel = "1";
+    sha256 = "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i";
+  };
+
+  preConfigure = "export USER=`whoami`";
+  buildNativeInputs = [ flex bison pkgconfig intltool procps ];
+  buildInputs = [ libxml2 ];
+  propagatedBuildInputs = [ popt glib ORBit2 ];
+}
diff --git a/pkgs/desktops/gnome-2/platform/libbonoboui/default.nix b/pkgs/desktops/gnome-2/platform/libbonoboui/default.nix
new file mode 100644
index 000000000000..6eefd42b38db
--- /dev/null
+++ b/pkgs/desktops/gnome-2/platform/libbonoboui/default.nix
@@ -0,0 +1,16 @@
+{ stdenv, fetchurl_gnome, bison, pkgconfig, popt, libxml2, gtk, libtool
+, intltool, libbonobo, GConf, libgnomecanvas, libgnome, libglade }:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+  
+  src = fetchurl_gnome {
+    project = "libbonoboui";
+    major = "2"; minor = "24"; patchlevel = "5";
+    sha256 = "1kbgqh7bw0fdx4f1a1aqwpff7gp5mwhbaz60c6c98bc4djng5dgs";
+  };
+
+  buildNativeInputs = [ pkgconfig intltool ];
+  buildInputs = [ bison popt gtk libxml2 GConf libglade libtool ];
+  propagatedBuildInputs = [ libbonobo libgnomecanvas libgnome ];
+}
diff --git a/pkgs/desktops/gnome-2.28/platform/libglade/default.nix b/pkgs/desktops/gnome-2/platform/libglade/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/libglade/default.nix
rename to pkgs/desktops/gnome-2/platform/libglade/default.nix
diff --git a/pkgs/desktops/gnome-2/platform/libgnome/default.nix b/pkgs/desktops/gnome-2/platform/libgnome/default.nix
new file mode 100644
index 000000000000..76f213b5fa89
--- /dev/null
+++ b/pkgs/desktops/gnome-2/platform/libgnome/default.nix
@@ -0,0 +1,16 @@
+{ stdenv, fetchurl_gnome, pkgconfig, glib, popt, zlib, libcanberra
+, intltool, libbonobo, GConf, gnome_vfs, ORBit2, libtool}:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+  
+  src = fetchurl_gnome {
+    project = "libgnome";
+    major = "2"; minor = "32"; patchlevel = "1";
+    sha256 = "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj";
+  };
+  
+  buildNativeInputs = [ pkgconfig ];
+  buildInputs = [ popt zlib intltool GConf gnome_vfs libcanberra libtool ];
+  propagatedBuildInputs = [ glib libbonobo ];
+}
diff --git a/pkgs/desktops/gnome-2/platform/libgnomecanvas/default.nix b/pkgs/desktops/gnome-2/platform/libgnomecanvas/default.nix
new file mode 100644
index 000000000000..bf2c0360aa21
--- /dev/null
+++ b/pkgs/desktops/gnome-2/platform/libgnomecanvas/default.nix
@@ -0,0 +1,15 @@
+{ stdenv, fetchurl_gnome, pkgconfig, gtk, intltool, libart_lgpl, libglade }:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+  
+  src = fetchurl_gnome {
+    project = "libgnomecanvas";
+    major = "2"; minor = "30"; patchlevel = "3";
+    sha256 = "0h6xvswbqspdifnyh5pm2pqq55yp3kn6yrswq7ay9z49hkh7i6w5";
+  };
+  
+  buildInputs = [ libglade ];
+  buildNativeInputs = [ pkgconfig intltool ];
+  propagatedBuildInputs = [ libart_lgpl gtk ];
+}
diff --git a/pkgs/desktops/gnome-2.28/platform/libgnomecanvasmm/default.nix b/pkgs/desktops/gnome-2/platform/libgnomecanvasmm/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/libgnomecanvasmm/default.nix
rename to pkgs/desktops/gnome-2/platform/libgnomecanvasmm/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/libgnomecups/default.nix b/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/libgnomecups/default.nix
rename to pkgs/desktops/gnome-2/platform/libgnomecups/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/libgnomeprint/default.nix b/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/libgnomeprint/default.nix
rename to pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/libgnomeprintui/default.nix b/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/libgnomeprintui/default.nix
rename to pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/libgnomeui/default.nix b/pkgs/desktops/gnome-2/platform/libgnomeui/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/libgnomeui/default.nix
rename to pkgs/desktops/gnome-2/platform/libgnomeui/default.nix
diff --git a/pkgs/desktops/gnome-2.28/platform/libgtkhtml/default.nix b/pkgs/desktops/gnome-2/platform/libgtkhtml/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/libgtkhtml/default.nix
rename to pkgs/desktops/gnome-2/platform/libgtkhtml/default.nix
diff --git a/pkgs/desktops/gnome-2/platform/libunique/default.nix b/pkgs/desktops/gnome-2/platform/libunique/default.nix
new file mode 100644
index 000000000000..2661307c9d2a
--- /dev/null
+++ b/pkgs/desktops/gnome-2/platform/libunique/default.nix
@@ -0,0 +1,14 @@
+{stdenv, fetchurl_gnome, pkgconfig, gtk}:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+
+  src = fetchurl_gnome {
+    project = "libunique";
+    major = "1"; minor = "1"; patchlevel = "6";
+    sha256 = "1fsgvmncd9caw552lyfg8swmsd6bh4ijjsph69bwacwfxwf09j75";
+  };
+
+  buildNativeInputs = [ pkgconfig ];
+  buildInputs = [ gtk ];
+}
diff --git a/pkgs/desktops/gnome-2.28/platform/startup-notification/default.nix b/pkgs/desktops/gnome-2/platform/startup-notification/default.nix
similarity index 100%
rename from pkgs/desktops/gnome-2.28/platform/startup-notification/default.nix
rename to pkgs/desktops/gnome-2/platform/startup-notification/default.nix
diff --git a/pkgs/desktops/gnome-3/TODO.txt b/pkgs/desktops/gnome-3/TODO.txt
new file mode 100644
index 000000000000..d3a04425cfb2
--- /dev/null
+++ b/pkgs/desktops/gnome-3/TODO.txt
@@ -0,0 +1,113 @@
+## CORE
+core:NetworkManager:0.9.1.90:
+core:atk:2.2.0:
+core:atkmm:2.22.5:
+core:brasero:3.2.0:
+core:cantarell-fonts:0.0.6:
+core:caribou:0.4.0:
+core:clutter:1.8.0:
+core:clutter-gtk:1.0.4:
+core:cogl:1.8.0:
+core:dconf:0.10.0:
+core:empathy:3.2.0:
+core:eog:3.2.0:
+core:epiphany:3.2.0:
+core:evince:3.2.0:
+core:evolution-data-server:3.2.0:
+core:folks:0.6.3.2:
+core:gcalctool:6.2.0:
+core:gdk-pixbuf:2.24.0:
+core:gdm:3.2.0:
+core:gjs:1.30.0:
+core:glib:2.30.0:
+core:glib-networking:2.30.0:
+core:glibmm:2.30.0:
+core:gnome-backgrounds:3.2.0:
+core:gnome-bluetooth:3.2.0:
+core:gnome-contacts:3.2.0.1:
+core:gnome-control-center:3.2.0:
+core:gnome-desktop:3.2.0:
+core:gnome-disk-utility:3.0.2:
+core:gnome-doc-utils:0.20.6:
+core:gnome-icon-theme:3.2.0:
+core:gnome-icon-theme-extras:3.0.0:
+core:gnome-icon-theme-symbolic:3.2.0:
+core:gnome-keyring:3.2.0:
+core:gnome-menus:3.2.0:
+core:gnome-online-accounts:3.2.0.1:
+core:gnome-packagekit:3.2.0:
+core:gnome-panel:3.2.0:
+core:gnome-power-manager:3.2.0:
+core:gnome-screensaver:3.2.0:
+core:gnome-session:3.2.0:
+core:gnome-settings-daemon:3.2.0:
+core:gnome-shell:3.2.0:
+core:gnome-system-monitor:3.2.0:
+core:gnome-terminal:3.2.0:
+core:gnome-themes-standard:3.2.0.2:
+core:gnome-user-docs:3.2.0.1:
+core:gnome-user-share:3.0.0:
+core:gnome-utils:3.2.0:
+core:gnome-video-effects:0.3.0:
+core:gobject-introspection:1.30.0:
+core:gsettings-desktop-schemas:3.2.0:
+core:gst-plugins-base:0.10.35:
+core:gst-plugins-good:0.10.30:
+core:gstreamer:0.10.35:
+core:gtk+:3.2.0:
+core:gtk+:2.24.6:
+core:gtk-doc:1.18:
+core:gtkmm:3.2.0:
+core:gucharmap:3.2.0:
+core:gvfs:1.10.0:
+core:libgnome-keyring:3.2.0:
+core:libgnomekbd:3.2.0:
+core:libgtop:2.28.4:
+core:libgweather:3.2.0:
+core:libpeas:1.2.0:
+core:librsvg:2.34.1:
+core:libsoup:2.36.0:
+core:libwnck:3.2.0:
+core:metacity:2.34.1:
+core:mm-common:0.9.5:
+core:mousetweaks:3.2.0:
+core:mutter:3.2.0:
+core:nautilus:3.2.0:
+core:network-manager-applet:0.9.1.90:
+core:notification-daemon:0.7.2:
+core:pango:1.29.4:
+core:pangomm:2.28.3:
+core:polkit-gnome:0.103:
+core:sushi:0.2.0:
+core:totem-pl-parser:2.32.6:
+core:vino:3.2.0:
+core:vte:0.30.0:
+core:yelp:3.2.0:
+core:yelp-tools:3.2.0:
+core:yelp-xsl:3.2.0:
+core:zenity:3.2.0:
+
+## APPS
+apps:accerciser:3.2.0:
+apps:aisleriot:3.2.0:
+apps:anjuta:3.2.0:
+apps:cheese:3.2.0:
+apps:devhelp:3.2.0:
+apps:evolution:3.2.0:
+apps:file-roller:3.2.0:
+apps:gedit:3.2.0:
+apps:glade:3.10.0:
+apps:gnome-color-manager:3.2.0:
+apps:gnome-devel-docs:3.2.0:
+apps:gnome-documents:0.2.0:
+apps:gnome-games:3.2.0:
+apps:gnome-nettool:3.0.0:
+apps:hamster-applet:2.91.2:
+apps:nautilus-sendto:3.0.1:
+apps:nemiver:0.9.0:
+apps:orca:3.2.0:
+apps:rygel:0.12.3:
+apps:seahorse:3.2.0:
+apps:totem:3.2.0:
+apps:vinagre:3.2.0:
+
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
new file mode 100644
index 000000000000..b82ca22d94fa
--- /dev/null
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -0,0 +1,8 @@
+{ callPackage }:
+
+{
+  # Ensure that we use dbus-glib built with gtkLibs3x.glib
+  dbus_glib = callPackage ../../development/libraries/dbus-glib { };
+
+  GConf = callPackage ./platform/GConf.nix { };
+}
diff --git a/pkgs/desktops/gnome-3/platform/GConf.nix b/pkgs/desktops/gnome-3/platform/GConf.nix
new file mode 100644
index 000000000000..824aa8843a7e
--- /dev/null
+++ b/pkgs/desktops/gnome-3/platform/GConf.nix
@@ -0,0 +1,16 @@
+{ stdenv, fetchurl_gnome, glib, dbus_glib, pkgconfig, xz, libxml2, gtk, intltool }:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+
+  src = fetchurl_gnome {
+    project = "GConf";
+    major = "3"; minor = "2"; patchlevel = "0"; extension = "xz";
+    sha256 = "02vdm6slc2mdw0yfl6lh7qawqcb2k7sk6br21fdj1vfp55ap8wgk";
+  };
+
+  propagatedBuildInputs = [ glib dbus_glib libxml2 gtk ];
+  buildNativeInputs = [ pkgconfig xz intltool ];
+
+  configureFlags = "--disable-orbit";
+}
diff --git a/pkgs/desktops/kde-3/kdebase/default.nix b/pkgs/desktops/kde-3/kdebase/default.nix
deleted file mode 100644
index 6a6a1ea4a1e4..000000000000
--- a/pkgs/desktops/kde-3/kdebase/default.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, x11, xlibs, zlib, libpng, libjpeg, perl
-, qt, kdelibs, openssl, bzip2, fontconfig, pam, hal, dbus, glib
-}:
-
-# Note: the glib dependency is needed for nspluginviewer.
-
-let version = "3.5.10"; in
-
-stdenv.mkDerivation {
-  name = "kdebase-${version}";
-  
-  src = fetchurl {
-    url = "mirror://kde/stable/${version}/src/kdebase-${version}.tar.bz2";
-    sha256 = "0qbbw78b725kf35p5jx11zq0246zm15pyyhmlpkz4cn5527rvakp";
-  };
-
-  buildInputs = [
-    pkgconfig x11 zlib libpng libjpeg perl qt kdelibs openssl bzip2
-    fontconfig pam hal dbus glib
-    xlibs.libXrandr xlibs.libXinerama xlibs.libXau xlibs.libXdmcp
-    xlibs.libXcursor xlibs.libfontenc xlibs.imake xlibs.bdftopcf
-    xlibs.libxkbfile xlibs.xf86miscproto xlibs.libXxf86misc
-    xlibs.scrnsaverproto xlibs.libXScrnSaver
-    xlibs.libXcomposite xlibs.libXfixes
-  ];
-
-  configureFlags = ''
-    --without-arts 
-    --with-ssl-dir=${openssl}
-    --with-extra-includes=${libjpeg}/include
-  '';
-
-  # Prevent configure from looking for pkg-config and freetype-config
-  # in the wrong location (it looks in /usr/bin etc. *before* looking
-  # in $PATH).
-  preConfigure = ''
-    substituteInPlace configure \
-      --replace /usr/bin /no-such-path \
-      --replace /usr/local/bin /no-such-path \
-      --replace /opt/local/bin /no-such-path
-  '';
-
-  # Quick hack to work around a faulty dependency in
-  # konqueror/keditbookmarks/Makefile.am (${includedir} should be
-  # ${kdelibs} or so).
-  preBuild = ''
-    ensureDir $out/include
-    ln -s ${kdelibs}/include/kbookmarknotifier.h $out/include/
-  '';
-  
-  postInstall = "rm $out/include/kbookmarknotifier.h";
-
-  # Work around some inexplicable build failure starting in kdebase 3.5.9.
-  LDFLAGS = "-L${kdelibs}/lib";
-
-  meta.platforms = stdenv.lib.platforms.linux;
-}
diff --git a/pkgs/desktops/kde-4.7/default.nix b/pkgs/desktops/kde-4.7/default.nix
index 0e2377f25359..aeb62fc07405 100644
--- a/pkgs/desktops/kde-4.7/default.nix
+++ b/pkgs/desktops/kde-4.7/default.nix
@@ -1,7 +1,7 @@
 { callPackage, callPackageOrig, stdenv, qt47 }:
 
 let
-  release = "4.7.1";
+  release = "4.7.2";
 
   # Need callPackageOrig to avoid infinite cycle
   kde = callPackageOrig ./kde-package {
diff --git a/pkgs/desktops/kde-4.7/kde-package/4.7.1.nix b/pkgs/desktops/kde-4.7/kde-package/4.7.1.nix
deleted file mode 100644
index 43de59d7a2e1..000000000000
--- a/pkgs/desktops/kde-4.7/kde-package/4.7.1.nix
+++ /dev/null
@@ -1,273 +0,0 @@
-{stable=true;
-hashes=builtins.listToAttrs[
-  {name="blinken";value="0946y6g67bqbkdcnqas97izr514190f08qzq5jg12xjv3q5i9xnr";}
-  {name="cantor";value="1yipf6019nr1vacdl1mp6wwffwaq7khyh1rp5wx0f3y70p7q6w8v";}
-  {name="gwenview";value="00vxhpg2481pz7bh0kac1fsl8dawjlxm7x38y572802qbhd02jr4";}
-  {name="kalgebra";value="1rkl8jyiqi9ymwl4inflgwg2252k5x5yag25zr8crwg1ax9rvmhv";}
-  {name="kalzium";value="110l065vwjfyjr0130xklrsr3jwlqb27fv9mhc9w5v9i5shl79xm";}
-  {name="kamera";value="17sac0bydq4d2rv63jzjy87dry9g3n6chw7gg6nncisvkgz1dyz2";}
-  {name="kanagram";value="10nhgb1gf5vh6767xrbfwicdhw4kd3za4lnwrsww823dqpi6cryz";}
-  {name="kate";value="1n3zs4rs3y4z9g2ssiqi6jy7c2li0pah2p0vsdjw0ifq0xqvvz67";}
-  {name="kbruch";value="0x3y5gbq4xhqjrp4g91v3wjggrimxx6k8nsvny0ykriqql6xzq77";}
-  {name="kcolorchooser";value="1fwjf0fys3iz4c86jfhzq6j43ps7jiab9qhspkv6cvnv1dyi0ryy";}
-  {name="kdeaccessibility";value="1980y2vqxkhz40xkkljqawkafshhrimlyb7hvk5waz9a2jz0vwwj";}
-  {name="kdeadmin";value="1614acnvycihysxy3k26q8xsxswsx73m32n0c34hb0d5xj87ndk0";}
-  {name="kdeartwork";value="0xsmq5x9lbplj3rxza0lxxdbnz5srmxjzw993rzwj9687jvgi6hv";}
-  {name="kde-baseapps";value="1jpfslapsl4l7yqxq4cry0dwj2hps2s6kayj81dcs2crqrz75plc";}
-  {name="kdegames";value="0b3zljmkhyml31kfj9n75sa9h3xknn8v0y099mdc1wcny7p7zyrl";}
-  {name="kdegraphics-strigi-analyzer";value="1xnaipyn29wa5i26rgv2jbijii64qklz5fgcy49zpd0pxqnkxxwl";}
-  {name="kdegraphics-thumbnailers";value="07nvydwzzwnr1a5x3v732mry1qw7lvn8l3h3b73r6fvmnhs91iyp";}
-  {name="kdelibs";value="1gwgilr2m95m8w4q55d79g3qsgpq5jv7aq7crq7xbrhz3smv6ciw";}
-  {name="kdemultimedia";value="1p76vrzr1wmlpnkspy9nf8v1am6bdi5wc6zl4y9lp6y6qv9diz1w";}
-  {name="kdenetwork";value="1hmcljp8d85zyi55314js7jl5ihf060hji5gcm6s4s95xqg7hwvh";}
-  {name="kdepim";value="09lvdpq8nm9b97g0xlmc2ikklq7pc4c61v9lz53mb8c1hi9yxasd";}
-  {name="kdepimlibs";value="0svj7fqkn3g8ryip9qy4rh0j7xnjgwhv45rbz4s6lsjh81ipnc4j";}
-  {name="kdepim-runtime";value="0iy0sph5cvzmyn2gi0had5xhppdxdhs5dqm7lm79lk27i8913sjk";}
-  {name="kdeplasma-addons";value="1xrdqhaklf2l5043l1qhfjqyr6985m5j1jzd8rgabkwa9dv5bb4c";}
-  {name="kde-runtime";value="1qppx56xdrmapl0l0fv2p502yg470hiwhzdjv5kiw0akwl7g2ll5";}
-  {name="kdesdk";value="0db4kiikf0bl07m09cj01id0ivl1hm30pr5401xscqask7ddq2v9";}
-  {name="kdetoys";value="02zjz6h62nlxhjhsv5apxyhs140h6dc5i5laxi68j8fi4p8gyk5a";}
-  {name="kdeutils";value="0s7lw9qiyzn4wccbgalrsb91hspqniaf93x94s3gcw7jmk4znwwd";}
-  {name="kde-wallpapers";value="17x3npychdv9z90a6y2yxxscnczrpzkd8zanml3y1kkx1kcwvkrv";}
-  {name="kdewebdev";value="0ll5s60231vc6k989ahfw7k9wk0r6ml3icg25zj90785ildqqrnz";}
-  {name="kde-workspace";value="15kvc30w4ysjm7il7lkfls3xm9v4azhlz2jv75n5bp5h41kbznl5";}
-  {name="kgamma";value="1fzhhjqz6x19lk6c77mmq94bjk5f8qj0pq9c7923gd9d644azbsc";}
-  {name="kgeography";value="0s9nnsjma95j402wlcswrqdjz9csxbnxpnshcg5xxj3135122yv6";}
-  {name="khangman";value="04frra3qj4jkmhlsr4im6sjhyv7rs32fj88vphzwx0nbq086i078";}
-  {name="kig";value="1si3zi3w75mg9sd2imbs6f2z0ywkzbvg9cj672fmamczw5wrjp6n";}
-  {name="kimono";value="1bqw23g6c1l3bxnnzgz4pn5j2w2vxwfi1nrdjcbkfwsa4px2q7bn";}
-  {name="kiten";value="0i3dp8jqqjlx2hjbqwc01qaja9bh7aas0m4s75py5j2im7gkxncs";}
-  {name="klettres";value="1mxpxh4p16jnxmd2gff4ink222hbd1qxigr3hn8jc3a0kwrnpxdk";}
-  {name="kmplot";value="1adw71m9h6z85lwavsjsbdcnlgkchic6y5110hmb9x067n5hrfkq";}
-  {name="kolourpaint";value="01lc73vvpl5jmzvx9vi857k69mww97rd7fnqm2776d7dbkgpzzs8";}
-  {name="konsole";value="0ywy8xy38v058hfl6yakxqz355y64mmqbhxf0j1h0zz50744ww1r";}
-  {name="korundum";value="1ib02m2dr9ab1v1xxcngdisprr7mlll3h52d9lrjj6clnxlxz1sz";}
-  {name="kross-interpreters";value="1glb2hkj84zmcjjq3sh79w7g4y0v25ddd9hjiilppskwnqby16bb";}
-  {name="kruler";value="18h5kp7pni6j9nqfxzwfcfnv8sbgg1s656clzyi7f9znsw8bgzvd";}
-  {name="ksaneplugin";value="0mk7q66h6v5carkywkpjr5893r01vgcqf0lx9c1fq7n0mn22zl9s";}
-  {name="ksnapshot";value="0wf1bwkrhp714fhhh3y82p35rxk7prwqsn89nsl7rj3l7gryismp";}
-  {name="kstars";value="0bbnf8vnhinmgb03dab7ji2rpb3k2d901nm5r11lxwjdv58d4vkn";}
-  {name="ktouch";value="1b354imxnfv4yklzh0xd358gydczmlijkkjm2ks04111895h97b1";}
-  {name="kturtle";value="147sn2lrzxgfwiqxziymjvvy67sgwmdfcrgqvv93rmp5r9y3zmiy";}
-  {name="kwordquiz";value="1a2vifgixn6zgrp4nm5lvq41v24xp4nbnv8a7c9p53chx3y8i2px";}
-  {name="libkdcraw";value="1h49g41c2sxxzx6w865k2ljiqlgill7imh1pnkw1wsfwk4ii9msz";}
-  {name="libkdeedu";value="058gidzzda4ca4h2125ja17gdfq52zqdh70c22f6p4ph47qw503m";}
-  {name="libkexiv2";value="0vkl2gnp7saw26crj2hbg953knrv3v1pjd9c5d29vckdn5q417zr";}
-  {name="libkipi";value="00wnm45v65my7dp7g3sri54prjk1mkqi4nqf3f5xisnshi3vzr5f";}
-  {name="libksane";value="1w0d164lnc576irrxfi1f6rzv85wn5gawqp92yg8zqhna1zxjhzp";}
-  {name="marble";value="1964ix9dcssw4bny944rdwhxifnj5ay6nmbhvbvwq1d77ckzz9sf";}
-  {name="mobipocket";value="1npmbkvrg1kil6sh91m79kavfrivkk3jpb0c0spm0s93b85pgvky";}
-  {name="okular";value="0fw49r0hskhscml18715yqxxwrzigrx0rkhcljgckss7bksyfsfn";}
-  {name="oxygen-icons";value="1gwpsh7iwmzl1n9wzp8q95jlimbmygcrqwkzzp9jwsyfl9qn86y5";}
-  {name="parley";value="0c8k3sxpzxnaldvyskfp86cnhrzabq8alkv32ikr3y948ib9q31m";}
-  {name="perlkde";value="01ysn4bq5zjc0b8gqyinx08scimiix505zvdw13a9axfb4vnk05j";}
-  {name="perlqt";value="067hj2fw2jvd6d0ywdmq6y630ygm6xjrvkrnhm3czqxpfs6hp2mk";}
-  {name="pykde4";value="106kjcbg2gpgj7kypg79yjb2b3jbcc8zfslc65vkb32ivipk0j16";}
-  {name="qtruby";value="1dp3zdh5m3yp55r7pwxi4nqfjsfv84qcg9n5msp7lw78k04xidg7";}
-  {name="qyoto";value="1kynbz0gpjbq5xdpfv1by39cxji1z3wisv8c6bgxz7yknqp16qix";}
-  {name="rocs";value="1mlvw0fb83f0vjdf0amlx92w2fvjl79rcvhlv267vsw0idd3vp2g";}
-  {name="smokegen";value="1j0apyqv17fycysfjc0mf4rhq2g6zwn9fz7dsib1hylza813smxr";}
-  {name="smokekde";value="1zgf2pcxwxzhjhab46q2ir1ys4mq2xf9ais9473xc6xjvrbg74dd";}
-  {name="smokeqt";value="19xfpm9as6sbsfjsn8qiqnlfsqwpri56886kl9kp7qhr6dga54ma";}
-  {name="step";value="1819shriclbp1ny28gjik1mg1c3mvm4drk0c84zcq2vj6dz2fp61";}
-  {name="svgpart";value="1wcjbhl608y7a0rzwziaja7zi1kjixcnmwaik5xyss2hmx59m934";}
-];
-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="kdeedu";
-  split=true;
-  pkgs=[
-    { 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="kde-baseapps";
-sane="kde_baseapps";  split=true;
-  pkgs=[
-    { name="kate";  }
-    { name="kde-baseapps"; sane="kde_baseapps"; }
-    { name="konsole";  }
-  ];
-}
-{ module="kdeaccessibility";  split=false;
-  pkgs=[
-    { name="kaccessible"; }
-    { name="kmag"; }
-    { name="kmouth"; }
-    { name="kmousetool"; }
-    { name="jovie"; }
-  ];
-
-}
-{ 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="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="kdeutils";  split=false;
-  pkgs=[
-    { name="ark"; }
-    { name="kcalc"; }
-    { name="kremotecontrol"; }
-    { name="kdf"; }
-    { name="kfloppy"; }
-    { name="printer-applet"; sane="printer_applet";}
-    { name="filelight"; }
-    { name="kcharselect"; }
-    { name="kgpg"; }
-    { name="ktimer"; }
-    { name="kwallet"; }
-    { name="sweeper"; }
-    { name="superkaramba"; }
-  ];
-
-}
-{ 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.7/kde-package/4.7.2.nix b/pkgs/desktops/kde-4.7/kde-package/4.7.2.nix
new file mode 100644
index 000000000000..dafde475b241
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kde-package/4.7.2.nix
@@ -0,0 +1,273 @@
+{stable=true;
+hashes=builtins.listToAttrs[
+  {name="blinken";value="0597y7xf6908i03mzrc4k6pfjc9fzlxc1d72rg8153j9183yadr1";}
+  {name="cantor";value="13cxw0iq0radipd75yl5pjs0qq3px9khjnphrwcq86ss9jivv70y";}
+  {name="gwenview";value="0zngbigs8g75wwfrhi5f64pxpg77fggd2d54ly4mh3kr1h79ndxs";}
+  {name="kalgebra";value="1dqiavpc91sk8418ahvv4knim0k0ifs1yj2c9bng4aq46kmi7wl5";}
+  {name="kalzium";value="0aysmjnm9iy20prx0q294szp0f9ghmj2mbcix7ds8977l630pkhm";}
+  {name="kamera";value="1kbfhfr3l7iffv4lb8fzik8zdx9kqskpalzr76i7awdba0qqx37n";}
+  {name="kanagram";value="16f37j66lpyg96f3clrh856fl4chlpmxlg3pqjp6lfad47b1191r";}
+  {name="kate";value="1qhvchk1kvs4a9hsd2zxfvn6hrnn883ic8ba6pvwnzvqpdaqijq4";}
+  {name="kbruch";value="0hxcdwyybwsxg07vl83hypn8xzpnn5747zapwv2sg2hxwkccw4sj";}
+  {name="kcolorchooser";value="0hp849nb3hhn48d49kdbl8b95d1l5ychgc6qwfn9nvrvhazgs51q";}
+  {name="kdeaccessibility";value="179k9wmy5j0iig3n0xlzpry7j0li6bv7q1wpqra5hsmlk3ns440s";}
+  {name="kdeadmin";value="0mycw08xw2gbqd09mz6vxwhpxmn6c2isch4kaisha61zz8rm827p";}
+  {name="kdeartwork";value="0cq75mz1s6qbaargdpk435bnllvk6a33zspplw33y9q4l3xyih74";}
+  {name="kde-baseapps";value="1yhbfr1nrdkyklyayvbfdbm1jhdyvkgic9dx1dxpbjfgv552h10i";}
+  {name="kdegames";value="046kk60y7ajv4vagffhnc6jpslmggs1700ds4xl5ina2vhazwl31";}
+  {name="kdegraphics-strigi-analyzer";value="029zw71xc2r3g5d58yv09vzwyv7zd9r87vs1sqpa8jglpysaml9j";}
+  {name="kdegraphics-thumbnailers";value="0sp44m3nn2vv926h91f13kar2zi30l1y445jcdinlpckbzkgyyc8";}
+  {name="kdelibs";value="0f4b7ycs79qx360mhwf1jsbcawhp0sp76pbk46d20g0ms8rhp9xz";}
+  {name="kdemultimedia";value="0078gfx96bqzj26lwyz6jpln07963v4w8qqxg5wc53sd3w8f39m5";}
+  {name="kdenetwork";value="0vy3ygqszy8ishb4sbipvil148yhv73r8mbj6p10lqnrrah0c5n6";}
+  {name="kdepim";value="0c36q3z1krwpzx2naj1gqirvsvl5sadh0an9csa2159vqyzxld8n";}
+  {name="kdepimlibs";value="016jazpgnpzcvxvzn43fl5ihw13ckq16ggb97fzmpahkrh01yyc2";}
+  {name="kdepim-runtime";value="00a89zzqh7005ig4lxz1fypdb0hmxwibs78yk0fyr5qdjdd3i90k";}
+  {name="kdeplasma-addons";value="0cf93s7g3zbrdmkwia0djj7x5qas2q77vgajpab8cwj3r6cnm5bi";}
+  {name="kde-runtime";value="0b8sq97xi0mh0iiwzrfzar3kv2dsiljq3c2bbxgvwlf942g7w5j6";}
+  {name="kdesdk";value="1gi0p4xgyaflkwyv8fmcjfsc6gav83k78ib8awy42cwn8bwpsdy9";}
+  {name="kdetoys";value="0sd9p4rldz07w6sbwsx5b1iwgpljhkycphlnj698qll2dqrjm6b1";}
+  {name="kdeutils";value="15igw1jnvzdr1jf6jbip1xw5lj5kpk6ffgp6wmnlyssmqj7i7snd";}
+  {name="kde-wallpapers";value="0hcgjrqdj1lvgy098lglca1mi77gdg4332hp494klwvmhny1j0li";}
+  {name="kdewebdev";value="0g4fw17pivck9av8xd6dij6q70vr4zjbr2cpngrm0nmzyl5xiky7";}
+  {name="kde-workspace";value="1c4y7wnizj7b9nq97yypi80ylsli7pny5pzdr477015dh1kls5va";}
+  {name="kgamma";value="14p5xwdlyg8za1rwp809axfnybgm0dxhxhpfr97gslqqsnncfq74";}
+  {name="kgeography";value="114m0bs18bjl0f1rvp2v0w6wi0zkw1qk9dy5z8axk5q8dykhxdxs";}
+  {name="khangman";value="07rsfx6lmhfvbm46bzl01cg3l6rbib3phwnf5xdq1b6rifw5d5ks";}
+  {name="kig";value="0264vyq18rx16nq62vqk1g5ip5i7gnpy9x6z6f6p6vdqfb1bankn";}
+  {name="kimono";value="1pkzr2d6axwrbf7n10d48fmkxa1l7i79nf39p12abkh5gy5k6rbn";}
+  {name="kiten";value="0clbfp5n5mvkps6f4c9jx4bfb367c3461sy6yrl35q32j2s0d7dh";}
+  {name="klettres";value="16ywszx3nr6lszdx6sj0cc5nv92db1j7wxn8np24ijvhvvf2qv6c";}
+  {name="kmplot";value="0y7zs9zacx73hbxab2w15h1rpvdsqcncpn80qkhgfg7kiw1mgnvy";}
+  {name="kolourpaint";value="1s2zhw4mc2pq1bzbgkd37iswz8bar38vhvind7xl14n7fmh1a456";}
+  {name="konsole";value="0f3dwwfcrqa0qyqhjzl7r0v5yc91j018gxbyka0633r5v657yp2a";}
+  {name="korundum";value="1d94rlaj89yshvywv3nwvbg7yjdysmxxv9zi4q4lfa8f210pay6b";}
+  {name="kross-interpreters";value="0d3gjj1mj8nzawdcn5g60khmzh8k9jxn8invzy9xcdywdbpdyda2";}
+  {name="kruler";value="1gb7p0b6zbcq2kjf74rcblxjyzn6ffy4pp4mfhynhcnh2fv0nniw";}
+  {name="ksaneplugin";value="04lzyibnxmskszrb6f3k85lxc8ifrlwy71pqy080bfxsmw6avsra";}
+  {name="ksnapshot";value="0rvz9vr2xaq7ixf0rm7snlhkam9cga0w10vmglsrylwi2cch1j59";}
+  {name="kstars";value="13xdbigh7rjcy9ycywz5h3r3q918yqsjdwf4b56w63bi89bf69yx";}
+  {name="ktouch";value="0xxzw58v6395vqs45n2d8865ixyjpqzjna2ahw8j0hv997x4cmc4";}
+  {name="kturtle";value="18hcy1zwyi1s90ypm2sh3s6myqz5hkrsjgyyiabk44rw8ikgsa8a";}
+  {name="kwordquiz";value="1zl21d58z8qrrs898czba902rzvz0xr9ndm1dychnrwmbzm5rjj8";}
+  {name="libkdcraw";value="0lzia65czgrqkl31sfzpnvpzqhrm01zx6vxr3fx0ckmz35rmy5sk";}
+  {name="libkdeedu";value="1bj1f92b408ccf55icsvk0yssp7ilsglcz0k1j5z1bc9lzmdfn3h";}
+  {name="libkexiv2";value="0wfzskm6c96cf7k6f29spxy1x2p15wkmn3r4n3qpxlc8wk4psrg1";}
+  {name="libkipi";value="0nf9cx0p2allmhfbl2yab5xi6mrc9gqkfmndfjdd271bwrgy4w1y";}
+  {name="libksane";value="0zaygvwxxs2i2jprkn6l7mmr5563523xgv19h7chfqbwg4r3y6yc";}
+  {name="marble";value="1i1k2shnzkr0dddd7f6l6xxfhgn0dvvx3bqk596avzpn4bsxinfr";}
+  {name="mobipocket";value="0j9saz9chk2v2jcpiyv3b43z8hpdf4npxfnjqhahqq71pv13fzyi";}
+  {name="okular";value="1qalyxr3cc78yk18601l1z4sflw5bg96jy1c1pkg79zjcdrb1n7x";}
+  {name="oxygen-icons";value="0814knrcisp0mpcr9fcmmbpf140s8jbdrrzw4k3rnk81vffh8w8y";}
+  {name="parley";value="10wkkv3fknbv7d56rnfz1vzs3npyfa9c4b7bmaqzj0399p7l1k65";}
+  {name="perlkde";value="1za9gvh8pvdb9wp79cf9sv1f6hn8is7nq4is9qh46k56z2pgzp92";}
+  {name="perlqt";value="1xindf7sb22wisvcqrfgjb6kjcx4vhapijjgkf2j9xyjlx4fiafa";}
+  {name="pykde4";value="1qap0n4kd247nl5bn9l1015ajpmbzwafqznf8a3i36f77yg1misf";}
+  {name="qtruby";value="1p1f1qkfzr5kl88pgb90slm27vi1yjxxbi62rph0qdkp9crhvgn4";}
+  {name="qyoto";value="1yb99hqqsrw28nf2zhaq6v3aw67qvl83jylgr47rczixdgazzqg0";}
+  {name="rocs";value="1lzkvww0ygq6cl6qzsnmbblbnp4lxhzvc8kiapn7ydcyas7sy21z";}
+  {name="smokegen";value="0yb8w6n8dyivcq97xkqxws60zqzqzh6babml1g022yb35ka4f2dk";}
+  {name="smokekde";value="1zqm1gxbdpvccx777v2vy200n314nrvslabf2mb1y61dxqwkvkmi";}
+  {name="smokeqt";value="0qhksy9z03kfmgbgvnch4vxbxyzcng0f7cy337s50cnh4rabl017";}
+  {name="step";value="01hdl1z7sd2a5sgx1n96anbwsvs6dmd3r4q8dpn5ha657xc38qy1";}
+  {name="svgpart";value="05199j918xk16bq5mmqdc2w3agrknngxsrk5gxas6rflhg8v4qz3";}
+];
+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="kdeedu";
+  split=true;
+  pkgs=[
+    { 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="kde-baseapps";
+sane="kde_baseapps";  split=true;
+  pkgs=[
+    { name="kate";  }
+    { name="kde-baseapps"; sane="kde_baseapps"; }
+    { name="konsole";  }
+  ];
+}
+{ module="kdeaccessibility";  split=false;
+  pkgs=[
+    { name="kaccessible"; }
+    { name="kmag"; }
+    { name="kmouth"; }
+    { name="kmousetool"; }
+    { name="jovie"; }
+  ];
+
+}
+{ 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="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="kdeutils";  split=false;
+  pkgs=[
+    { name="ark"; }
+    { name="kcalc"; }
+    { name="kremotecontrol"; }
+    { name="kdf"; }
+    { name="kfloppy"; }
+    { name="printer-applet"; sane="printer_applet";}
+    { name="filelight"; }
+    { name="kcharselect"; }
+    { name="kgpg"; }
+    { name="ktimer"; }
+    { name="kwallet"; }
+    { name="sweeper"; }
+    { name="superkaramba"; }
+  ];
+
+}
+{ 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.7/l10n/manifest-4.7.0.nix b/pkgs/desktops/kde-4.7/l10n/manifest-4.7.0.nix
deleted file mode 100644
index d9eba5199429..000000000000
--- a/pkgs/desktops/kde-4.7/l10n/manifest-4.7.0.nix
+++ /dev/null
@@ -1,262 +0,0 @@
-[
-{
-  lang = "ar";
-  saneName = "ar";
-  sha256 = "16533377hxcb6xy92qw74yp2cvyrmi5bjxjh62xbqf7m3967nj56";
-}
-{
-  lang = "bg";
-  saneName = "bg";
-  sha256 = "06i189a8z0z7jv9mi1cvxc1k57gmfsf207m28rg30jhbd4gd5py7";
-}
-{
-  lang = "bs";
-  saneName = "bs";
-  sha256 = "1sqcd5jdl04ax6r615rqs4nlsc4xc1xsvc8cdi5pplwilsys0flm";
-}
-{
-  lang = "ca";
-  saneName = "ca";
-  sha256 = "1ghhl6yxhcjakv41lznhdp1nx9jp7g75g305cz3n26nbpwaz4mkd";
-}
-{
-  lang = "ca@valencia";
-  saneName = "ca_valencia";
-  sha256 = "16sb3kcjc7s02sg9bi3678cdv7hqn3xlpcsa07iwgxdzgh6yp6x0";
-}
-{
-  lang = "cs";
-  saneName = "cs";
-  sha256 = "1g52dbp4jwn67p90jkd209csn3nrc1aznpsay5i9919240wsb4mm";
-}
-{
-  lang = "da";
-  saneName = "da";
-  sha256 = "168hd69gznsarvxbzgs7hjmxjhhxsccwjfgvf328qbcb88n7570w";
-}
-{
-  lang = "de";
-  saneName = "de";
-  sha256 = "07a5f6k22pkps3a0n1ph80f1affmmrlxf1v6ywxdna64si97za43";
-}
-{
-  lang = "el";
-  saneName = "el";
-  sha256 = "1kv1wx91mgsrkscx6jf9sjl2li5n8z39hnbiyl9zy2364ximjb3c";
-}
-{
-  lang = "en_GB";
-  saneName = "en_GB";
-  sha256 = "12y9m2c0kaigi0qdisw7w2dxf40xz3ihqkwk2x2vbivzsd91ai44";
-}
-{
-  lang = "es";
-  saneName = "es";
-  sha256 = "0manicnw3l3kg6qmwq7894cjlwh8091nw6s1w31qvpx7grxznp4w";
-}
-{
-  lang = "et";
-  saneName = "et";
-  sha256 = "06xm411l20qqgfv12wxbz3x6daahwlzpp07n3ifi7jh6wzv1j0nh";
-}
-{
-  lang = "eu";
-  saneName = "eu";
-  sha256 = "08y65gkpq2ziylddzk44d2rp8mprr3bayxsgl4zw8plmyj6p79fs";
-}
-{
-  lang = "fi";
-  saneName = "fi";
-  sha256 = "1xdgnn06psg84a60ssd85855jw93bi787aawyrh7n77q5za8rs83";
-}
-{
-  lang = "fr";
-  saneName = "fr";
-  sha256 = "1l6ljqy5aa6wbvkywi47mvkw28whcdwcdd3hrqy8kyxf064d5lk6";
-}
-{
-  lang = "ga";
-  saneName = "ga";
-  sha256 = "1nnh11hbqvb6gxgfp086algbjiw5j4rs5fxzl74i8935qhjz12pk";
-}
-{
-  lang = "gl";
-  saneName = "gl";
-  sha256 = "0sqgcjrzr422iy9qmyyzhmwah696gkv810xh6hd71yv3416wpnjk";
-}
-{
-  lang = "he";
-  saneName = "he";
-  sha256 = "1hid5izn5g63iaz634x2x7ahylf99ccjms21461lg4w72mb732f9";
-}
-{
-  lang = "hr";
-  saneName = "hr";
-  sha256 = "0kqk28rcdawdxz1h8dph1ik49ag2nxbbq3712fpjylswqa0dh4v3";
-}
-{
-  lang = "hu";
-  saneName = "hu";
-  sha256 = "1gnsvyw412j2k9maac2sflvfnv1mf4lwaqcxrhyb5zfvz7pflfqh";
-}
-{
-  lang = "ia";
-  saneName = "ia";
-  sha256 = "03a89wb03yc57d5nxvawdzvc7qzzcwj5r1gri7p6khjbl6r5gx63";
-}
-{
-  lang = "id";
-  saneName = "id";
-  sha256 = "0r0c7yd3sq4bwqa9l3j8fc7bhdfnr14q1270l2vvn1r4r9y4myb7";
-}
-{
-  lang = "is";
-  saneName = "is";
-  sha256 = "00m3sfrcawqva93w90y29lf747b43pmcgd97n6iii2alk8z1xc6b";
-}
-{
-  lang = "it";
-  saneName = "it";
-  sha256 = "1v6gl0bbml5ddz60sc7dk0pirnjdmpiqhksbyqbmx9d650x5jpm0";
-}
-{
-  lang = "ja";
-  saneName = "ja";
-  sha256 = "0y0nwy805w0x90kfmpkldjllaq5qrs031kl2r2v67n0i2i0g48n3";
-}
-{
-  lang = "kk";
-  saneName = "kk";
-  sha256 = "06fmh05ccbx58vprw4h1f4hqsv2gjkm0y982lajgrwpswc09kdrj";
-}
-{
-  lang = "km";
-  saneName = "km";
-  sha256 = "1l17xj681m29xladp8cb6vbwprvf7l5kj8iignyyziv7sw6v5fs9";
-}
-{
-  lang = "kn";
-  saneName = "kn";
-  sha256 = "0is1yarm4r5dcm424nha7p093rzndsqmkbgrj65q8szf8pdii3pz";
-}
-{
-  lang = "ko";
-  saneName = "ko";
-  sha256 = "1fr2ln91k910qbpkxsqxaf05bdgf2mg4jj4chxygqhwv1ffxj4f0";
-}
-{
-  lang = "lt";
-  saneName = "lt";
-  sha256 = "1m8iawglrznv1qsqsw2sns6fbbv52zs2wzmz793p4n1v67ly4n75";
-}
-{
-  lang = "lv";
-  saneName = "lv";
-  sha256 = "1p89fw17nfd77klr2dkrm98xahxqprq9a1906rl7m7jdrsh44zrd";
-}
-{
-  lang = "nb";
-  saneName = "nb";
-  sha256 = "082cjvczqlvzsgzwdlyqy8qvfdfcvxgj8fy4faxv5iaqdv4hzf1j";
-}
-{
-  lang = "nds";
-  saneName = "nds";
-  sha256 = "0vhg8hkg4iad0g0jmy9qb61z7bnyw9dmpnibwpn1sypq8cy1qgax";
-}
-{
-  lang = "nl";
-  saneName = "nl";
-  sha256 = "1nvkspaycgkx639cmjp0cv81fb8fjqmfw6r7r6fhq4gjyk6awdbl";
-}
-{
-  lang = "nn";
-  saneName = "nn";
-  sha256 = "03y7c4vn9ihz65bylmabcjsjssb9wc4j4nb9slb98dm97cqn015b";
-}
-{
-  lang = "pa";
-  saneName = "pa";
-  sha256 = "0vhf2bb4ii737hmg639s0h7pl38dxrpncvgl6l2lzv2nb3g92ihk";
-}
-{
-  lang = "pl";
-  saneName = "pl";
-  sha256 = "116ii59z71v3wlp9xd5ni3zk140i4s461l1wpqxx2p8lrs6087m6";
-}
-{
-  lang = "pt";
-  saneName = "pt";
-  sha256 = "04mh52cdg63nacs5mydmx244ljq39495bai4zm7viz1b0lkwhfi8";
-}
-{
-  lang = "pt_BR";
-  saneName = "pt_BR";
-  sha256 = "1fqsgxfxmsbadk32kgxskkjvbq4wb06gq26i4h41y3cbanw11r9v";
-}
-{
-  lang = "ro";
-  saneName = "ro";
-  sha256 = "04r6avdjd4pjnq6viprm5252jyqd73wiqc419y72vpxh39rri72k";
-}
-{
-  lang = "ru";
-  saneName = "ru";
-  sha256 = "0gdy3yjczgjigr1pfmwsjscgh9q7mvz11m82axw0989kvq34ryx3";
-}
-{
-  lang = "sk";
-  saneName = "sk";
-  sha256 = "0kgg6a0xy4cnij7g576rsixkn7b0c9l782zxn2brcnqlfqzyh3b7";
-}
-{
-  lang = "sl";
-  saneName = "sl";
-  sha256 = "1yf15mcyi0k9vmrmd0fqz265dsy2xr6fhf1wl3lljb0mqsyf0a8a";
-}
-{
-  lang = "sr";
-  saneName = "sr";
-  sha256 = "1cyw5kkpwq7yzhib6dlqln21fk3zfppalhw21rnfr0ih1znpaa1p";
-}
-{
-  lang = "sv";
-  saneName = "sv";
-  sha256 = "1kaq1zlgxb5z9bpfpnpznnv3yhqjr4wgdm47b5fcg149ha6q43hp";
-}
-{
-  lang = "th";
-  saneName = "th";
-  sha256 = "1yzbxwzd624akmby1bhfm74fp6p41fq38jxs8qdsflav531nz47z";
-}
-{
-  lang = "tr";
-  saneName = "tr";
-  sha256 = "1l1q154ib9wr8brp0pk6r0n7xz8kzdbhfb803kwg0ajhjddpihim";
-}
-{
-  lang = "ug";
-  saneName = "ug";
-  sha256 = "05zcz4rwvlc1gbcm7612rlvsbjnf293kiv902rms64smd3w8237r";
-}
-{
-  lang = "uk";
-  saneName = "uk";
-  sha256 = "04b5nj9q3x2cpc03awm09ijx0qzkvmxp9wb3cj3q4mhkd8n42k6i";
-}
-{
-  lang = "wa";
-  saneName = "wa";
-  sha256 = "10w1n2cni7mqf8fyy5gq699d9nw0fma1brq5a3wfwnxhlk7hxs6a";
-}
-{
-  lang = "zh_CN";
-  saneName = "zh_CN";
-  sha256 = "15xfbyf2m3lhd6q7imsmjxv81kw1ml286dh771gg4m668j7101pq";
-}
-{
-  lang = "zh_TW";
-  saneName = "zh_TW";
-  sha256 = "0d9gw75qq37yq3icz4mjqnqqar0vrmc6aly8pybg4qw167jzzqn6";
-}
-]
diff --git a/pkgs/desktops/kde-4.7/l10n/manifest-4.7.1.nix b/pkgs/desktops/kde-4.7/l10n/manifest-4.7.1.nix
deleted file mode 100644
index f4ecf8656cf7..000000000000
--- a/pkgs/desktops/kde-4.7/l10n/manifest-4.7.1.nix
+++ /dev/null
@@ -1,262 +0,0 @@
-[
-{
-  lang = "ar";
-  saneName = "ar";
-  sha256 = "03sl2d83hyl138kl7424nxi546v1x1yp5ywqknk194532gf7isf2";
-}
-{
-  lang = "bg";
-  saneName = "bg";
-  sha256 = "0dal1sdvr28d0w9izl6chzybp1xgnvl20yn59yszl9zfwxzm5z45";
-}
-{
-  lang = "bs";
-  saneName = "bs";
-  sha256 = "17galw35j93jsmdpihr2x1jrpz8phyrrw403q77xb7csdc89mg41";
-}
-{
-  lang = "ca";
-  saneName = "ca";
-  sha256 = "07llq52f0hxz39h2amq1an788m6bijijifk9hilbkiixs1bpcycp";
-}
-{
-  lang = "ca@valencia";
-  saneName = "ca_valencia";
-  sha256 = "0f07p6nz0gryjihz35ga4hn7gj32is978ns74mxkgql3cqkmzpp8";
-}
-{
-  lang = "cs";
-  saneName = "cs";
-  sha256 = "0lcmp4lrlzjx8003fdpgsz5xi33ldj5sxkim90y76866kwgfd8a0";
-}
-{
-  lang = "da";
-  saneName = "da";
-  sha256 = "10ja0jg6fqq0a9nx2lcljp4fmrvn8yicv75wchfmz6ydrylfmlmc";
-}
-{
-  lang = "de";
-  saneName = "de";
-  sha256 = "10xbbjq08r47pcxg6j8k3yyvfjf6fvk16f3njriclsrxg5kgjcb1";
-}
-{
-  lang = "el";
-  saneName = "el";
-  sha256 = "0w6fkkmqqx73mf3piwqfk98xyk8izvrxkhw653npm30j2x5l1ccf";
-}
-{
-  lang = "en_GB";
-  saneName = "en_GB";
-  sha256 = "1xpsly96d68kzswscfz7fj4xzk3z92ddlzs06jl5ga3vi5v08br9";
-}
-{
-  lang = "es";
-  saneName = "es";
-  sha256 = "12wpzdqx5ckkr3x7wsbyb6ljixm66cxsxw5vpxf987hm9pblip9c";
-}
-{
-  lang = "et";
-  saneName = "et";
-  sha256 = "11s8wlv3qpnd9hf39z53nan6ljxdvh17knaz1jl7a04f0dczc1hj";
-}
-{
-  lang = "eu";
-  saneName = "eu";
-  sha256 = "0a491igqcz1gb7218m9wflvrlyj0h95xlmsn70pb1jv0kvmpib7w";
-}
-{
-  lang = "fi";
-  saneName = "fi";
-  sha256 = "0c5fji14j8h7zpj5941wrl6nar76ll5ry2yhcdq82ciphc74421q";
-}
-{
-  lang = "fr";
-  saneName = "fr";
-  sha256 = "1bgmlj7s7rdzva5i3kdi0hf16kh929a9qmhg745ivbfl89slbi6c";
-}
-{
-  lang = "ga";
-  saneName = "ga";
-  sha256 = "1fail3mpmsb0zvskwrxzjx0bvsbf28rv5qjzh061w1a9jqd0ggn3";
-}
-{
-  lang = "gl";
-  saneName = "gl";
-  sha256 = "0hx6y2xzgvnhcvmdf7qh1bk1jk87srmxpi1m4blwqara189bmqz7";
-}
-{
-  lang = "he";
-  saneName = "he";
-  sha256 = "1fjdjaqplqs9jk0np4fj8sm9jds8i9hxxf64cqj0is6wcf7lf9bc";
-}
-{
-  lang = "hr";
-  saneName = "hr";
-  sha256 = "1j56aj0bhpgfzlxcav3rwzahxm6q00hpdg6jmgq0m02d45kvn8z5";
-}
-{
-  lang = "hu";
-  saneName = "hu";
-  sha256 = "1syxpqk37jwippx7p273f4h6n14jhbv22wmq8la48jsqdkgrrgjg";
-}
-{
-  lang = "ia";
-  saneName = "ia";
-  sha256 = "1jazhp4n5ymz5gbxc3g3c9jvd7k1fs2b1w09vhnbgwa6i3gpa1i8";
-}
-{
-  lang = "id";
-  saneName = "id";
-  sha256 = "1g85002i29g6qzmjrwng4pndrkxnkg1ph1qvkkrnkkpygbw3whvm";
-}
-{
-  lang = "is";
-  saneName = "is";
-  sha256 = "11aavg4gw7xcdaq72ygynm2zbjcmal0baaw6sk1gy597620hfm5g";
-}
-{
-  lang = "it";
-  saneName = "it";
-  sha256 = "1395nskpbg8ah2q18ahsfv39ixhw74gb5cxr2irsfkgnwbmglas1";
-}
-{
-  lang = "ja";
-  saneName = "ja";
-  sha256 = "0jrnbd8j6qcfhxvfs014qq0dbdbp6632bk2210xg07sfmrz43csm";
-}
-{
-  lang = "kk";
-  saneName = "kk";
-  sha256 = "0rxvj142rw40d93ygfysavpw4jbyn8yx6c828sv5lp8c2r4kid5a";
-}
-{
-  lang = "km";
-  saneName = "km";
-  sha256 = "12x5dnk33khmfnf9fk5qq3par1l21xfy24lq4a6jdf8ya9nj62r5";
-}
-{
-  lang = "kn";
-  saneName = "kn";
-  sha256 = "0c4cp019ij80fc188dzkv5nbxplxhnhqc3b2qda9xr1j78vbbh46";
-}
-{
-  lang = "ko";
-  saneName = "ko";
-  sha256 = "0lhnvy370fk21z1r1wdq484pdjq6c0jsj3s2z58z4x7rfw2lq487";
-}
-{
-  lang = "lt";
-  saneName = "lt";
-  sha256 = "1blcg57vm05sbvcgslr49k84whm3f99mcd15zb8fxvvrybg0hr2m";
-}
-{
-  lang = "lv";
-  saneName = "lv";
-  sha256 = "0jc2vv97jwbbr966spzv10aimb9c42x5ia1rnr2kvs1hb8sxwvp1";
-}
-{
-  lang = "nb";
-  saneName = "nb";
-  sha256 = "04362qr5p3dhscrppcbg9cj28idrs0hslc2lk98drpq2rkc8rjmb";
-}
-{
-  lang = "nds";
-  saneName = "nds";
-  sha256 = "1ci4xh56w6rn68sl5xk23l1rxxfz7ni7y4z2sc5yidwi1acxfwpm";
-}
-{
-  lang = "nl";
-  saneName = "nl";
-  sha256 = "197jdabjxk61n5b69sw9jqcpp7561hq3dw086z2pymqll5irjf7f";
-}
-{
-  lang = "nn";
-  saneName = "nn";
-  sha256 = "1cd0ifr6p9m8h665grwy8nk3gw72w9h5a8bygf5nj55164qmff98";
-}
-{
-  lang = "pa";
-  saneName = "pa";
-  sha256 = "1scn7nkl521v1f1y0km3s57s02xfblblg2f572s9yz5j2da9p2j0";
-}
-{
-  lang = "pl";
-  saneName = "pl";
-  sha256 = "1qn6lakcfah85ws9njz2xp36xj2n3ld3mhqkvcb6mddv943x65vj";
-}
-{
-  lang = "pt";
-  saneName = "pt";
-  sha256 = "0pw2zvma1jczkp0ypshxyl4dcnx6jakms91i2pwyswa8jv3mfx3b";
-}
-{
-  lang = "pt_BR";
-  saneName = "pt_BR";
-  sha256 = "1n9m7wj5gd3kwf6smbx53l3jbjyvd26ginw007bnv6x14g2y7k19";
-}
-{
-  lang = "ro";
-  saneName = "ro";
-  sha256 = "155l1szxvjcgmw44097q8dvgd9ljgs2y3dn8mpi3y6cqj5kdb42s";
-}
-{
-  lang = "ru";
-  saneName = "ru";
-  sha256 = "166ck2pvhdrpyf269fmkqkqs3l6s4cc8f2p3w88f5z75qg9xc3bj";
-}
-{
-  lang = "sk";
-  saneName = "sk";
-  sha256 = "18bidvnhg2gqnjgr6np1gm2irn81b108kx7ri11gwppqh3h90340";
-}
-{
-  lang = "sl";
-  saneName = "sl";
-  sha256 = "0c2av80r3zc1jkybj3yp5hspv5rwlyda039jy11y49d6zwval097";
-}
-{
-  lang = "sr";
-  saneName = "sr";
-  sha256 = "0dffkmsd9l30c17fi5x6m6lx5hi5diqqxmmn36a9wb393mw8srm9";
-}
-{
-  lang = "sv";
-  saneName = "sv";
-  sha256 = "10rrlrwarh8sks2wym2kq3rk69kgzqk38ll93i0i0zhjgyqiahrg";
-}
-{
-  lang = "th";
-  saneName = "th";
-  sha256 = "1sqyw6zd3vnpkvb7iisqhnk7vjp3212h97yqgmlsxfry2rys1kmr";
-}
-{
-  lang = "tr";
-  saneName = "tr";
-  sha256 = "0vzr81c004zwxqhfwhpfs4g1w5dvbxzb9y3g3vsagnsc94i5fb9y";
-}
-{
-  lang = "ug";
-  saneName = "ug";
-  sha256 = "0p0ln8dcpq2hbqz651lb7izb82dqhh5pl3a931yzd99a6lr3kd39";
-}
-{
-  lang = "uk";
-  saneName = "uk";
-  sha256 = "0b6q2s1qigzchqs9dmzm31jrnhz3vfsix4zbmzs0wdib05qy6y1f";
-}
-{
-  lang = "wa";
-  saneName = "wa";
-  sha256 = "01hi12hanz44lbn52dcll2glcljax1mv3n5qc8w9gf4cqjjrs2ia";
-}
-{
-  lang = "zh_CN";
-  saneName = "zh_CN";
-  sha256 = "0iwszbl2myh9ik3yk19nyrj43rcki23amp5i2sx7lz9gy14lvgl8";
-}
-{
-  lang = "zh_TW";
-  saneName = "zh_TW";
-  sha256 = "1j1kvyc82ysin4ksp63gzczg4ihvn4qlfjd5l16qi0galp96mz21";
-}
-]
diff --git a/pkgs/desktops/kde-4.7/l10n/manifest-4.7.2.nix b/pkgs/desktops/kde-4.7/l10n/manifest-4.7.2.nix
new file mode 100644
index 000000000000..ff89f2d8d0ca
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/l10n/manifest-4.7.2.nix
@@ -0,0 +1,262 @@
+[
+{
+  lang = "ar";
+  saneName = "ar";
+  sha256 = "17s0d1yr561r55b2jgj6ypmjbwv9p7ykmpv28r6lcs7smdhvazg2";
+}
+{
+  lang = "bg";
+  saneName = "bg";
+  sha256 = "1q3r15v4hqmw7hqb4bxkgp3xvvybhs4ij8j2k6ph78sl2kq0z9vg";
+}
+{
+  lang = "bs";
+  saneName = "bs";
+  sha256 = "00q0mamzkf3rn1r9dxjkbg0fcs0sg06m38d5hvvc81ia2f743qps";
+}
+{
+  lang = "ca";
+  saneName = "ca";
+  sha256 = "1k9x805ikaqxq33mxj8knxdbmba22pb7yl5r6yvgys6ffr36x4gv";
+}
+{
+  lang = "ca@valencia";
+  saneName = "ca_valencia";
+  sha256 = "0zfxlsxrwzyh6va0fc7d7xvahw51khf51w5v3yqx0c5zvkbnk5h2";
+}
+{
+  lang = "cs";
+  saneName = "cs";
+  sha256 = "1adccwlxqwdv575cckfh665ml0wx47226hmjyyp9qws8csi56c69";
+}
+{
+  lang = "da";
+  saneName = "da";
+  sha256 = "0d0zbv7f3cwzsly45ilzfz2abjp22f45ilzfmqjp4naj153c1dxi";
+}
+{
+  lang = "de";
+  saneName = "de";
+  sha256 = "02mzvz5n00dvdnw86awfd3g3s4dsbk28i6nd7hpqxz6anvasqrc1";
+}
+{
+  lang = "el";
+  saneName = "el";
+  sha256 = "00gi08mgkw9r3mbagxfx25ywcrl7h0xsgs8wvng8y098vq5bsql4";
+}
+{
+  lang = "en_GB";
+  saneName = "en_GB";
+  sha256 = "0sf7ipp0sggdfcpijhy0gymkvmlxd4yknrw5v1mcbl6hjdg4fpyr";
+}
+{
+  lang = "es";
+  saneName = "es";
+  sha256 = "0axzzwmx39rad34qnasdla014c5dvz65hvnkf184q2q2fzbsqcn4";
+}
+{
+  lang = "et";
+  saneName = "et";
+  sha256 = "080prwlf12nhbkkbkc111zsjr5j2zm0zp328s923gmrh5dfxi6c5";
+}
+{
+  lang = "eu";
+  saneName = "eu";
+  sha256 = "0vbc01xxnzpnvnrzvv3xird3g7glyls970rbq815a5f8d0svcqhz";
+}
+{
+  lang = "fi";
+  saneName = "fi";
+  sha256 = "0rhi9hc2kwh3dl3zin5l8akf1qlfc8i3yi8857f92az4crah0h7j";
+}
+{
+  lang = "fr";
+  saneName = "fr";
+  sha256 = "0jwlkiv3phlw4hinjz0hxgmcs5v9nkg2rdh96qfsmqm8qjwbgjj9";
+}
+{
+  lang = "ga";
+  saneName = "ga";
+  sha256 = "0nr7357xknsx2nn4w25yxzmhz1rij9b2i9fix9gbfrfi103p4j3d";
+}
+{
+  lang = "gl";
+  saneName = "gl";
+  sha256 = "1fvnfxyn2gdmbp6n9rrh7amzb23vwlfz0dif5c4pc17vkm733hci";
+}
+{
+  lang = "he";
+  saneName = "he";
+  sha256 = "1rmrwbfad81hhx3rvdis38mg4dvq88x3m2ypjy4vg47h7y3nzzsd";
+}
+{
+  lang = "hr";
+  saneName = "hr";
+  sha256 = "0w234ndd1rljrnxg1ws814r0kybh3ajc1x5n2m4qch1xvsq96knh";
+}
+{
+  lang = "hu";
+  saneName = "hu";
+  sha256 = "0rjaajqa3ci5qpx6zqzglzmllfnsm8knsal65bnm4msxh8s06k96";
+}
+{
+  lang = "ia";
+  saneName = "ia";
+  sha256 = "15rsn2qak7fjc3l54s1j26dlng4k31kh9qdgs68y38hsq65x4zc9";
+}
+{
+  lang = "id";
+  saneName = "id";
+  sha256 = "0dlciv1yk6vjc17506cabn722z9n0x25y2cmanafqb37ilm3ji9q";
+}
+{
+  lang = "is";
+  saneName = "is";
+  sha256 = "0iqsz23l4205p2vbm7nrhq6f4xcjnv2i8fll4zrim1fvmv8m9imb";
+}
+{
+  lang = "it";
+  saneName = "it";
+  sha256 = "1xmbw2c62d4zfarrwfdxg9ijgyly0p659ycxjqq6vq066ji728n0";
+}
+{
+  lang = "ja";
+  saneName = "ja";
+  sha256 = "1jrq9vhs7md5bjfaym5jqjhmlf0ydi9fwdhz87y03bp4cx8k17f5";
+}
+{
+  lang = "kk";
+  saneName = "kk";
+  sha256 = "1d5jl8yi8jjp1myg1d3jxh2fdf58n4lh77g50f9f4lab7xhwqiy0";
+}
+{
+  lang = "km";
+  saneName = "km";
+  sha256 = "1apxmwmsmis77y2if15npf38wd98nzl9h6qqi02mpbl2gq32hjnm";
+}
+{
+  lang = "kn";
+  saneName = "kn";
+  sha256 = "0r70d4m4x0jyq7fq3zj0dgy3v0pz25zbk20l932w3zyq6nxmaj18";
+}
+{
+  lang = "ko";
+  saneName = "ko";
+  sha256 = "0zr2ph6n2475fifanx2gisn0z29hgzcd822jy8h33qy1rysfzjv7";
+}
+{
+  lang = "lt";
+  saneName = "lt";
+  sha256 = "12vvy72nb16b0i2a8dqfq6zvbdxkanh39wqi6ysmbzxbic634lwy";
+}
+{
+  lang = "lv";
+  saneName = "lv";
+  sha256 = "1daxrnydhqcnmi0c2ag2jvdckshk9dypgpi6dchgfbffn4bqgy9p";
+}
+{
+  lang = "nb";
+  saneName = "nb";
+  sha256 = "1mjkbgd2k9g6ka811j6yphc9c7yl6hyx504k74l3qwhcd53nhixm";
+}
+{
+  lang = "nds";
+  saneName = "nds";
+  sha256 = "0vryzfy5phybffdizm4vxb3k1z04mqwhabvk7qijr536jv457s79";
+}
+{
+  lang = "nl";
+  saneName = "nl";
+  sha256 = "16w8i0ywlpyck2svahrjsgaadp18x6y26n637av23ll2albiigj3";
+}
+{
+  lang = "nn";
+  saneName = "nn";
+  sha256 = "1kq0nrj5i9kdb2rmn6wmrv0y3awjk25kqq0ls6f49nxy954nw1ch";
+}
+{
+  lang = "pa";
+  saneName = "pa";
+  sha256 = "12dqa9lbr99lmb35qb4vsl3pykn04kb95p4dw8yap380wfqr0j53";
+}
+{
+  lang = "pl";
+  saneName = "pl";
+  sha256 = "0mdcfw9v5434rrq1ix1zprvmrs3vdkl54nmaz7iz9iqlc44c44w1";
+}
+{
+  lang = "pt";
+  saneName = "pt";
+  sha256 = "08bwh2b9040wvhvq3ncih4b1s7yz1cdgchkird2zghsks34jn32j";
+}
+{
+  lang = "pt_BR";
+  saneName = "pt_BR";
+  sha256 = "145zgkslkm8y2vrxcr4zm2hv7m7mqc5h5q0vad33p6cxqpy8d0im";
+}
+{
+  lang = "ro";
+  saneName = "ro";
+  sha256 = "0w3s87h3msbjrbmil4za323jsh5wg80n4vzsvy77nhlv4a4zkd6p";
+}
+{
+  lang = "ru";
+  saneName = "ru";
+  sha256 = "1cddg14g2cdm2lfspps32ld8cbmd9qiwn78a2m6f6jsfbjh8kk0v";
+}
+{
+  lang = "sk";
+  saneName = "sk";
+  sha256 = "0wlgmfa15vk8vv9zd08dafvdd0df2j4721lnrn3pjrknbapfv76w";
+}
+{
+  lang = "sl";
+  saneName = "sl";
+  sha256 = "176x46y8fxhbs2x4zma705xz258jcxw45af5jkwskq6rq1v2nk8p";
+}
+{
+  lang = "sr";
+  saneName = "sr";
+  sha256 = "1sxrxblmyrpvjzag3z7a7ia3k1fd6n3jvqjv6mdcnzky6n4wjs35";
+}
+{
+  lang = "sv";
+  saneName = "sv";
+  sha256 = "1ni87ph5wgxydq5dyj7yw9xc6izx0gdqyqqvcbnzxxbfcg37apnx";
+}
+{
+  lang = "th";
+  saneName = "th";
+  sha256 = "1a4fn0vbb714pg15z9w9jkgmmqs0c3wl8397jg68xr6621cphpnh";
+}
+{
+  lang = "tr";
+  saneName = "tr";
+  sha256 = "09m81r5vlh9mi863wm0kmnbr881xy2qnsn2n6fy27csk91sj9g6s";
+}
+{
+  lang = "ug";
+  saneName = "ug";
+  sha256 = "191ivdzc60sz4z5d513v7m89clq214kw31r8pp16basayqvcycwg";
+}
+{
+  lang = "uk";
+  saneName = "uk";
+  sha256 = "1141213hrvw77ri5n518vj76k9whvr73vahbbrygfib3r1vml4rf";
+}
+{
+  lang = "wa";
+  saneName = "wa";
+  sha256 = "0mczkwzq5zb5s1mpl9g711lnng7j3bcfmn66zwm5is4ij4hd2swr";
+}
+{
+  lang = "zh_CN";
+  saneName = "zh_CN";
+  sha256 = "0ra5km0ddh3k3mb36drynf1wyfi05a1nf346jamx4lafsp5xai1r";
+}
+{
+  lang = "zh_TW";
+  saneName = "zh_TW";
+  sha256 = "0qbc0hs1f43aqkj92nnw5vn8b2r11y19hjhh2p8b41818dcyscyf";
+}
+]
diff --git a/pkgs/desktops/kde-4.7/oxygen-icons.nix b/pkgs/desktops/kde-4.7/oxygen-icons.nix
index 655aadda48e0..f2a5e666232d 100644
--- a/pkgs/desktops/kde-4.7/oxygen-icons.nix
+++ b/pkgs/desktops/kde-4.7/oxygen-icons.nix
@@ -3,7 +3,7 @@
 kde {
   outputHashAlgo = "sha256";
   outputHashMode = "recursive";
-  outputHash = "87010a208f6860429d78c0d518a4f70c450b9c199900076d0aa232de8ae6452e";
+  outputHash = "0c12c72bcf41cfaf03f85fc1ae27e44d8cecac3deb504ab1de4c30f4fc9e3cd0";
 
   buildNativeInputs = [ cmake ];
 
diff --git a/pkgs/development/guile-modules/guile-gnome/default.nix b/pkgs/development/guile-modules/guile-gnome/default.nix
index b6a7a43297c7..30480844a414 100644
--- a/pkgs/development/guile-modules/guile-gnome/default.nix
+++ b/pkgs/development/guile-modules/guile-gnome/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, stdenv, guile, guile_lib, gwrap
-, pkgconfig, gconf, glib, gnomevfs, gtk
+, pkgconfig, gconf, glib, gnome_vfs, gtk
 , libglade, libgnome, libgnomecanvas, libgnomeui, pango, guileCairo }:
 
 stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   buildInputs =
     [ guile gwrap
-      pkgconfig gconf glib gnomevfs gtk libglade libgnome libgnomecanvas
+      pkgconfig gconf glib gnome_vfs gtk libglade libgnome libgnomecanvas
       libgnomeui pango guileCairo
     ]
     ++ stdenv.lib.optional doCheck guile_lib;
diff --git a/pkgs/development/interpreters/xulrunner/wrapper/builder.sh b/pkgs/development/interpreters/xulrunner/wrapper/builder.sh
deleted file mode 100644
index 4deed9e7a7f6..000000000000
--- a/pkgs/development/interpreters/xulrunner/wrapper/builder.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-source $stdenv/setup
-
-ensureDir $out/bin
-
-wrapper="$out/bin/$launcher"
-
-if test -e $xulrunner/bin/xulrunner; then
-    runner=$xulrunner/bin/xulrunner
-elif test -e $xulrunner/bin/firefox; then
-    runner="$xulrunner/bin/firefox -app"
-else
-    echo "XUL runner not found"
-    exit 1
-fi
-
-cat > $wrapper <<EOF
-#! $SHELL -e
-exec $runner $appfile "\$@"
-EOF
-
-chmod +x $wrapper
diff --git a/pkgs/development/interpreters/xulrunner/wrapper/default.nix b/pkgs/development/interpreters/xulrunner/wrapper/default.nix
deleted file mode 100644
index 218dfd34cc1a..000000000000
--- a/pkgs/development/interpreters/xulrunner/wrapper/default.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{stdenv, xulrunner, application, launcher}:
-
-stdenv.mkDerivation {
-  name = application.name;
-
-  builder = ./builder.sh;
-  
-  inherit xulrunner launcher;
-  
-  appfile = application + "/application.ini";
-
-  inherit (application) meta;
-}
diff --git a/pkgs/development/libraries/atk/2.1.x.nix b/pkgs/development/libraries/atk/2.2.x.nix
similarity index 87%
rename from pkgs/development/libraries/atk/2.1.x.nix
rename to pkgs/development/libraries/atk/2.2.x.nix
index 28619a85c036..45737aad3190 100644
--- a/pkgs/development/libraries/atk/2.1.x.nix
+++ b/pkgs/development/libraries/atk/2.2.x.nix
@@ -5,8 +5,8 @@ stdenv.mkDerivation rec {
 
   src = fetchurl_gnome {
     project = "atk";
-    major = "2"; minor = "1"; patchlevel = "5"; extension = "xz";
-    sha256 = "005b9sq8p9ykp4f35b59si3mcbw4p9hyxps1ij4x73p07rrbf0z9";
+    major = "2"; minor = "2"; patchlevel = "0"; extension = "xz";
+    sha256 = "17bkqg89l9hxbkgc76cxlin1bwczk7m6ikbccx677lrxh3kz08lb";
   };
 
   buildNativeInputs = [ pkgconfig perl xz ];
diff --git a/pkgs/development/libraries/glib/2.29.x.nix b/pkgs/development/libraries/glib/2.30.x.nix
similarity index 91%
rename from pkgs/development/libraries/glib/2.29.x.nix
rename to pkgs/development/libraries/glib/2.30.x.nix
index 589ec625dcc2..f92b9cf4cca6 100644
--- a/pkgs/development/libraries/glib/2.29.x.nix
+++ b/pkgs/development/libraries/glib/2.30.x.nix
@@ -16,8 +16,8 @@ stdenv.mkDerivation rec {
 
   src = fetchurl_gnome {
     project = "glib";
-    major = "2"; minor = "29"; patchlevel = "18"; extension = "xz";
-    sha256 = "1hc198x625w1w8if1xlvqyjs9aazc27s0l374kqc4sr51wcpbxpy";
+    major = "2"; minor = "30"; patchlevel = "0"; extension = "xz";
+    sha256 = "1hfdnxf5hsfhkd54390lnc1b14m9n7y031fpma4vpsh96js00k6n";
   };
 
   # configure script looks for d-bus but it is only needed for tests
diff --git a/pkgs/development/libraries/glibmm/2.30.x.nix b/pkgs/development/libraries/glibmm/2.30.x.nix
new file mode 100644
index 000000000000..e3565a4e6146
--- /dev/null
+++ b/pkgs/development/libraries/glibmm/2.30.x.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl_gnome, pkgconfig, glib, libsigcxx, xz }:
+
+stdenv.mkDerivation rec {
+  name = src.pkgname;
+
+  src = fetchurl_gnome {
+    project = "glibmm";
+    major = "2"; minor = "30"; patchlevel = "0"; extension = "xz";
+    sha256 = "1d0dxq4iamch8igrnbvbfwkfpvcnjfzyr9iq2x8hi89b9k1kzbd7";
+  };
+
+  buildNativeInputs = [pkgconfig xz];
+  propagatedBuildInputs = [glib libsigcxx];
+
+  meta = {
+    description = "C++ interface to the GLib library";
+
+    homepage = http://gtkmm.org/;
+
+    license = "LGPLv2+";
+
+    maintainers = with stdenv.lib.maintainers; [urkud raskin];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/gtk+/3.1.x.nix b/pkgs/development/libraries/gtk+/3.2.x.nix
similarity index 91%
rename from pkgs/development/libraries/gtk+/3.1.x.nix
rename to pkgs/development/libraries/gtk+/3.2.x.nix
index 5b473d44e7ea..a72411d16367 100644
--- a/pkgs/development/libraries/gtk+/3.1.x.nix
+++ b/pkgs/development/libraries/gtk+/3.2.x.nix
@@ -12,8 +12,8 @@ stdenv.mkDerivation rec {
 
   src = fetchurl_gnome {
     project = "gtk+";
-    major = "3"; minor = "1"; patchlevel = "16"; extension = "xz";
-    sha256 = "15arbf75qpchr9wrawb3zkn52rzf5wm2qv4dq10zfzlflimrq2rg";
+    major = "3"; minor = "2"; patchlevel = "0"; extension = "xz";
+    sha256 = "0k6l5sw8njbnbapzm9v5jwlrrl7xv1b8c9lmqx97bzbapslw3qxw";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/haskell/cmdlib/default.nix b/pkgs/development/libraries/haskell/cmdlib/default.nix
index 93df5ef217c2..e49042a4a1f8 100644
--- a/pkgs/development/libraries/haskell/cmdlib/default.nix
+++ b/pkgs/development/libraries/haskell/cmdlib/default.nix
@@ -1,12 +1,12 @@
-{ cabal, mtl, split, syb }:
+{ cabal, mtl, split, syb, transformers }:
 
 cabal.mkDerivation (self: {
   pname = "cmdlib";
-  version = "0.3.3";
-  sha256 = "0gryz70d69r9pscwxmn5yr02r0zvvgj1vwc3g9klgbkipbsa7xvk";
+  version = "0.3.4";
+  sha256 = "1f8vb681xd2v7hv0s84x032yf8x2jlxc0j302irv20fkc1w1vbrr";
   isLibrary = true;
   isExecutable = true;
-  buildDepends = [ mtl split syb ];
+  buildDepends = [ mtl split syb transformers ];
   meta = {
     description = "a library for command line parsing & online help";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/hashed-storage/default.nix b/pkgs/development/libraries/haskell/hashed-storage/default.nix
index dc7378ce047e..441dac7a4dfa 100644
--- a/pkgs/development/libraries/haskell/hashed-storage/default.nix
+++ b/pkgs/development/libraries/haskell/hashed-storage/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hashed-storage";
-  version = "0.5.8";
-  sha256 = "1730hg6h7a1b0vgr9dvish41bpgly5cjpdwhqny75fi5in7dqplh";
+  version = "0.5.9";
+  sha256 = "1ycn0zwk5jqm6wwgs8nxpdg7fh5wx0i2058i0a924whj196kkhk2";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/parallel/3.2.0.0.nix b/pkgs/development/libraries/haskell/parallel/3.2.0.0.nix
new file mode 100644
index 000000000000..9c260d065669
--- /dev/null
+++ b/pkgs/development/libraries/haskell/parallel/3.2.0.0.nix
@@ -0,0 +1,17 @@
+{ cabal, deepseq }:
+
+cabal.mkDerivation (self: {
+  pname = "parallel";
+  version = "3.2.0.0";
+  sha256 = "1wqdy9p7xqq84ffgzdakvqydxq9668r9xq3wyay9wlgrk83wd1sq";
+  buildDepends = [ deepseq ];
+  meta = {
+    description = "Parallel programming library";
+    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/parsec/3.1.2.nix b/pkgs/development/libraries/haskell/parsec/3.1.2.nix
new file mode 100644
index 000000000000..95ef6219dbb7
--- /dev/null
+++ b/pkgs/development/libraries/haskell/parsec/3.1.2.nix
@@ -0,0 +1,18 @@
+{ cabal, mtl, text }:
+
+cabal.mkDerivation (self: {
+  pname = "parsec";
+  version = "3.1.2";
+  sha256 = "0lhn9j2j5jlh7g0qx9f6ms63n9x1xlxg9isdvm6z0ksy3ywj9wch";
+  buildDepends = [ mtl text ];
+  meta = {
+    homepage = "http://www.cs.uu.nl/~daan/parsec.html";
+    description = "Monadic parser combinators";
+    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/thespian/default.nix b/pkgs/development/libraries/haskell/thespian/default.nix
new file mode 100644
index 000000000000..d4108f0a012e
--- /dev/null
+++ b/pkgs/development/libraries/haskell/thespian/default.nix
@@ -0,0 +1,18 @@
+{ cabal, mtl }:
+
+cabal.mkDerivation (self: {
+  pname = "thespian";
+  version = "0.999";
+  sha256 = "0z3cqjcf6xr0z7g3s1jszcs39w43sl0793gl0qm3dklbginqbcnn";
+  buildDepends = [ mtl ];
+  meta = {
+    homepage = "http://bitbucket.org/alinabi/thespian";
+    description = "Lightweight Erlang-style actors for 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/libgsf/default.nix b/pkgs/development/libraries/libgsf/default.nix
index d68cb73b2b5e..a417f63cdd9f 100644
--- a/pkgs/development/libraries/libgsf/default.nix
+++ b/pkgs/development/libraries/libgsf/default.nix
@@ -1,6 +1,6 @@
 { fetchurl, stdenv, perl, perlXMLParser, pkgconfig, libxml2
 , glib, gettext, intltool, bzip2
-, gnomevfs, libbonobo, python }:
+, gnome_vfs, libbonobo, python }:
 
 
 stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ perl perlXMLParser pkgconfig gettext bzip2 gnomevfs python intltool ];
+    [ perl perlXMLParser pkgconfig gettext bzip2 gnome_vfs python intltool ];
 
   propagatedBuildInputs = [ glib libxml2 libbonobo ];
 
diff --git a/pkgs/development/libraries/nspr/default.nix b/pkgs/development/libraries/nspr/default.nix
index 2509f26b5cbe..0497278f14af 100644
--- a/pkgs/development/libraries/nspr/default.nix
+++ b/pkgs/development/libraries/nspr/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl }:
 
-let version = "4.8.8"; in
+let version = "4.8.9"; in
 
 stdenv.mkDerivation {
   name = "nspr-${version}";
 
   src = fetchurl {
     url = "http://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${version}/src/nspr-${version}.tar.gz";
-    sha256 = "1jfl97hbb88lpyvhcv6q8zrqyw9wri2m838qdhwkwcgfsbgg9wwj";
+    sha256 = "1khw7l80f0k5jbk37hw6xqqmv6pmsp2m4xlfj2xh6bz7374cfhzz";
   };
 
   preConfigure = "cd mozilla/nsprpub";
diff --git a/pkgs/development/libraries/pango/1.29.x.nix b/pkgs/development/libraries/pango/1.29.x.nix
index 14dd3d8c5a5e..b255f05dd23b 100644
--- a/pkgs/development/libraries/pango/1.29.x.nix
+++ b/pkgs/development/libraries/pango/1.29.x.nix
@@ -5,8 +5,8 @@ stdenv.mkDerivation rec {
 
   src = fetchurl_gnome {
     project = "pango";
-    major = "1"; minor = "29"; patchlevel = "3"; extension = "xz";
-    sha256 = "0vp88j3ghngkkc4dpya443qng0bb1g86g54bcwf4lf3zmk6r1nmh";
+    major = "1"; minor = "29"; patchlevel = "4"; extension = "xz";
+    sha256 = "0zqjq6ccv6mbah74rcvb03ksq1jwan21z37mdmqa56307sax3s3s";
   };
 
   buildInputs = stdenv.lib.optional stdenv.isDarwin gettext;
diff --git a/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch b/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch
new file mode 100644
index 000000000000..c0fa85ecce87
--- /dev/null
+++ b/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch
@@ -0,0 +1,17 @@
+Use $OPENSSL_X509_CERT_FILE to get the CA certificates.
+
+diff -ru -x '*~' LWP-Protocol-https-6.02-orig/lib/LWP/Protocol/https.pm LWP-Protocol-https-6.02/lib/LWP/Protocol/https.pm
+--- LWP-Protocol-https-6.02-orig/lib/LWP/Protocol/https.pm	2011-03-27 13:54:01.000000000 +0200
++++ LWP-Protocol-https-6.02/lib/LWP/Protocol/https.pm	2011-10-07 13:23:41.398628375 +0200
+@@ -21,6 +21,11 @@
+     }
+     if ($ssl_opts{SSL_verify_mode}) {
+ 	unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) {
++            if (defined $ENV{'OPENSSL_X509_CERT_FILE'}) {
++                $ssl_opts{SSL_ca_file} = $ENV{'OPENSSL_X509_CERT_FILE'};
++            }
++        }
++	unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) {
+ 	    eval {
+ 		require Mozilla::CA;
+ 	    };
diff --git a/pkgs/os-specific/linux/nvidia-x11/builder.sh b/pkgs/os-specific/linux/nvidia-x11/builder.sh
index 830745ea6b71..180eb84e5e4f 100755
--- a/pkgs/os-specific/linux/nvidia-x11/builder.sh
+++ b/pkgs/os-specific/linux/nvidia-x11/builder.sh
@@ -39,6 +39,7 @@ installPhase() {
     ln -snf libnvidia-tls.so.$versionNumber $out/lib/tls/libnvidia-tls.so.1
     ln -snf libXvMCNVIDIA.so.$versionNumber $out/lib/libXvMCNVIDIA_dynamic.so.1
     ln -snf libcuda.so.$versionNumber $out/lib/libcuda.so.1
+    ln -snf libcuda.so.1 $out/lib/libcuda.so
     ln -snf libvdpau_nvidia.so.$versionNumber $out/lib/libvdpau_nvidia.so
 
     patchelf --set-rpath $out/lib:$glPath $out/lib/libGL.so.*.*
diff --git a/pkgs/servers/http/apache-httpd/default.nix b/pkgs/servers/http/apache-httpd/default.nix
index 22f733e40c67..0d586b0c3a62 100644
--- a/pkgs/servers/http/apache-httpd/default.nix
+++ b/pkgs/servers/http/apache-httpd/default.nix
@@ -8,12 +8,12 @@ assert sslSupport -> openssl != null;
 assert ldapSupport -> aprutil.ldapSupport && openldap != null;
 
 stdenv.mkDerivation rec {
-  version = "2.2.20";
+  version = "2.2.21";
   name = "apache-httpd-${version}";
 
   src = fetchurl {
     url = "mirror://apache/httpd/httpd-${version}.tar.bz2";
-    sha1 = "c8f00a505af6ed3f89f45b640217c388f5cd32b0";
+    sha1 = "c02f9b05da9a7e316ff37d9053dc76a57ba51cb4";
   };
 
   buildInputs = [perl apr aprutil pcre] ++
diff --git a/pkgs/tools/filesystems/relfs/default.nix b/pkgs/tools/filesystems/relfs/default.nix
index 2eb8e3a0b3ba..56dad0c1e3dd 100644
--- a/pkgs/tools/filesystems/relfs/default.nix
+++ b/pkgs/tools/filesystems/relfs/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchcvs, builderDefs, ocaml, fuse, postgresql, pcre
-, libuuid, gnomevfs, pkgconfig, GConf }:
+, libuuid, gnome_vfs, pkgconfig, GConf }:
 
 	let localDefs = builderDefs.passthru.function {
 	src = fetchcvs {
@@ -10,7 +10,7 @@
 	};
 		
 		buildInputs = [ocaml fuse postgresql pcre
-			libuuid gnomevfs pkgconfig GConf];
+			libuuid gnome_vfs pkgconfig GConf];
 		configureFlags = [];
 		    build = builderDefs.stringsWithDeps.fullDepEntry ("
 			cd deps 
diff --git a/pkgs/tools/networking/cntlm/default.nix b/pkgs/tools/networking/cntlm/default.nix
new file mode 100644
index 000000000000..f58650207854
--- /dev/null
+++ b/pkgs/tools/networking/cntlm/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, which}:
+
+stdenv.mkDerivation {
+  name = "cntlm-0.35.1";
+
+  src = fetchurl {
+    url = mirror://sourceforge/cntlm/cntlm-0.35.1.tar.gz;
+    sha256 = "7b3fb7184e72cc3f1743bb8e503a5305e96458bc630a7e1ebfc9f3c07ffa6c5e";
+  };
+
+  buildInputs = [ which ];
+
+  installPhase = ''
+    ensureDir $out/bin; cp cntlm $out/bin/;
+    ensureDir $out/share/; cp COPYRIGHT README VERSION doc/cntlm.conf $out/share/;
+    ensureDir $out/man/; cp doc/cntlm.1 $out/man/;
+  '';
+
+  meta = {
+    description = "Cntlm is an NTLM/NTLMv2 authenticating HTTP proxy";
+    homepage = http://cntlm.sourceforge.net/;
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.qknight ];
+  };
+}
diff --git a/pkgs/tools/text/colordiff/default.nix b/pkgs/tools/text/colordiff/default.nix
index 07ce3de3d13d..06e15d07ff09 100644
--- a/pkgs/tools/text/colordiff/default.nix
+++ b/pkgs/tools/text/colordiff/default.nix
@@ -9,5 +9,5 @@ stdenv.mkDerivation {
 
   buildInputs = [ perl /* xmlto */ ];
   dontBuild = 1; # do not build doc yet.
-  installPhase = ''make INSTALL_DIR=/bin MAN_DIR=/man DESTDIR="$out" install'';
+  installPhase = ''make INSTALL_DIR=/bin MAN_DIR=/share/man/man1 DESTDIR="$out" install'';
 }
diff --git a/pkgs/tools/text/odt2txt/default.nix b/pkgs/tools/text/odt2txt/default.nix
new file mode 100644
index 000000000000..b7134bf8e47c
--- /dev/null
+++ b/pkgs/tools/text/odt2txt/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, zlib }:
+
+stdenv.mkDerivation rec {
+  name = "odt2txt-0.4";
+
+  src = fetchurl {
+    url = "${meta.homepage}/${name}.tar.gz";
+    sha256 = "1y36s7w2ng0r4nismxb3hb3zvsim8aimvvblz9hgnanw3kwbvx55";
+  };
+
+  configurePhase="export makeFlags=\"DESTDIR=$out\"";
+
+  buildInputs = [ zlib ];
+
+  meta = {
+    description = "Simple .odt to .txt converter";
+    homepage = http://stosberg.net/odt2txt;
+    platforms = stdenv.lib.platforms.all;
+    lincense = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.urkud ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 77aba9c83723..f6a9f7772b94 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1065,6 +1065,8 @@ let
 
   obexftp = callPackage ../tools/bluetooth/obexftp { };
 
+  odt2txt = callPackage ../tools/text/odt2txt { };
+
   offlineimap = callPackage ../tools/networking/offlineimap {
     ssl = pythonPackages.ssl;
   };
@@ -1195,6 +1197,8 @@ let
 
   proxytunnel = callPackage ../tools/misc/proxytunnel { };
 
+  cntlm = callPackage ../tools/networking/cntlm { };
+
   psmisc = callPackage ../os-specific/linux/psmisc { };
 
   pstoedit = callPackage ../tools/graphics/pstoedit { };
@@ -1237,7 +1241,7 @@ let
   reiserfsprogs = callPackage ../tools/filesystems/reiserfsprogs { };
 
   relfs = callPackage ../tools/filesystems/relfs {
-    inherit (gnome) gnomevfs GConf;
+    inherit (gnome) gnome_vfs GConf;
   };
 
   remind = callPackage ../tools/misc/remind { };
@@ -2677,7 +2681,7 @@ let
 
   guileGnome = callPackage ../development/guile-modules/guile-gnome {
     gconf = gnome.GConf;
-    inherit (gnome) glib gnomevfs gtk libglade libgnome libgnomecanvas
+    inherit (gnome) glib gnome_vfs gtk libglade libgnome libgnomecanvas
       libgnomeui pango;
   };
 
@@ -3586,17 +3590,19 @@ let
   });
 
   gtkLibs3x = let callPackage = newScope pkgs.gtkLibs3x; in {
-    glib = callPackage ../development/libraries/glib/2.29.x.nix { };
+    glib = callPackage ../development/libraries/glib/2.30.x.nix { };
+
+    glibmm = callPackage ../development/libraries/glibmm/2.30.x.nix { };
 
     gdk_pixbuf = callPackage ../development/libraries/gdk-pixbuf/2.24.x.nix { };
 
-    atk = callPackage ../development/libraries/atk/2.1.x.nix { };
+    atk = callPackage ../development/libraries/atk/2.2.x.nix { };
 
     cairo = callPackage ../development/libraries/cairo { };
 
     pango = callPackage ../development/libraries/pango/1.29.x.nix { };
 
-    gtk = callPackage ../development/libraries/gtk+/3.1.x.nix { };
+    gtk = callPackage ../development/libraries/gtk+/3.2.x.nix { };
 
     # Let hydra build gtk-3.x but do not show this to users yet
     recurseForRelease = true;
@@ -3889,7 +3895,7 @@ let
   libspectre = callPackage ../development/libraries/libspectre { };
 
   libgsf = callPackage ../development/libraries/libgsf {
-    inherit (gnome) glib gnomevfs libbonobo;
+    inherit (gnome) glib gnome_vfs libbonobo;
   };
 
   libiconv = callPackage ../development/libraries/libiconv { };
@@ -4554,7 +4560,7 @@ let
 
   webkit =
     builderDefsPackage ../development/libraries/webkit {
-      inherit (gnome28) gtkdoc libsoup;
+      inherit (gnome) gtkdoc libsoup;
       inherit (gtkLibs) gtk atk pango glib;
       inherit freetype fontconfig gettext gperf curl
         libjpeg libtiff libpng libxml2 libxslt sqlite
@@ -4568,7 +4574,7 @@ let
 
   webkitSVN =
     builderDefsPackage ../development/libraries/webkit/svn.nix {
-      inherit (gnome28) gtkdoc libsoup;
+      inherit (gnome) gtkdoc libsoup;
       inherit (gtkLibs) gtk atk pango glib;
       inherit freetype fontconfig gettext gperf curl
         libjpeg libtiff libpng libxml2 libxslt sqlite
@@ -6314,18 +6320,19 @@ let
 
   cdrtools = callPackage ../applications/misc/cdrtools { };
 
-  chatzilla =
-    xulrunnerWrapper {
-      launcher = "chatzilla";
-      application = callPackage ../applications/networking/irc/chatzilla { };
-    };
+  chatzilla = callPackage ../applications/networking/irc/chatzilla {
+    xulrunner = firefox36Pkgs.xulrunner;
+  };
 
   chrome = callPackage ../applications/networking/browsers/chromium {
     inherit (gnome) GConf;
     patchelf = patchelf06;
   };
 
-  chromeWrapper = wrapFirefox { browser = chrome; browserName = "chrome"; desktopName = "Chrome"; };
+  chromeWrapper = wrapFirefox
+    { browser = chrome; browserName = "chrome"; desktopName = "Chrome";
+      icon = "${chrome}/libexec/chrome/product_logo_48.png";
+    };
 
   cinelerra = callPackage ../applications/video/cinelerra {
     inherit (gnome) esound;
@@ -6358,10 +6365,7 @@ let
 
   comical = callPackage ../applications/graphics/comical { };
 
-  conkeror = xulrunnerWrapper {
-    launcher = "conkeror";
-    application = callPackage ../applications/networking/browsers/conkeror { };
-  };
+  conkeror = callPackage ../applications/networking/browsers/conkeror { };
 
   cuneiform = builderDefsPackage (import ../tools/graphics/cuneiform) {
     inherit cmake patchelf;
@@ -6789,7 +6793,7 @@ let
     inherit fetchurl stdenv xz pkgconfig perl zip libjpeg libpng zlib cairo
       python dbus dbus_glib freetype fontconfig bzip2 xlibs alsaLib libnotify
       wirelesstools;
-    inherit (gnome) libIDL libgnomeui gnomevfs gtk pango;
+    inherit (gnome) libIDL libgnomeui gnome_vfs gtk pango;
     inherit (xlibs) pixman;
     inherit (pythonPackages) ply;
   });
@@ -6799,7 +6803,7 @@ let
     inherit fetchurl stdenv xz pkgconfig perl zip libjpeg libpng zlib cairo
       python dbus dbus_glib freetype fontconfig bzip2 xlibs alsaLib libnotify
       wirelesstools;
-    inherit (gnome) libIDL libgnomeui gnomevfs gtk pango;
+    inherit (gnome) libIDL libgnomeui gnome_vfs gtk pango;
     inherit (xlibs) pixman;
     inherit (pythonPackages) ply;
   });
@@ -6815,7 +6819,7 @@ let
     inherit fetchurl stdenv xz pkgconfig perl zip libjpeg libpng zlib cairo
       python dbus dbus_glib freetype fontconfig bzip2 xlibs alsaLib libnotify
       wirelesstools;
-    inherit (gnome) libIDL libgnomeui gnomevfs gtk pango;
+    inherit (gnome) libIDL libgnomeui gnome_vfs gtk pango;
     inherit (xlibs) pixman;
     inherit (pythonPackages) ply;
   });
@@ -6825,7 +6829,7 @@ let
     inherit fetchurl stdenv xz pkgconfig perl zip libjpeg libpng zlib cairo
       python dbus dbus_glib freetype fontconfig bzip2 xlibs alsaLib libnotify
       wirelesstools;
-    inherit (gnome) libIDL libgnomeui gnomevfs gtk pango;
+    inherit (gnome) libIDL libgnomeui gnome_vfs gtk pango;
     inherit (xlibs) pixman;
     inherit (pythonPackages) ply;
   });
@@ -6976,7 +6980,7 @@ let
       which gettext makeWrapper file libidn sqlite docutils libnotify
       vala dbus_glib;
     inherit (gtkLibs) gtk glib;
-    inherit (gnome28) gtksourceview;
+    inherit (gnome) gtksourceview;
     inherit (webkit.passthru.args) libsoup;
     inherit (xlibs) kbproto xproto libXScrnSaver scrnsaverproto;
   };
@@ -6988,7 +6992,7 @@ let
   mmex = callPackage ../applications/office/mmex { };
 
   monodevelop = callPackage ../applications/editors/monodevelop {
-    inherit (gnome) gnomevfs libbonobo libglade libgnome GConf glib gtk;
+    inherit (gnome) gnome_vfs libbonobo libglade libgnome GConf glib gtk;
     mozilla = firefox;
     gtksharp = gtksharp2;
   };
@@ -7304,7 +7308,7 @@ let
 
   surf = callPackage ../applications/misc/surf {
     inherit (gtkLibs) gtk glib;
-    libsoup = gnome28.libsoup;
+    libsoup = gnome.libsoup;
   };
 
   svk = perlPackages.SVK;
@@ -7345,17 +7349,7 @@ let
 
   thinkingRock = callPackage ../applications/misc/thinking-rock { };
 
-  thunderbird = thunderbird3;
-
-  thunderbird2 = callPackage ../applications/networking/mailreaders/thunderbird/2.x.nix {
-    inherit (gnome) libIDL;
-  };
-
-  thunderbird3 = callPackage ../applications/networking/mailreaders/thunderbird/3.x.nix {
-    inherit (gnome) libIDL;
-  };
-
-  thunderbird5 = callPackage ../applications/networking/mailreaders/thunderbird/5.x.nix {
+  thunderbird = callPackage ../applications/networking/mailreaders/thunderbird/7.x.nix {
     inherit (gnome) libIDL;
   };
 
@@ -7393,7 +7387,7 @@ let
     inherit pkgconfig webkit makeWrapper;
     inherit (gtkLibs) gtk glib;
     inherit (xlibs) libX11 kbproto;
-    inherit (gnome28) glib_networking libsoup;
+    inherit (gnome) glib_networking libsoup;
   };
 
   valknut = callPackage ../applications/networking/p2p/valknut {
@@ -7478,9 +7472,10 @@ let
   wordnet = callPackage ../applications/misc/wordnet { };
 
   wrapFirefox =
-    { browser, browserName ? "firefox", desktopName ? "Firefox", nameSuffix ? "" }:
+    { browser, browserName ? "firefox", desktopName ? "Firefox", nameSuffix ? ""
+    , icon ? "${browser}/lib/${browser.name}/icons/mozicon128.png" }:
     import ../applications/networking/browsers/firefox/wrapper.nix {
-      inherit stdenv makeWrapper makeDesktopItem browser browserName desktopName nameSuffix;
+      inherit stdenv makeWrapper makeDesktopItem browser browserName desktopName nameSuffix icon;
       plugins =
         let
           enableAdobeFlash = getConfig [ browserName "enableAdobeFlash" ] true;
@@ -7889,9 +7884,16 @@ let
   #   import ../desktops/e17 { inherit callPackage pkgs; }
   # );
 
-  gnome28 = recurseIntoAttrs (import ../desktops/gnome-2.28 pkgs);
+  gnome2 = (callPackage ../desktops/gnome-2 {
+    callPackage = pkgs.newScope pkgs.gnome2;
+    self = pkgs.gnome2;
+  }  // pkgs.gtkLibs);
 
-  gnome = gnome28;
+  gnome3 = (import ../desktops/gnome-3 {
+    callPackage = pkgs.newScope pkgs.gnome3;
+  } // pkgs.gtkLibs3x);
+
+  gnome = recurseIntoAttrs gnome2;
 
   kde3 = recurseIntoAttrs {
 
@@ -7900,12 +7902,6 @@ let
       qt = qt3;
     };
 
-    kdebase = callPackage ../desktops/kde-3/kdebase {
-      stdenv = overrideGCC stdenv gcc43;
-      inherit (kde3) kdelibs;
-      qt = qt3;
-    };
-
     arts = callPackage ../development/libraries/arts {
       qt = qt3;
       inherit (gnome) glib;
@@ -7921,11 +7917,6 @@ let
       inherit (kde3) kdelibs;
     };
 
-    kile = callPackage ../applications/editors/kile/2.0.nix {
-      inherit (kde3) arts kdelibs;
-      qt = qt3;
-    };
-
     kphone = callPackage ../applications/networking/kphone {
       qt = qt3;
       stdenv = overrideGCC stdenv gcc42; # I'm to lazy to clean up header files
@@ -7988,7 +7979,7 @@ let
 
       kdiff3 = callPackage ../tools/text/kdiff3 { };
 
-      kile = callPackage ../applications/editors/kile/2.1.nix { };
+      kile = callPackage ../applications/editors/kile { };
 
       kmplayer = callPackage ../applications/video/kmplayer {
         inherit (pkgs.gtkLibs) pango;
@@ -8236,6 +8227,8 @@ let
 
   ### SCIENCE / MISC
 
+  boinc = callPackage ../applications/science/misc/boinc { };
+
   golly = callPackage ../applications/science/misc/golly { };
 
   simgrid = callPackage ../applications/science/misc/simgrid { };
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index e55b471a957c..aa14f2360bd2 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -921,14 +921,16 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   parallel_1_1_0_1 = callPackage ../development/libraries/haskell/parallel/1.1.0.1.nix {};
   parallel_2_2_0_1 = callPackage ../development/libraries/haskell/parallel/2.2.0.1.nix {};
   parallel_3_1_0_1 = callPackage ../development/libraries/haskell/parallel/3.1.0.1.nix {};
+  parallel_3_2_0_0 = callPackage ../development/libraries/haskell/parallel/3.2.0.0.nix {};
   parallel = self.parallel_1_1_0_1;
 
   parseargs = callPackage ../development/libraries/haskell/parseargs {};
 
   parsec_2_1_0_1 = callPackage ../development/libraries/haskell/parsec/2.1.0.1.nix {};
   parsec_3_1_1   = callPackage ../development/libraries/haskell/parsec/3.1.1.nix {};
+  parsec_3_1_2   = callPackage ../development/libraries/haskell/parsec/3.1.2.nix {};
   parsec2 = self.parsec_2_1_0_1;
-  parsec3 = self.parsec_3_1_1;
+  parsec3 = self.parsec_3_1_2;
   parsec  = self.parsec2;
 
   parsimony = callPackage ../development/libraries/haskell/parsimony {};
@@ -1175,6 +1177,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   text_0_11_1_5 = callPackage ../development/libraries/haskell/text/0.11.1.5.nix {};
   text = self.text_0_11_1_5;
 
+  thespian = callPackage ../development/libraries/haskell/thespian {};
+
   thLift = callPackage ../development/libraries/haskell/th-lift {};
 
   threadmanager = callPackage ../development/libraries/haskell/threadmanager {};
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ae902dabe5df..ece567bb0759 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -292,7 +292,7 @@ rec {
     };
     buildInputs = [ TestWWWMechanizeCatalyst TestUseOk ];
     propagatedBuildInputs =
-      [ CatalystPluginAuthentication ClassAccessor CryptPasswdMD5 AuthenHtpasswd ];
+      [ CatalystPluginAuthentication ClassAccessor CryptPasswdMD5 AuthenHtpasswd HTMLForm ];
   };
 
   CatalystAuthenticationStoreDBIxClass = buildPerlPackage rec {
@@ -389,10 +389,10 @@ rec {
   };
 
   CatalystRuntime = buildPerlPackage rec{
-    name = "Catalyst-Runtime-5.80033";
+    name = "Catalyst-Runtime-5.90003";
     src = fetchurl {
       url = "mirror://cpan/authors/id/B/BO/BOBTFISH/${name}.tar.gz";
-      sha256 = "1q542lrnvc0a11923awhk51fqzzxfa8zdkbch7z07dl8y81mwhl2";
+      sha256 = "0i53d208gf9bg6zasa8ya0nk3wik1crfrkw9rmbxsba16i5nm101";
     };
     buildInputs = [ TestException ];
     propagatedBuildInputs =
@@ -405,6 +405,7 @@ rec {
         TextSimpleTable TimeHiRes TreeSimple TreeSimpleVisitorFactory
         URI TaskWeaken /* TextBalanced */ MROCompat MooseXTypes
         MooseXGetopt MooseXTypesCommon StringRewritePrefix
+        MooseXTypesLoadableClass Plack PlackMiddlewareReverseProxy
       ];
   };
 
@@ -1148,6 +1149,15 @@ rec {
     };
   };
 
+  DevelStackTraceAsHTML = buildPerlPackage rec {
+    name = "Devel-StackTrace-AsHTML-0.11";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Devel/${name}.tar.gz";
+      sha256 = "0y0r42gszp3bxbs9j2nn3xgs8ij1cnadrywwwdc6r0y8m0siyapg";
+    };
+    propagatedBuildInputs = [ DevelStackTrace ];
+  };
+
   DevelSymdump = buildPerlPackage rec {
     name = "Devel-Symdump-2.08";
     src = fetchurl {
@@ -1268,6 +1278,14 @@ rec {
     };
   };
 
+  EncodeLocale = buildPerlPackage rec {
+    name = "Encode-Locale-1.02";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Encode/${name}.tar.gz";
+      sha256 = "0h2kim6mg236s749wlg35lhv1zdkrkr0bm65spkg005cn0mbmi90";
+    };
+  };
+
   Error = buildPerlPackage rec {
     name = "Error-0.17016";
     src = fetchurl {
@@ -1377,6 +1395,15 @@ rec {
     propagatedBuildInputs = [ NumberCompare TextGlob ];
   };
 
+  FileListing = buildPerlPackage rec {
+    name = "File-Listing-6.03";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/File/${name}.tar.gz";
+      sha256 = "154hp49pcngsqrwi1pbw3fx82v7vql4dc9wh7qfj37vmy8sn1s93";
+    };
+    propagatedBuildInputs = [ HTTPDate ];
+  };
+
   FileModified = buildPerlPackage {
     name = "File-Modified-0.07";
     src = fetchurl {
@@ -1410,6 +1437,14 @@ rec {
     propagatedBuildInputs = [ClassInspector ParamsUtil];
   };
 
+  FilesysNotifySimple = buildPerlPackage rec {
+    name = "Filesys-Notify-Simple-0.08";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Filesys/${name}.tar.gz";
+      sha256 = "042klyvi8fbkhmyg1h7883bbjdhiclmky9w2wfga7piq5il6nxgi";
+    };
+  };
+
   FileTemp = buildPerlPackage rec {
     name = "File-Temp-0.22";
     src = fetchurl {
@@ -1541,6 +1576,14 @@ rec {
     propagatedBuildInputs = [ Clone ];
   };
 
+  HashMultiValue = buildPerlPackage rec {
+    name = "Hash-MultiValue-0.10";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Hash/${name}.tar.gz";
+      sha256 = "1n9klrg01myij2svcmdc212msmsr3cmsl2yw5k9my8j3s96b5yn1";
+    };
+  };
+
   HookLexWrap = buildPerlPackage rec {
     name = "Hook-LexWrap-0.22";
     src = fetchurl {
@@ -1550,6 +1593,15 @@ rec {
     buildInputs = [ pkgs.unzip ];
   };
 
+  HTMLForm = buildPerlPackage rec {
+    name = "HTML-Form-6.00";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/HTML/${name}.tar.gz";
+      sha256 = "11s9mlybjm14sa6m3wcfjf9pv00yynv0yk4parx44ga9h1a6y6xl";
+    };
+    propagatedBuildInputs = [ HTMLParser HTTPMessage URI ];
+  };
+
   HTMLFormFu = buildPerlPackage rec {
     name = "HTML-FormFu-0.03007";
     src = fetchurl {
@@ -1568,11 +1620,11 @@ rec {
     ];
   };
 
-  HTMLParser = buildPerlPackage {
-    name = "HTML-Parser-3.56";
+  HTMLParser = buildPerlPackage rec {
+    name = "HTML-Parser-3.68";
     src = fetchurl {
-      url = mirror://cpan/authors/id/G/GA/GAAS/HTML-Parser-3.56.tar.gz;
-      sha256 = "0x1h42r54aq4yqpwi7mla4jzia9c5ysyqh8ir2nav833f9jm6g2h";
+      url = "mirror://cpan/modules/by-module/HTML/${name}.tar.gz";
+      sha256 = "1hhniqqpvi01vxsyvmcj677yg7a12zy0a3ynwxwg3ig6shn8a3j3";
     };
     propagatedBuildInputs = [HTMLTagset];
   };
@@ -1586,11 +1638,11 @@ rec {
     propagatedBuildInputs = [HTMLParser];
   };
 
-  HTMLTagset = buildPerlPackage {
-    name = "HTML-Tagset-3.10";
+  HTMLTagset = buildPerlPackage rec {
+    name = "HTML-Tagset-3.20";
     src = fetchurl {
-      url = mirror://cpan/authors/id/P/PE/PETDANCE/HTML-Tagset-3.10.tar.gz;
-      sha256 = "05k292qy7jzjlmmybis8nncpnwwa4jfkm7q3gq6866ydxrzds9xh";
+      url = "mirror://cpan/modules/by-module/HTML/${name}.tar.gz";
+      sha256 = "1qh8249wgr4v9vgghq77zh1d2zs176bir223a8gh3k9nksn7vcdd";
     };
   };
 
@@ -1652,6 +1704,23 @@ rec {
     propagatedBuildInputs = [ LWP ];
   };
 
+  HTTPCookies = buildPerlPackage rec {
+    name = "HTTP-Cookies-6.00";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/HTTP/${name}.tar.gz";
+      sha256 = "0758c3rj22z1bj7pbypmh1jadgd6w68nn8inhds96r39jhc79d9h";
+    };
+    propagatedBuildInputs = [ HTTPDate HTTPMessage ];
+  };
+
+  HTTPDate = buildPerlPackage rec {
+    name = "HTTP-Date-6.00";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/HTTP/${name}.tar.gz";
+      sha256 = "15nrnfir4xqdd3lm0s0jgh9zwxx5ylmvl63xqmj5wipzl4l76vs6";
+    };
+  };
+
   HTTPHeaderParserXS = buildPerlPackage rec {
     name = "HTTP-HeaderParser-XS-0.20";
     src = fetchurl {
@@ -1660,6 +1729,24 @@ rec {
     };
   };
 
+  HTTPMessage = buildPerlPackage rec {
+    name = "HTTP-Message-6.02";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/HTTP/${name}.tar.gz";
+      sha256 = "10ai2vabbx6yqsyz6rbi7hp4vljmlq9kyn74jvjp95la5v4b6c93";
+    };
+    propagatedBuildInputs = [ EncodeLocale HTMLParser HTTPDate IOCompress LWPMediaTypes URI ];
+  };
+
+  HTTPParserXS = buildPerlPackage rec {
+    name = "HTTP-Parser-XS-0.14";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/HTTP/${name}.tar.gz";
+      sha256 = "06srbjc380kvvj76r8n5c2y282j5zfgn0s0zmb9h3shwrynfqj05";
+    };
+    buildInputs = [ TestMore ];
+  };
+
   HTTPRequestAsCGI = buildPerlPackage rec {
     name = "HTTP-Request-AsCGI-1.2";
     src = fetchurl {
@@ -1670,12 +1757,12 @@ rec {
   };
 
   HTTPResponseEncoding = buildPerlPackage rec {
-    name = "HTTP-Response-Encoding-0.05";
+    name = "HTTP-Response-Encoding-0.06";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/D/DA/DANKOGAI/${name}.tar.gz";
-      sha256 = "04gdl633g0s2ckn7zixcma2krbpfcd46jngg155qpdx5sdwfkm16";
+      url = "mirror://cpan/modules/by-module/HTTP/${name}.tar.gz";
+      sha256 = "1am8lis8107s5npca1xgazdy5sknknzcqyhdmc220s4a4f77n5hh";
     };
-    propagatedBuildInputs = [LWP];
+    propagatedBuildInputs = [ LWP ];
   };
 
   HTTPServerSimple = buildPerlPackage rec {
@@ -1732,14 +1819,13 @@ rec {
     };
   };
 
-  IOSocketSSL = buildPerlPackage {
-    name = "IO-Socket-SSL-1.33";
+  IOSocketSSL = buildPerlPackage rec {
+    name = "IO-Socket-SSL-1.44";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SU/SULLR/IO-Socket-SSL-1.33.tar.gz;
-      sha256 = "1lpp2cs794d989b9gfhssjv1bkcs9lmrkjcpnxsavj7822izs4xj";
+      url = "mirror://cpan/modules/by-module/IO/${name}.tar.gz";
+      sha256 = "1xbgx1ij34a3dlwv94zjh3a02cj2lyhwzxcmv59harl784xn1mlg";
     };
-    propagatedBuildInputs = [NetSSLeay];
-    # TODO: IOSocketINET6
+    propagatedBuildInputs = [ URI NetSSLeay ];
   };
 
   IOString = buildPerlPackage rec {
@@ -2029,21 +2115,39 @@ rec {
     };
   };
 
-
   LWP = buildPerlPackage rec {
-    name = "libwww-perl-5.825";
+    name = "libwww-perl-6.02";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/G/GA/GAAS/${name}.tar.gz";
-      sha256 = "1wb7br1n86571xz19l20cc5ysy1lx3rhvlk02g5517919z3jxvhw";
+      url = "mirror://cpan/modules/by-module/LWP/${name}.tar.gz";
+      sha256 = "0cn2cbrz5mrpqmnfhhk0bgv0c1q1x722xlnlnzw6zymj5sg3w6dm";
     };
-    propagatedBuildInputs = [URI HTMLParser HTMLTagset];
+    propagatedBuildInputs =
+      [ EncodeLocale FileListing HTMLParser HTTPCookies HTTPMessage LWPMediaTypes URI NetHTTP ];
+  };
+
+  LWPMediaTypes = buildPerlPackage rec {
+    name = "LWP-MediaTypes-6.01";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/LWP/${name}.tar.gz";
+      sha256 = "1fhxql3xnhrlyzkjyss4swvhyh0r58cv2kwjcpj3mdbbg54ah9fz";
+    };
+  };
+
+  LWPProtocolHttps = buildPerlPackage rec {
+    name = "LWP-Protocol-https-6.02";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/LWP/${name}.tar.gz";
+      sha256 = "0y2an4v7g4jm8fsszk2489m179i28kx79ywwiywkwk1aw3yqh0y5";
+    };
+    patches = [ ../development/perl-modules/lwp-protocol-https-cert-file.patch ];
+    propagatedBuildInputs = [ LWP IOSocketSSL ];
+    doCheck = false; # tries to connect to https://www.apache.org/.
   };
 
   maatkit = import ../development/perl-modules/maatkit {
     inherit fetchurl buildPerlPackage stdenv DBDmysql;
   };
 
-
   MailIMAPClient = buildPerlPackage {
     name = "Mail-IMAPClient-2.2.9";
     src = fetchurl {
@@ -2251,6 +2355,15 @@ rec {
     propagatedBuildInputs = [ Moose MooseXTypes ];
   };
 
+  MooseXTypesLoadableClass = buildPerlPackage rec {
+    name = "MooseX-Types-LoadableClass-0.006";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/MooseX/${name}.tar.gz";
+      sha256 = "035d2gzq1j60skn39jav2jr6sbx1hq9vqmmfjfc3cvhahfzrygs4";
+    };
+    propagatedBuildInputs = [ ClassLoad Moose MooseXTypes NamespaceClean ];
+  };
+
   Mouse = buildPerlPackage rec {
     name = "Mouse-0.26";
     src = fetchurl {
@@ -2313,7 +2426,7 @@ rec {
     patches =
       [ ../development/perl-modules/net-amazon-mechanicalturk.patch ];
     propagatedBuildInputs =
-      [ DigestHMAC LWP URI XMLParser IOString CryptSSLeay ];
+      [ DigestHMAC LWP LWPProtocolHttps URI XMLParser IOString ];
     buildInputs = [ DBI DBDSQLite ];
   };
 
@@ -2327,6 +2440,14 @@ rec {
     doCheck = false;
   };
 
+  NetHTTP = buildPerlPackage rec {
+    name = "Net-HTTP-6.01";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Net/${name}.tar.gz";
+      sha256 = "0ipad5y605fr968snxmp1sxrkvag9r5y0g8qvj9n7ca9nbwq7n3n";
+    };
+  };
+
   NetIP = buildPerlPackage {
     name = "Net-IP-1.25";
     src = fetchurl {
@@ -2336,10 +2457,10 @@ rec {
   };
 
   NetServer = buildPerlPackage rec {
-    name = "Net-Server-0.97";
+    name = "Net-Server-0.99";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/R/RH/RHANDOM/${name}.tar.gz";
-      sha256 = "13vhv13w06g6h6iqx440q1h6hwj0kpjdxcc3fl9crkwg5glygg2f";
+      url = "mirror://cpan/modules/by-module/Net/${name}.tar.gz";
+      sha256 = "0pdf2fvklpcxrdz3wwmhbvjs6kvzcvjw28f3pny8z17188lv06n1";
     };
     doCheck = false; # seems to hang waiting for connections
   };
@@ -2363,16 +2484,15 @@ rec {
     propagatedBuildInputs = [IOSocketSSL];
   };
 
-  NetSSLeay = buildPerlPackage {
-    name = "Net-SSLeay-1.36";
+  NetSSLeay = buildPerlPackage rec {
+    name = "Net-SSLeay-1.42";
     src = fetchurl {
-      url = mirror://cpan/authors/id/F/FL/FLORA/Net-SSLeay-1.36.tar.gz;
-      sha256 = "1kjk5kdwsklchxrv21m4ii80akbxrg3i6y4zwfb91an5cdr8jqp2";
+      url = "mirror://cpan/modules/by-module/Net/${name}.tar.gz";
+      sha256 = "17gxf0d1l0qlxn0d6gqz1dlzl6cdqv0jg47k0h1fcs45rlcpgjmn";
     };
-    buildInputs = [pkgs.openssl];
+    buildInputs = [ pkgs.openssl ];
     OPENSSL_PREFIX = pkgs.openssl;
-    # Test perform network access
-    doCheck = false;
+    doCheck = false; # Test performs network access.
   };
 
   NetTwitterLite = buildPerlPackage {
@@ -2574,6 +2694,28 @@ rec {
     };
   };
 
+  Plack = buildPerlPackage rec {
+    name = "Plack-0.9984";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/${name}.tar.gz";
+      sha256 = "0xx200va9l6zimp2ybvbh1l3m80cdw03mfxqqf9k6v7cqvxir6pz";
+    };
+    buildInputs = [ TestRequires TestTCP HTTPRequestAsCGI ];
+    propagatedBuildInputs =
+      [ LWP FileShareDir TryTiny DevelStackTrace DevelStackTraceAsHTML HTTPBody
+        HashMultiValue FilesysNotifySimple
+      ];
+  };
+
+  PlackMiddlewareReverseProxy = buildPerlPackage rec {
+    name = "Plack-Middleware-ReverseProxy-0.10";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Plack/${name}.tar.gz";
+      sha256 = "0w9bl1z71frra0dgz4gsxskvj1c8dhjkhrj2gqwdds6jcqyny7mf";
+    };
+    propagatedBuildInputs = [ Plack YAML ];
+  };
+
   PPI = buildPerlPackage rec {
     name = "PPI-1.210";
     src = fetchurl {
@@ -2593,6 +2735,14 @@ rec {
     doCheck = false;
   };
 
+  PSGI = buildPerlPackage rec {
+    name = "PSGI-1.03";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/${name}.tar.gz";
+      sha256 = "0b1k7smg50xfdhrjifa2gkkm52vna41alvbw8vb2pk99jmgnngh6";
+    };
+  };
+
   ModulePluggable = buildPerlPackage rec {
     name = "Module-Pluggable-3.9";
     src = fetchurl {
@@ -2809,6 +2959,17 @@ rec {
     ];
   };
 
+  Starman = buildPerlPackage rec {
+    name = "Starman-0.2014";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Plack/${name}.tar.gz";
+      sha256 = "0hf3wpm2q4zcgjahjrpkkzy4fn74vkddg9yqs7p97xb290pvlbki";
+    };
+    buildInputs = [ TestRequires TestTCP ];
+    propagatedBuildInputs = [ Plack DataDump HTTPParserXS NetServer ];
+    doCheck = false; # binds to various TCP ports1
+  };
+
   StatisticsDescriptive = buildPerlPackage rec {
     name = "Statistics-Descriptive-3.0202";
     src = fetchurl {
@@ -2977,6 +3138,15 @@ rec {
     buildInputs = [TestPodCoverage];
   };
 
+  TaskPlack = buildPerlPackage rec {
+    name = "Task-Plack-0.25";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Task/${name}.tar.gz";
+      sha256 = "1mk3z7xis1akf8245qgw5mnnsl7570kdidx83nj81kv410pw2v43";
+    };
+    propagatedBuildInputs = [ Plack PSGI ];
+  };
+
   TaskWeaken = buildPerlPackage {
     name = "Task-Weaken-1.02";
     src = fetchurl {
@@ -3162,14 +3332,6 @@ rec {
     };
   };
 
-  TestSimple = buildPerlPackage rec {
-    name = "Test-Simple-0.98";
-    src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
-      sha256 = "1a0jrl3n2g05qn6c79pv5bnc1wlq36qccwdgf1pjrrvmrgi07cig";
-    };
-  };
-
   TestScript = buildPerlPackage rec {
     name = "Test-Script-1.07";
     src = fetchurl {
@@ -3179,6 +3341,22 @@ rec {
     propagatedBuildInputs = [ProbePerl IPCRun3];
   };
 
+  TestSharedFork = buildPerlPackage rec {
+    name = "Test-SharedFork-0.18";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
+      sha256 = "1wc41jzi780w75m2ry1038mzxyz7386r8rmhbnmj3krcdxy676cc";
+    };
+  };
+
+  TestSimple = buildPerlPackage rec {
+    name = "Test-Simple-0.98";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
+      sha256 = "1a0jrl3n2g05qn6c79pv5bnc1wlq36qccwdgf1pjrrvmrgi07cig";
+    };
+  };
+
   TestSubCalls = buildPerlPackage rec {
     name = "Test-SubCalls-1.09";
     src = fetchurl {
@@ -3188,6 +3366,15 @@ rec {
     propagatedBuildInputs = [ HookLexWrap ];
   };
 
+  TestTCP = buildPerlPackage rec {
+    name = "Test-TCP-1.13";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
+      sha256 = "00vbkynkdflqgdvywdxzgg3yx1w7nfb68py8l3lglq9jq4pq9wbb";
+    };
+    propagatedBuildInputs = [ TestMore TestSharedFork ];
+  };
+
   TestTester = buildPerlPackage {
     name = "Test-Tester-0.107";
     src = fetchurl {
@@ -3227,17 +3414,17 @@ rec {
   };
 
   TestWWWMechanizeCatalyst = buildPerlPackage rec {
-    name = "Test-WWW-Mechanize-Catalyst-0.45";
+    name = "Test-WWW-Mechanize-Catalyst-0.55";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/L/LB/LBROCARD/${name}.tar.gz";
-      sha256 = "0hixz0hibv2z87kdqvrphzgww0xibgg56w7bh299dgw2739hy4yf";
+      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
+      sha256 = "0zdg4sxx231dj3qgbr58i63927gl4qzh0krignqxp8q6ck3hr63f";
     };
-    propagatedBuildInputs = [
-      CatalystRuntime TestWWWMechanize WWWMechanize
-      CatalystPluginSessionStateCookie
-    ];
-    buildInputs = [TestPod];
-    doCheck = false;
+    propagatedBuildInputs =
+      [ CatalystRuntime TestWWWMechanize WWWMechanize
+        CatalystPluginSessionStateCookie HTMLForm
+      ];
+    buildInputs = [ TestPod ];
+    doCheck = false; # listens on an external port
   };
 
   TextAligner = buildPerlPackage rec {
@@ -3435,10 +3622,10 @@ rec {
   };
 
   URI = buildPerlPackage rec {
-    name = "URI-1.51";
+    name = "URI-1.59";
     src = fetchurl {
       url = "mirror://cpan/authors/id/G/GA/GAAS/${name}.tar.gz";
-      sha256 = "0gfdphz0yhm62vn9cbw720i6pm1gingcir15dq8ppbnk6cylnyal";
+      sha256 = "1inanl9vs6q1bwvig1s8hdwagjw4484gs4s7pjnx5f4xb2dx526b";
     };
   };
 
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 09be02ba915b..d4a50a323710 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -301,8 +301,6 @@ with (import ./release-lib.nix);
   texLiveBeamer = linux;
   texLiveExtra = linux;
   texinfo = all;
-  thunderbird2 = linux;
-  thunderbird3 = linux;
   tightvnc = linux;
   time = linux;
   tinycc = ["i686-linux"];