summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2010-08-07 20:14:04 +0000
committerLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2010-08-07 20:14:04 +0000
commit46082f25f9a79e9224a34126cf38e2d3967e2649 (patch)
tree173a0f0b2c9973f3a1430b2d7476f31fbffe12e5 /pkgs
parenta70b44b3cbf7babd8613b005a619422969c750ff (diff)
parent4ed96dfbc27186ba5cced3a99e25b6867cac5fd0 (diff)
downloadnixpkgs-46082f25f9a79e9224a34126cf38e2d3967e2649.tar
nixpkgs-46082f25f9a79e9224a34126cf38e2d3967e2649.tar.gz
nixpkgs-46082f25f9a79e9224a34126cf38e2d3967e2649.tar.bz2
nixpkgs-46082f25f9a79e9224a34126cf38e2d3967e2649.tar.lz
nixpkgs-46082f25f9a79e9224a34126cf38e2d3967e2649.tar.xz
nixpkgs-46082f25f9a79e9224a34126cf38e2d3967e2649.tar.zst
nixpkgs-46082f25f9a79e9224a34126cf38e2d3967e2649.zip
Updating from trunk
svn path=/nixpkgs/branches/stdenv-updates/; revision=23027
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/editors/vim/configurable.nix12
-rw-r--r--pkgs/applications/misc/adobe-reader/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix2
-rw-r--r--pkgs/applications/networking/irc/quassel/default.nix4
-rw-r--r--pkgs/applications/networking/irc/weechat/default.nix18
-rw-r--r--pkgs/applications/science/logic/coq/default.nix12
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix4
-rw-r--r--pkgs/applications/version-management/monotone-viz/graphviz.patch34
-rw-r--r--pkgs/applications/version-management/monotone-viz/mtn-head.nix10
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix4
-rw-r--r--pkgs/applications/window-managers/awesome/default.nix6
-rwxr-xr-xpkgs/build-support/buildenv/builder.pl2
-rw-r--r--pkgs/build-support/fetchurl/default.nix4
-rw-r--r--pkgs/desktops/gnome-2.28/desktop/vte/default.nix6
-rw-r--r--pkgs/desktops/kde-4.4/accessibility/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/admin/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/artwork/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/base-runtime/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/base-workspace/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/base/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/bindings/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/edu/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/games/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/graphics/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/libs/default.nix3
-rw-r--r--pkgs/desktops/kde-4.4/multimedia/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/network/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/oxygen-icons/default.nix1
-rw-r--r--pkgs/desktops/kde-4.4/pim-runtime/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/pim/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/pimlibs/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/plasma-addons/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/sdk/default.nix3
-rw-r--r--pkgs/desktops/kde-4.4/toys/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/utils/default.nix2
-rw-r--r--pkgs/desktops/kde-4.4/webdev/default.nix2
-rw-r--r--pkgs/desktops/kde-4.5/default.nix81
-rw-r--r--pkgs/desktops/kde-4.5/kde-package/default.nix17
-rw-r--r--pkgs/desktops/kde-4.5/libs/default.nix23
-rw-r--r--pkgs/desktops/kde-4.5/support/oxygen-icons/default.nix16
-rw-r--r--pkgs/desktops/kde-4.5/support/polkit-qt-1/default.nix16
-rw-r--r--pkgs/desktops/xfce-4/applications/terminal/default.nix6
-rw-r--r--pkgs/development/compilers/gcl/default.nix5
-rw-r--r--pkgs/development/compilers/go/default.nix6
-rw-r--r--pkgs/development/compilers/path64/default.nix4
-rw-r--r--pkgs/development/libraries/kerberos/heimdal.nix17
-rw-r--r--pkgs/development/libraries/lcms2/default.nix18
-rw-r--r--pkgs/development/libraries/libssh2/default.nix19
-rw-r--r--pkgs/development/libraries/phonon-backend-vlc/default.nix23
-rw-r--r--pkgs/development/libraries/sqlite/3.6.x.nix23
-rw-r--r--pkgs/development/libraries/sqlite/default.nix9
-rw-r--r--pkgs/development/perl-modules/DBD-SQLite/default.nix4
-rw-r--r--pkgs/development/perl-modules/DBD-SQLite/external-sqlite.patch50
-rw-r--r--pkgs/os-specific/linux/dmtcp/default.nix4
-rw-r--r--pkgs/os-specific/linux/dmtcp/devel.nix45
-rw-r--r--pkgs/os-specific/linux/kernel/linux-2.6.27.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-2.6.32.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-2.6.33.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-2.6.34.nix4
-rw-r--r--pkgs/os-specific/linux/pam_ccreds/default.nix19
-rw-r--r--pkgs/os-specific/linux/pam_krb5/default.nix19
-rw-r--r--pkgs/os-specific/linux/syslinux/default.nix31
-rw-r--r--pkgs/os-specific/linux/syslinux/perl-deps.patch81
-rw-r--r--pkgs/servers/mail/postfix/default.nix10
-rw-r--r--pkgs/servers/sql/virtuoso/default.nix5
-rw-r--r--pkgs/stdenv/adapters.nix2
-rw-r--r--pkgs/stdenv/generic/default.nix4
-rw-r--r--pkgs/stdenv/linux/default.nix23
-rw-r--r--pkgs/stdenv/mingw/default.nix4
-rw-r--r--pkgs/tools/archivers/cpio/default.nix49
-rw-r--r--pkgs/tools/archivers/cpio/latest.nix45
-rw-r--r--pkgs/tools/archivers/p7zip/default.nix13
-rw-r--r--pkgs/tools/cd-dvd/unetbootin/default.nix62
-rw-r--r--pkgs/tools/filesystems/dosfstools/default.nix36
-rw-r--r--pkgs/tools/filesystems/mtools/default.nix17
-rw-r--r--pkgs/tools/graphics/asymptote/src-for-default.nix8
-rw-r--r--pkgs/tools/networking/curl/default.nix15
-rw-r--r--pkgs/tools/networking/dhcp/default.nix4
-rw-r--r--pkgs/tools/networking/nbd/default.nix6
-rw-r--r--pkgs/tools/package-management/nix/sqlite.nix6
-rw-r--r--pkgs/top-level/all-packages.nix216
-rw-r--r--pkgs/top-level/perl-packages.nix2
-rw-r--r--pkgs/top-level/release-lib.nix4
-rw-r--r--pkgs/top-level/release.nix29
84 files changed, 766 insertions, 515 deletions
diff --git a/pkgs/applications/editors/vim/configurable.nix b/pkgs/applications/editors/vim/configurable.nix
index bb51d23790b..a1a9b5e1135 100644
--- a/pkgs/applications/editors/vim/configurable.nix
+++ b/pkgs/applications/editors/vim/configurable.nix
@@ -14,7 +14,8 @@ composableDerivation {} {
     configureFlags = ["--enable-gui=auto" "--with-features=${args.features}"];
 
     buildNativeInputs = [ncurses pkgconfig]
-      ++ [ gtk libX11 libXext libSM libXpm libXt libXaw libXau libXmu ];
+      ++ [ gtk libX11 libXext libSM libXpm libXt libXaw libXau libXmu glib 
+           libICE ];
 
     # most interpreters aren't tested yet.. (see python for example how to do it)
     flags = {
@@ -30,17 +31,18 @@ composableDerivation {} {
       // edf { name = "python"; feat = "pythoninterp"; enable = { buildNativeInputs = [python]; }; } #Include Python interpreter.
       // edf { name = "tcl"; enable = { buildNativeInputs = [tcl]; }; } #Include Tcl interpreter.
       // edf { name = "ruby"; feat = "rubyinterp"; enable = { buildNativeInputs = [ruby]; };} #Include Ruby interpreter.
+      // edf { name = "lua" ; feat = "luainterp"; enable = { buildNativeInputs = [lua]; configureFlags = ["--with-lua-prefix=${args.lua}"];};}
       // edf { name = "cscope"; } #Include cscope interface.
       // edf { name = "workshop"; } #Include Sun Visual Workshop support.
       // edf { name = "netbeans"; } #Disable NetBeans integration support.
-      // edf { name = "sniff"; } #Include Sniff interface.
+      // edf { name = "sniff"; feat = "sniff" ; } #Include Sniff interface.
       // edf { name = "multibyte"; } #Include multibyte editing support.
-      // edf { name = "hangulinput"; } #Include Hangul input support.
-      # // edf { name = "xim"; enable = { buildNativeInputs = [xim]; }; } #Include XIM input support.
+      // edf { name = "hangulinput"; feat = "hangulinput" ;} #Include Hangul input support.
+      // edf { name = "xim"; } #Include XIM input support.
       // edf { name = "fontset"; } #Include X fontset output support.
       // edf { name = "acl"; } #Don't check for ACL support.
       // edf { name = "gpm"; } #Don't use gpm (Linux mouse daemon).
-      // edf { name = "nls"; } #Don't support NLS (gettext()).
+      // edf { name = "nls"; enable = {buildNativeInputs = [gettext];}; } #Don't support NLS (gettext()).
       ;
 
   cfg = {
diff --git a/pkgs/applications/misc/adobe-reader/default.nix b/pkgs/applications/misc/adobe-reader/default.nix
index 00c6a1ef415..14de436379b 100644
--- a/pkgs/applications/misc/adobe-reader/default.nix
+++ b/pkgs/applications/misc/adobe-reader/default.nix
@@ -3,13 +3,13 @@
 assert stdenv.system == "i686-linux";
 
 stdenv.mkDerivation {
-  name = "adobe-reader-9.2-1";
+  name = "adobe-reader-9.3.3-1";
   
   builder = ./builder.sh;
   
   src = fetchurl {
-    url = http://ardownload.adobe.com/pub/adobe/reader/unix/9.x/9.2/enu/AdbeRdr9.2-1_i486linux_enu.tar.bz2;
-    sha256 = "0067w0kjj2c04342g8c9qvcs49kkiqlxn2zyx9qzlg7a32qfc9l2";
+    url = http://ardownload.adobe.com/pub/adobe/reader/unix/9.x/9.3.3/enu/AdbeRdr9.3.3-1_i486linux_enu.tar.bz2;
+    sha256 = "1qssbdjy3v07agyh55bhsmvzakq9bs3hd6dw032ikwbpvb2gs807";
   };
 
   # !!! Adobe Reader contains copies of OpenSSL, libcurl, and libicu.
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index dbb20dc4fd9..bbe51bd1dad 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
 
   libPath = 
     stdenv.lib.makeLibraryPath
-       [ stdenv.glibc stdenv.gcc.gcc ffmpeg cairo pango glib libXrender gtk nspr nss fontconfig freetype alsaLib libX11 GConf libXext atk libXt expat zlib libjpeg bzip2 libpng libXScrnSaver dbus dbus_glib cups libgcrypt] ;
+       [ stdenv.gcc.libc stdenv.gcc.gcc ffmpeg cairo pango glib libXrender gtk nspr nss fontconfig freetype alsaLib libX11 GConf libXext atk libXt expat zlib libjpeg bzip2 libpng libXScrnSaver dbus dbus_glib cups libgcrypt] ;
 
   installPhase = ''
     ensureDir $out/bin
diff --git a/pkgs/applications/networking/irc/quassel/default.nix b/pkgs/applications/networking/irc/quassel/default.nix
index ca583c52ed1..d94c00daed9 100644
--- a/pkgs/applications/networking/irc/quassel/default.nix
+++ b/pkgs/applications/networking/irc/quassel/default.nix
@@ -46,11 +46,11 @@ in with stdenv; mkDerivation rec {
       meaning that one (or multiple) client(s) can attach to
       and detach from a central core -- much like the popular
       combination of screen and a text-based IRC client such
-      as WeeChat, but graphical(based on Qt4/KDE4).
+      as WeeChat, but graphical (based on Qt4/KDE4).
     '';
     license = "GPLv3";
     maintainers = [ maintainers.phreedom ];
-    platforms = platforms.all;
+    inherit (qt4.meta) platforms;
   };
 }
 
diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix
new file mode 100644
index 00000000000..a9cf07a0b12
--- /dev/null
+++ b/pkgs/applications/networking/irc/weechat/default.nix
@@ -0,0 +1,18 @@
+{stdenv, fetchurl, ncurses, openssl, perl, python, aspell}:
+
+stdenv.mkDerivation {
+  name = "weechat-0.3.2";
+
+  src = fetchurl {
+    url = http://weechat.org/files/src/weechat-0.3.2.tar.gz;
+    sha256 = "0ds548fmiv2fg69amhyg1v1rgyw51rqlp64p3rmsbm1lkcwwmivc";
+  };
+
+  buildInputs = [ncurses perl python openssl aspell];
+
+  meta = {
+    homepage = http://http://www.weechat.org/;
+    description = "A fast, light and extensible chat client";
+  };
+}
+     
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index acf88848f05..8716d39a176 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -4,19 +4,15 @@
 {stdenv, fetchurl, ocaml, camlp5, lablgtk, ncurses}:
 
 let
-
-  pname = "coq";
-  version = "8.2pl1";
-  name = "${pname}-${version}";
-
+  version = "8.2pl2";
 in
 
 stdenv.mkDerivation {
-  inherit name;
+  name = "coq-${version}";
 
   src = fetchurl {
-    url = "http://coq.inria.fr/V${version}/files/${name}.tar.gz";
-    sha256 = "7c15acfd369111e51d937cce632d22fc77a6718a5ac9f2dd2dcbdfab4256ae0c";
+    url = "http://coq.inria.fr/V${version}/files/coq-${version}.tar.gz";
+    sha256 = "0dh2vv3bvz8694dd12kjdkdaq19l1vslvygzif11igshc5bw4rhf";
   };
 
   buildInputs = [ ocaml camlp5 ncurses lablgtk ];
diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index 3cdf200d581..76a8015cb15 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -12,11 +12,11 @@ let
 in
 
 stdenv.mkDerivation rec {
-  name = "git-1.7.1";
+  name = "git-1.7.2.1";
 
   src = fetchurl {
     url = "mirror://kernel/software/scm/git/${name}.tar.bz2";
-    sha256 = "bcf008ec9639480a3ebfdc4708743b6c0978a8bd3103a2dda587ea9473b9dde2";
+    sha256 = "5446b4ece3b8d81b1fcbcd6c4b91f1961b6f4047a3f6173e3200bee368724921";
   };
 
   patches = [ ./docbook2texi.patch ];
diff --git a/pkgs/applications/version-management/monotone-viz/graphviz.patch b/pkgs/applications/version-management/monotone-viz/graphviz.patch
new file mode 100644
index 00000000000..e1f9bfc5f7f
--- /dev/null
+++ b/pkgs/applications/version-management/monotone-viz/graphviz.patch
@@ -0,0 +1,34 @@
+# patch "agraph.ml"
+#  from [8ae6c9bb70bbf9fd80e4e62d9f162ac581619b9e]
+#    to [05aa88921481ac9bfe238daeb4374fbc9993caaa]
+#
+============================================================
+--- a/agraph.ml	8ae6c9bb70bbf9fd80e4e62d9f162ac581619b9e
++++ b/agraph.ml	05aa88921481ac9bfe238daeb4374fbc9993caaa
+@@ -50,8 +50,9 @@ let dot_format params agraph =
+       agraph.nodes in
+ 
+   !+ "digraph \"monotone-viz\"\n{\n" ;
+-  if params.lr_layout then
+-    !+ "  graph [rankdir=LR] ;\n" ;
++  if params.lr_layout
++  then  !+ "  graph [rankdir=LR] ;\n"
++  else  !+ "  graph [rankdir=BT] ;\n" ;
+   !+ "  graph [ranksep=\"0.25\"] ;\n" ;
+   !+ "  node [label=\"\"] ;\n" ;
+   
+@@ -222,11 +223,11 @@ let spawn_dot graph status done_cb =
+   let dot_prg = graph.layout_params.dot_program in
+   let cmd = 
+     if Viz_misc.debug "dot"
+-    then [ "/bin/sh" ; "-c" ; 
++    then [ "/bin/sh" ; "-c" ; 
+ 	   Printf.sprintf 
+ 	     "set -o pipefail ; \
+-              tee agraph.in.dot | %s -q -y -s%.0f | tee agraph.out.dot" dot_prg ppi ]
+-    else [ dot_prg ; "-q" ; "-y" ; Printf.sprintf "-s%.0f" ppi ] in
++              tee agraph.in.dot | %s -q -s%.0f | tee agraph.out.dot" dot_prg ppi ]
++    else [ dot_prg ; "-q" ; Printf.sprintf "-s%.0f" ppi ] in
+   let error fmt =
+     Printf.kprintf (fun s -> done_cb (`LAYOUT_ERROR s)) fmt in
+   try
diff --git a/pkgs/applications/version-management/monotone-viz/mtn-head.nix b/pkgs/applications/version-management/monotone-viz/mtn-head.nix
index eb5228e09fd..9d9eb3a55bc 100644
--- a/pkgs/applications/version-management/monotone-viz/mtn-head.nix
+++ b/pkgs/applications/version-management/monotone-viz/mtn-head.nix
@@ -3,9 +3,9 @@ rec {
   src = fetchmtn {
     name = "monotone-viz-mtn-checkout";
     dbs = ["monotone.ca"];
-    selector = "0e9194c89eb87e62ac7d54c7b88b10b94b07fa41";
-    branch = "net.venge.monotone-viz.automate";
-    sha256 = "d7980c9729b0a58f0dd27768b8eae46b45462fe72a88534b8aa159d889b4d624";
+    selector = "b34ff2e695b53c2d73d533a3ffa7cb081b48eefb";
+    branch = "net.venge.monotone-viz.new-stdio";
+    sha256 = "06263564bc111d865b50b4a9587a86f8d97fff47625a3c1cb98d90b79faf7889";
   } + "/";
 
   buildInputs = [ocaml lablgtk libgnomecanvas gtk graphviz glib 
@@ -13,12 +13,14 @@ rec {
   configureFlags = ["--with-lablgtk-dir=${lablgtk}/lib/ocaml/lablgtk2"];
 
   /* doConfigure should be specified separately */
-  phaseNames = ["doAutoconf" "doConfigure" "doMakeInstall"];
+  phaseNames = ["doAutoconf" "doPatch" "doConfigure" "doMakeInstall"];
 
   doAutoconf = fullDepEntry(''
     aclocal -I .
     autoconf -I .
   '') ["minInit" "addInputs" "doUnpack"];
+
+  patches = [ ./graphviz.patch ];
       
   name = "monotone-viz-mtn-head";
   meta = {
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index d1b4838491d..d03e30c6603 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, lib, iasl, dev86, libxslt, libxml2, libX11, xproto, libXext
 , libXcursor, qt4, libIDL, SDL, hal, libcap, zlib, libpng, glib, kernel
-, python, which, alsaLib, curl
+, python, which, alsaLib, curl, gawk
 }:
 
 stdenv.mkDerivation {
@@ -72,7 +72,7 @@ stdenv.mkDerivation {
     sed -i -e "s|@INSTALL_PATH@|$out/virtualbox|" \
            -e "s|@QT4_PATH@|${qt4}/lib|" \
 	   -e "s|which|${which}/bin/which|" \
-	   -e "s|awk|${stdenv.gawk}/bin/awk|" \
+	   -e "s|awk|${gawk}/bin/awk|" \
 	   $out/bin/VBox.sh
     chmod 755 $out/bin/VBox.sh
     for file in VirtualBox VBoxManage VBoxSDL
diff --git a/pkgs/applications/window-managers/awesome/default.nix b/pkgs/applications/window-managers/awesome/default.nix
index 3d8782e4505..8d7cd7da9a1 100644
--- a/pkgs/applications/window-managers/awesome/default.nix
+++ b/pkgs/applications/window-managers/awesome/default.nix
@@ -4,11 +4,11 @@
 , docbook_xml_dtd_45, libxslt, coreutils}:
 
 stdenv.mkDerivation rec {
-  name = "awesome-3.4.5";
+  name = "awesome-3.4.6";
  
   src = fetchurl {
-    url = http://awesome.naquadah.org/download/awesome-3.4.5.tar.xz;
-    sha256 = "124g6k4n2yf9shw3ig9lj1jdwiysfbj13mnjd38k22hqbj3yhnbi";
+    url = http://awesome.naquadah.org/download/awesome-3.4.6.tar.xz;
+    sha256 = "1bxym326pl32q5jsaqa7p785k8yviinzj0q1l42pdhiiq717zbwi";
   };
  
   buildInputs = [ xz cmake gperf imagemagick pkgconfig lua glib cairo pango
diff --git a/pkgs/build-support/buildenv/builder.pl b/pkgs/build-support/buildenv/builder.pl
index 3f9ef9e6282..a181d72ab83 100755
--- a/pkgs/build-support/buildenv/builder.pl
+++ b/pkgs/build-support/buildenv/builder.pl
@@ -108,7 +108,7 @@ sub addPkg($;$) {
 my @args = split ' ', $ENV{"paths"};
 
 foreach my $pkgDir (@args) {
-    addPkg($pkgDir, $ENV{"ignoreCollisions"} eq "1");
+    addPkg($pkgDir, $ENV{"ignoreCollisions"} eq "1") if -e $pkgDir;
 }
 
 
diff --git a/pkgs/build-support/fetchurl/default.nix b/pkgs/build-support/fetchurl/default.nix
index 62f6fb2acf4..ec3d45e652e 100644
--- a/pkgs/build-support/fetchurl/default.nix
+++ b/pkgs/build-support/fetchurl/default.nix
@@ -100,4 +100,8 @@ stdenv.mkDerivation {
   ] ++ (map (site: "NIX_MIRRORS_${site}") sites);
 
   inherit showURLs mirrorsFile;
+
+  # Doing the download on a remote machine just duplicates network
+  # traffic, so don't do that.
+  preferLocalBuild = true;
 }
diff --git a/pkgs/desktops/gnome-2.28/desktop/vte/default.nix b/pkgs/desktops/gnome-2.28/desktop/vte/default.nix
index 0dc4161ba5a..b0f72ca7bbf 100644
--- a/pkgs/desktops/gnome-2.28/desktop/vte/default.nix
+++ b/pkgs/desktops/gnome-2.28/desktop/vte/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, intltool, pkgconfig, glib, gtk, ncurses,
   pythonSupport ? false, python}:
 stdenv.mkDerivation rec {
-  name = "vte-0.22.5";
+  name = "vte-0.25.1";
   src = fetchurl {
-    url = "mirror://gnome/desktop/2.28/2.28.2/sources/${name}.tar.bz2";
-    sha256 = "1xmjlz79z3apxmq18d5qyliaky6xb1n2nxwvpzrdl4ky6hk73660";
+    url = "http://ftp.gnome.org/pub/gnome/sources/vte/0.25/${name}.tar.bz2";
+    sha256 = "105f5ifyg09nh5p6fw2w7c0n9wd8vw9cvwlh6zg49ibsar893qi5";
   };
   buildInputs = [ intltool pkgconfig glib gtk ncurses ] ++
                 stdenv.lib.optional pythonSupport python;
diff --git a/pkgs/desktops/kde-4.4/accessibility/default.nix b/pkgs/desktops/kde-4.4/accessibility/default.nix
index 2ca4b5732da..ac69952f09a 100644
--- a/pkgs/desktops/kde-4.4/accessibility/default.nix
+++ b/pkgs/desktops/kde-4.4/accessibility/default.nix
@@ -12,6 +12,6 @@ stdenv.mkDerivation {
     description = "KDE accessibility tools";
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/admin/default.nix b/pkgs/desktops/kde-4.4/admin/default.nix
index accfe407488..978c3be26c4 100644
--- a/pkgs/desktops/kde-4.4/admin/default.nix
+++ b/pkgs/desktops/kde-4.4/admin/default.nix
@@ -23,6 +23,6 @@ stdenv.mkDerivation {
     description = "KDE Administration Utilities";
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/artwork/default.nix b/pkgs/desktops/kde-4.4/artwork/default.nix
index a2a9a64792f..d1ef167951d 100644
--- a/pkgs/desktops/kde-4.4/artwork/default.nix
+++ b/pkgs/desktops/kde-4.4/artwork/default.nix
@@ -14,6 +14,6 @@ stdenv.mkDerivation {
     longDescription = "Contains various artwork for KDE such as backgrounds, icons and screensavers";
     license = "LGPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/base-runtime/default.nix b/pkgs/desktops/kde-4.4/base-runtime/default.nix
index a53cded1f35..afe2b28ff84 100644
--- a/pkgs/desktops/kde-4.4/base-runtime/default.nix
+++ b/pkgs/desktops/kde-4.4/base-runtime/default.nix
@@ -22,6 +22,6 @@ stdenv.mkDerivation {
     longDescription = "Libraries and tools which supports running KDE desktop applications";
     license = "LGPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/base-workspace/default.nix b/pkgs/desktops/kde-4.4/base-workspace/default.nix
index b2bf3bc9abc..5615ba74bd7 100644
--- a/pkgs/desktops/kde-4.4/base-workspace/default.nix
+++ b/pkgs/desktops/kde-4.4/base-workspace/default.nix
@@ -23,6 +23,6 @@ stdenv.mkDerivation {
     description = "KDE Workspace";
     longDescription = "KDE base components that are only required to work with X11 such KDM and KWin";
     license = "GPL";
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/base/default.nix b/pkgs/desktops/kde-4.4/base/default.nix
index 085b720c08a..ef31022d016 100644
--- a/pkgs/desktops/kde-4.4/base/default.nix
+++ b/pkgs/desktops/kde-4.4/base/default.nix
@@ -15,6 +15,6 @@ stdenv.mkDerivation {
     longDescription = "Applications that form the KDE desktop, like Plasma, System Settings, Konqueror, Dolphin, Kate, and Konsole";
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/bindings/default.nix b/pkgs/desktops/kde-4.4/bindings/default.nix
index 0c3dfd8cf80..e0003ec461c 100644
--- a/pkgs/desktops/kde-4.4/bindings/default.nix
+++ b/pkgs/desktops/kde-4.4/bindings/default.nix
@@ -35,6 +35,6 @@ stdenv.mkDerivation {
     longDescription = "Provides KDE bindings for several languages such as Java, Smoke and Python";
     license = "LGPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/edu/default.nix b/pkgs/desktops/kde-4.4/edu/default.nix
index 38541fc730e..becfb421f25 100644
--- a/pkgs/desktops/kde-4.4/edu/default.nix
+++ b/pkgs/desktops/kde-4.4/edu/default.nix
@@ -15,6 +15,6 @@ stdenv.mkDerivation {
     description = "KDE Educative software";
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/games/default.nix b/pkgs/desktops/kde-4.4/games/default.nix
index 2c72ad03d8e..aea958f185a 100644
--- a/pkgs/desktops/kde-4.4/games/default.nix
+++ b/pkgs/desktops/kde-4.4/games/default.nix
@@ -11,6 +11,6 @@ stdenv.mkDerivation {
     description = "KDE Games";
     homepage = http://www.kde.org;
     license = "GPL";
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/graphics/default.nix b/pkgs/desktops/kde-4.4/graphics/default.nix
index 250b6bfe889..5f5b7330a46 100644
--- a/pkgs/desktops/kde-4.4/graphics/default.nix
+++ b/pkgs/desktops/kde-4.4/graphics/default.nix
@@ -19,6 +19,6 @@ stdenv.mkDerivation {
       Okular a document reader.
     '';
     license = "GPL";
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/libs/default.nix b/pkgs/desktops/kde-4.4/libs/default.nix
index 46bc0a08e0b..609c4755b33 100644
--- a/pkgs/desktops/kde-4.4/libs/default.nix
+++ b/pkgs/desktops/kde-4.4/libs/default.nix
@@ -28,6 +28,7 @@ stdenv.mkDerivation {
     description = "KDE libraries";
     license = "LGPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    maintainers = [ lib.maintainers.sander lib.maintainers.urkud ];
+    platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/multimedia/default.nix b/pkgs/desktops/kde-4.4/multimedia/default.nix
index 7201ed93e1a..5a6a7eaf030 100644
--- a/pkgs/desktops/kde-4.4/multimedia/default.nix
+++ b/pkgs/desktops/kde-4.4/multimedia/default.nix
@@ -16,6 +16,6 @@ stdenv.mkDerivation {
     '';
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/network/default.nix b/pkgs/desktops/kde-4.4/network/default.nix
index d6191b9ce4c..f9ecfd3723e 100644
--- a/pkgs/desktops/kde-4.4/network/default.nix
+++ b/pkgs/desktops/kde-4.4/network/default.nix
@@ -18,6 +18,6 @@ stdenv.mkDerivation {
     longDescription = "Various network utilities for KDE such as a messenger client and network configuration interface";
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/oxygen-icons/default.nix b/pkgs/desktops/kde-4.4/oxygen-icons/default.nix
index 52c775bd8dc..2c9b69c8a31 100644
--- a/pkgs/desktops/kde-4.4/oxygen-icons/default.nix
+++ b/pkgs/desktops/kde-4.4/oxygen-icons/default.nix
@@ -12,5 +12,6 @@ stdenv.mkDerivation {
     longDescription = "Contains icons for the KDE Oxygen theme, which is the default icon theme since KDE 4.3";
     license = "GPL";
     maintainers = [ lib.maintainers.sander ];
+    platforms = lib.platforms.all;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/pim-runtime/default.nix b/pkgs/desktops/kde-4.4/pim-runtime/default.nix
index 02f0a55838c..7333a62ad50 100644
--- a/pkgs/desktops/kde-4.4/pim-runtime/default.nix
+++ b/pkgs/desktops/kde-4.4/pim-runtime/default.nix
@@ -16,6 +16,6 @@ stdenv.mkDerivation {
     description = "KDE PIM runtime";
     homepage = http://www.kde.org;
     license = "GPL";
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/pim/default.nix b/pkgs/desktops/kde-4.4/pim/default.nix
index adb2f1932bb..ec5c0231d91 100644
--- a/pkgs/desktops/kde-4.4/pim/default.nix
+++ b/pkgs/desktops/kde-4.4/pim/default.nix
@@ -19,6 +19,6 @@ stdenv.mkDerivation {
     '';
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/pimlibs/default.nix b/pkgs/desktops/kde-4.4/pimlibs/default.nix
index 040148066e8..6f42be04f44 100644
--- a/pkgs/desktops/kde-4.4/pimlibs/default.nix
+++ b/pkgs/desktops/kde-4.4/pimlibs/default.nix
@@ -13,6 +13,6 @@ stdenv.mkDerivation {
     description = "KDE PIM libraries";
     license = "LGPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/plasma-addons/default.nix b/pkgs/desktops/kde-4.4/plasma-addons/default.nix
index a80641d88d5..4613852b7ad 100644
--- a/pkgs/desktops/kde-4.4/plasma-addons/default.nix
+++ b/pkgs/desktops/kde-4.4/plasma-addons/default.nix
@@ -18,6 +18,6 @@ stdenv.mkDerivation {
     description = "KDE Plasma Addons";
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/sdk/default.nix b/pkgs/desktops/kde-4.4/sdk/default.nix
index 99b180f6a3d..0d472cdd5e1 100644
--- a/pkgs/desktops/kde-4.4/sdk/default.nix
+++ b/pkgs/desktops/kde-4.4/sdk/default.nix
@@ -17,7 +17,6 @@ stdenv.mkDerivation {
     longDescription = "Contains various development utilities such as the Umbrello UML modeler and Cerivisia CVS front-end";
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ maintainers.sander maintainers.urkud ];
-    platforms = platforms.linux;
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/toys/default.nix b/pkgs/desktops/kde-4.4/toys/default.nix
index 4c4a3e582df..30428c947da 100644
--- a/pkgs/desktops/kde-4.4/toys/default.nix
+++ b/pkgs/desktops/kde-4.4/toys/default.nix
@@ -11,6 +11,6 @@ stdenv.mkDerivation {
     description = "KDE Toys";
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/utils/default.nix b/pkgs/desktops/kde-4.4/utils/default.nix
index ade60e1b55e..a3bd6c57ada 100644
--- a/pkgs/desktops/kde-4.4/utils/default.nix
+++ b/pkgs/desktops/kde-4.4/utils/default.nix
@@ -21,6 +21,6 @@ stdenv.mkDerivation {
     description = "KDE Utilities";
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.4/webdev/default.nix b/pkgs/desktops/kde-4.4/webdev/default.nix
index de66879a0d0..2c1746a6905 100644
--- a/pkgs/desktops/kde-4.4/webdev/default.nix
+++ b/pkgs/desktops/kde-4.4/webdev/default.nix
@@ -12,6 +12,6 @@ stdenv.mkDerivation {
     description = "KDE Web development utilities";
     license = "GPL";
     homepage = http://www.kde.org;
-    maintainers = [ lib.maintainers.sander ];
+    inherit (kdelibs.meta) maintainers platforms;
   };
 }
diff --git a/pkgs/desktops/kde-4.5/default.nix b/pkgs/desktops/kde-4.5/default.nix
index 230292a7077..e0801d80ba7 100644
--- a/pkgs/desktops/kde-4.5/default.nix
+++ b/pkgs/desktops/kde-4.5/default.nix
@@ -1,79 +1,38 @@
-pkgs:
+{ callPackage, stdenv, fetchurl } :
 
-pkgs.recurseIntoAttrs (rec {
+{
+  recurseForRelease = true;
 
-### SUPPORT
-  akonadi = import ./support/akonadi {
-    inherit (pkgs) stdenv fetchurl cmake qt4 shared_mime_info libxslt boost
-      mysql;
-    inherit automoc4 soprano;
+  kdePackage = import ./kde-package {
+    inherit stdenv fetchurl;
   };
 
-  attica = import ./support/attica {
-    inherit (pkgs) stdenv fetchurl cmake qt4;
-  };
+### SUPPORT
+  akonadi = callPackage ./support/akonadi { };
 
-  automoc4 = import ./support/automoc4 {
-    inherit (pkgs) stdenv fetchurl cmake qt4;
-  };
+  attica = callPackage ./support/attica { };
 
-  oxygen_icons = import ./support/oxygen-icons {
-    inherit (pkgs) stdenv fetchurl cmake;
-  };
+  automoc4 = callPackage ./support/automoc4 { };
 
-#  phonon = import ./support/phonon {
-#    inherit (pkgs) stdenv fetchurl cmake pkgconfig qt4 xineLib pulseaudio;
-#    inherit (pkgs.gst_all) gstreamer gstPluginsBase;
-#    inherit (pkgs.xlibs) libXau libXdmcp libpthreadstubs;
-#    inherit automoc4;
-#  };
-#
-  polkit_qt_1 = import ./support/polkit-qt-1 {
-    inherit (pkgs) stdenv fetchurl cmake pkgconfig qt4 glib polkit;
-    inherit automoc4;
-  };
+  oxygen_icons = callPackage ./support/oxygen-icons { };
 
-  strigi = import ./support/strigi {
-    inherit (pkgs) stdenv fetchurl lib cmake perl;
-    inherit (pkgs) bzip2 qt4 libxml2 expat exiv2 cluceneCore;
-  };
+  polkit_qt_1 = callPackage ./support/polkit-qt-1 { };
 
-  soprano = import ./support/soprano {
-    inherit (pkgs) stdenv fetchurl cmake cluceneCore redland libiodbc qt4;
-  };
+  strigi = callPackage ./support/strigi { };
 
-  qca2 = import ./support/qca2 {
-    inherit (pkgs) stdenv fetchurl which qt4;
-  };
+  soprano = callPackage ./support/soprano { };
 
-  qca2_ossl = import ./support/qca2/ossl.nix {
-    inherit (pkgs) stdenv fetchurl qt4 openssl;
-    inherit qca2;
-    inherit (pkgs) fetchsvn;
-  };
+  qca2 = callPackage ./support/qca2 { };
+
+  qca2_ossl = callPackage ./support/qca2/ossl.nix { };
 
 ### LIBS
-  kdelibs = import ./libs {
-    inherit (pkgs) stdenv fetchurl cmake qt4 perl bzip2 pcre fam libxml2 libxslt;
-    inherit (pkgs) xz flex bison giflib jasper openexr aspell avahi shared_mime_info
-      kerberos acl attr shared_desktop_ontologies enchant libdbusmenu_qt;
-    inherit (pkgs) docbook_xsl docbook_xml_dtd_42;
-    inherit (pkgs.xlibs) libXScrnSaver;
-    inherit automoc4 strigi soprano qca2 attica polkit_qt_1;
-  };
+  kdelibs = callPackage ./libs { };
 
-  kdepimlibs = import ./pimlibs {
-    inherit (pkgs) stdenv fetchurl cmake qt4 perl boost cyrus_sasl gpgme libical
-      openldap shared_mime_info;
-    inherit kdelibs automoc4 akonadi soprano;
-  };
+  kdepimlibs = callPackage ./pimlibs { };
 
 ### DEVELOPMENT
 
-  kdebindings = import ./bindings {
-	inherit (pkgs) stdenv fetchurl cmake perl lib python sip zlib libpng pyqt4
-	  freetype fontconfig qt4 boost ruby;
-    inherit kdelibs kdepimlibs automoc4 soprano akonadi attica polkit_qt_1;
-  };
+  kdebindings = callPackage ./bindings { };
   
-})
+}
diff --git a/pkgs/desktops/kde-4.5/kde-package/default.nix b/pkgs/desktops/kde-4.5/kde-package/default.nix
new file mode 100644
index 00000000000..d1b58b280c6
--- /dev/null
+++ b/pkgs/desktops/kde-4.5/kde-package/default.nix
@@ -0,0 +1,17 @@
+{ stdenv, fetchurl }:
+
+{ pn, v, stable ? true, sha256, subdir ? null }: args:
+stdenv.mkDerivation ({
+  name = "${pn}-${v}";
+  src = fetchurl {
+    url = "mirror://kde/" + (if stable then "" else "un") + "stable/" +
+      (if subdir == null then "${v}/src" else subdir) + "/${pn}-${v}.tar.bz2";
+    inherit sha256;
+  };
+  meta = {
+    maintainers = with stdenv.lib.maintainers; [ sander urkud ];
+    platforms = stdenv.lib.platforms.linux;
+    inherit stable;
+    homepage = http://www.kde.org;
+  } // ( if args ? meta then args.meta else { } );
+} // args)
diff --git a/pkgs/desktops/kde-4.5/libs/default.nix b/pkgs/desktops/kde-4.5/libs/default.nix
index 216011fdc5f..cdb2c8cc253 100644
--- a/pkgs/desktops/kde-4.5/libs/default.nix
+++ b/pkgs/desktops/kde-4.5/libs/default.nix
@@ -1,18 +1,15 @@
-{ stdenv, fetchurl, cmake, perl
+{ kdePackage, gcc, cmake, perl
 , qt4, bzip2, pcre, fam, libxml2, libxslt, shared_mime_info, giflib, jasper
 , xz, flex, bison, openexr, aspell, avahi, kerberos, acl, attr, shared_desktop_ontologies, libXScrnSaver
 , automoc4, strigi, soprano, qca2, attica, enchant, libdbusmenu_qt
 , docbook_xml_dtd_42, docbook_xsl, polkit_qt_1
 }:
 
-stdenv.mkDerivation rec {
-  name = "kdelibs-4.4.95";
-
-  src = fetchurl {
-    url = "mirror://kde/unstable/4.4.95/src/${name}.tar.bz2";
-    sha256 = "1fyjbdbzqxvl7rws4bvra1l4sczc1a72zdin7izif8dyjq6xblj0";
-  };
-
+kdePackage {
+  pn = "kdelibs";
+  v = "4.5.0";
+  sha256 = "0d3iml2v1vp1y6i5vpqv77nbdlw6qb8j6c88yi744ba4zvcirzrx";
+} {
   buildInputs = [
     cmake perl qt4 xz flex bison bzip2 pcre fam libxml2 libxslt
     shared_mime_info giflib jasper /*openexr*/ aspell avahi kerberos acl attr
@@ -20,9 +17,7 @@ stdenv.mkDerivation rec {
     automoc4 strigi soprano qca2 attica
   ];
 
-  patches = [ ./python-site-packages-install-dir.diff ];
-
-  propagatedBuildInputs = [ shared_desktop_ontologies stdenv.gcc.libc ];
+  propagatedBuildInputs = [ shared_desktop_ontologies gcc.libc ];
 
   # cmake fails to find acl.h because of C++-style comment
   cmakeFlags = [
@@ -31,10 +26,8 @@ stdenv.mkDerivation rec {
     "-DDOCBOOKXSL_DIR=${docbook_xsl}/xml/xsl/docbook"
     ];
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "KDE libraries";
     license = "LGPL";
-    homepage = http://www.kde.org;
-    maintainers = [ maintainers.sander maintainers.urkud ];
   };
 }
diff --git a/pkgs/desktops/kde-4.5/support/oxygen-icons/default.nix b/pkgs/desktops/kde-4.5/support/oxygen-icons/default.nix
index f290c528290..2c98f37e8d2 100644
--- a/pkgs/desktops/kde-4.5/support/oxygen-icons/default.nix
+++ b/pkgs/desktops/kde-4.5/support/oxygen-icons/default.nix
@@ -1,16 +1,14 @@
-{stdenv, fetchurl, cmake}:
+{kdePackage, cmake}:
 
-stdenv.mkDerivation rec {
-  name = "oxygen-icons-4.4.92";
-  src = fetchurl {
-    url = "mirror://kde/unstable/4.4.92/src/${name}.tar.bz2";
-    sha256 = "1aqc5p93c9jz660x94pxx7anamrpmwd490jy0lw38y99lbdhgz9k";
-  };
+kdePackage {
+  pn = "oxygen-icons";
+  v = "4.5.0";
+  sha256 = "11wlrxnral4q5wi46p1di1cff4vr5da35a8dv2xx3ag6lnhqvjqi";
+} {
   buildInputs = [ cmake ];
-  meta = with stdenv.lib; {
+  meta = {
     description = "KDE Oxygen theme icons";
     longDescription = "Contains icons for the KDE Oxygen theme, which is the default icon theme since KDE 4.3";
     license = "GPL";
-    maintainers = [ maintainers.sander ];
   };
 }
diff --git a/pkgs/desktops/kde-4.5/support/polkit-qt-1/default.nix b/pkgs/desktops/kde-4.5/support/polkit-qt-1/default.nix
index a109c2b6b09..dfdb83293a2 100644
--- a/pkgs/desktops/kde-4.5/support/polkit-qt-1/default.nix
+++ b/pkgs/desktops/kde-4.5/support/polkit-qt-1/default.nix
@@ -1,13 +1,11 @@
-{ stdenv, fetchurl, cmake, qt4, pkgconfig, polkit, automoc4, glib }:
-
-stdenv.mkDerivation rec {
-  name = "polkit-qt-1-0.96.1";
-  
-  src = fetchurl {
-    url = "mirror://kde/stable/apps/KDE4.x/admin/${name}.tar.bz2";
-    sha256 = "1ng5bi1gmr5lg49c5kyqyjzbjhs4w90c2zlnfcyviv9p3wzfgzbr";
-  };
+{ kdePackage, cmake, qt4, pkgconfig, polkit, automoc4, glib }:
 
+kdePackage {
+  pn = "polkit-qt-1";
+  v = "0.96.1";
+  subdir = "apps/KDE4.x/admin";
+  sha256 = "1ng5bi1gmr5lg49c5kyqyjzbjhs4w90c2zlnfcyviv9p3wzfgzbr";
+} {
   buildInputs = [ cmake qt4 automoc4 ];
   propagatedBuildInputs = [ polkit glib ];
 }
diff --git a/pkgs/desktops/xfce-4/applications/terminal/default.nix b/pkgs/desktops/xfce-4/applications/terminal/default.nix
index 8a05d999fc1..85f1aa21136 100644
--- a/pkgs/desktops/xfce-4/applications/terminal/default.nix
+++ b/pkgs/desktops/xfce-4/applications/terminal/default.nix
@@ -6,10 +6,10 @@
 }:
 
 stdenv.mkDerivation {
-  name = "xfce-terminal-0.4.4";
+  name = "xfce-terminal-0.4.5";
   src = fetchurl {
-    url = http://archive.xfce.org/src/apps/terminal/0.4/Terminal-0.4.4.tar.bz2;
-    sha256 = "1cmkrzgi2j5dgb1jigdqigf7fa84hh9l2bclgxzn17168cwpd1lw";
+    url = http://archive.xfce.org/src/apps/terminal/0.4/Terminal-0.4.5.tar.bz2;
+    sha256 = "14w8mhmyrq6dd9574zfvq0pymknljckq6qgcv1r6c1r22jydrzcj";
   };
 
   buildInputs = [ pkgconfig intltool libexo gtk vte libxfce4util ncurses ];
diff --git a/pkgs/development/compilers/gcl/default.nix b/pkgs/development/compilers/gcl/default.nix
index 2f02ee2e2e1..85da8f72bf8 100644
--- a/pkgs/development/compilers/gcl/default.nix
+++ b/pkgs/development/compilers/gcl/default.nix
@@ -8,6 +8,7 @@ let
   ]; 
 in
 
+(
 assert a.stdenv ? gcc ;
 assert a.stdenv.gcc ? gcc ;
 assert a.stdenv.gcc ? libc ;
@@ -45,13 +46,13 @@ rec {
   /* doConfigure should be removed if not needed */
   phaseNames = ["setVars" "doUnpack" "preBuild" 
     "doConfigure" "doMakeInstall"];
-      
+}) // {
   meta = {
     description = "GNU Common Lisp compiler working via GCC";
     maintainers = [
       a.lib.maintainers.raskin
     ];
     platforms = with a.lib.platforms; 
-      all;
+      linux;
   };
 }
diff --git a/pkgs/development/compilers/go/default.nix b/pkgs/development/compilers/go/default.nix
index e62934ecbe1..3f2c3274822 100644
--- a/pkgs/development/compilers/go/default.nix
+++ b/pkgs/development/compilers/go/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchhg, bison, glibc, ed, which, bash, makeWrapper, perl, ...}:
+{ stdenv, fetchhg, bison, glibc, ed, which, bash, coreutils, makeWrapper, perl }:
 
 let
   version = "2010-06-09";
@@ -29,8 +29,8 @@ stdenv.mkDerivation {
     sed -i 's,/usr/share/zoneinfo/,${glibc}/share/zoneinfo/,' src/pkg/time/zoneinfo.go
     sed -i 's,/bin/ed,${ed}/bin/ed,' src/cmd/6l/mkenam
 
-    sed -i -e 's,/bin/cat,${stdenv.coreutils}/bin/cat,' \
-      -e 's,/bin/echo,${stdenv.coreutils}/bin/echo,' \
+    sed -i -e 's,/bin/cat,${coreutils}/bin/cat,' \
+      -e 's,/bin/echo,${coreutils}/bin/echo,' \
       src/pkg/exec/exec_test.go
 
     # Disabling the 'os/http/net' tests (they want files not available in
diff --git a/pkgs/development/compilers/path64/default.nix b/pkgs/development/compilers/path64/default.nix
index f99806c7d20..9cc31537558 100644
--- a/pkgs/development/compilers/path64/default.nix
+++ b/pkgs/development/compilers/path64/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   patchPhase = ''
     sed -i s,/usr/bin/ld,$(type -P ld), src/driver/phases.c
-    sed -i s,/lib64/ld-linux-x86-64.so.2,${stdenv.glibc}/lib/ld-linux-x86-64.so.2, src/include/main_defs.h.in
+    sed -i s,/lib64/ld-linux-x86-64.so.2,${stdenv.gcc.libc}/lib/ld-linux-x86-64.so.2, src/include/main_defs.h.in
   '';
 
   cmakeFlags = ''
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
     -DPATH64_ENABLE_PSCRUNTIME=OFF
     -DPATH64_ENABLE_PROFILING=OFF -DPATH64_ENABLE_TARGETS=x8664 
     -DCMAKE_BUILD_TYPE=Debug -DPATH64_ENABLE_FORTRAN=OFF
-    -DPSC_CRT_PATH=${stdenv.glibc}/lib
+    -DPSC_CRT_PATH=${stdenv.gcc.libc}/lib
   '';
 
   makeFlags = "-j4";
diff --git a/pkgs/development/libraries/kerberos/heimdal.nix b/pkgs/development/libraries/kerberos/heimdal.nix
index 27890bd01e8..72adb808aa1 100644
--- a/pkgs/development/libraries/kerberos/heimdal.nix
+++ b/pkgs/development/libraries/kerberos/heimdal.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, openldap, readline, db4, openssl, cyrus_sasl }:
+{ stdenv, fetchurl, openldap, readline, db4, openssl, cyrus_sasl, sqlite} :
 
 stdenv.mkDerivation rec {
   name = "heimdal-1.3.3";
@@ -14,7 +14,16 @@ stdenv.mkDerivation rec {
   patches = [ ./no-md2.patch ];
   
   ## ugly, X should be made an option
-  configureFlags = "--with-openldap=${openldap} --without-x";
-  
-  propagatedBuildInputs = [ readline db4 openssl openldap cyrus_sasl ];
+  configureFlags = [
+    "--with-openldap=${openldap}"
+    "--with-sqlite3=${sqlite}"
+    "--without-x"
+  ];
+  # dont succeed with --libexec=$out/sbin, so
+  postInstall = ''
+    mv $out/libexec/* $out/sbin/
+    rmdir $out/libexec
+  '';
+
+  propagatedBuildInputs = [ readline db4 openssl openldap cyrus_sasl sqlite];
 }
diff --git a/pkgs/development/libraries/lcms2/default.nix b/pkgs/development/libraries/lcms2/default.nix
new file mode 100644
index 00000000000..0c2044d47ac
--- /dev/null
+++ b/pkgs/development/libraries/lcms2/default.nix
@@ -0,0 +1,18 @@
+{stdenv, fetchurl, libtiff, libjpeg, zlib}:
+
+stdenv.mkDerivation rec {
+  name = "lcms2-2.0a";
+
+  src = fetchurl {
+    url = "mirror://sf/lcms/${name}.tar.gz";
+    sha256 = "0kq5imagri0l964nnj06f7xny2q7rwvzqpm8ibsqz5zm263ggskd";
+  };
+
+  propagatedBuildInputs = [ libtiff libjpeg zlib ];
+
+  meta = {
+    description = "Color management engine";
+    homepage = http://www.littlecms.com/;
+    license = "MIT";
+  };
+}
diff --git a/pkgs/development/libraries/libssh2/default.nix b/pkgs/development/libraries/libssh2/default.nix
new file mode 100644
index 00000000000..a0723d95671
--- /dev/null
+++ b/pkgs/development/libraries/libssh2/default.nix
@@ -0,0 +1,19 @@
+{stdenv, fetchurlBoot, openssl, zlib}:
+
+stdenv.mkDerivation rec {
+  name = "libssh2-1.2.6";
+
+  src = fetchurlBoot {
+    url = "${meta.homepage}/download/${name}.tar.gz";
+    sha256 = "00f6hw972v7jd0rrdr6kx5cn7pa1spyx8xgc7vhjydksgsig3f8b";
+  };
+
+  buildInputs = [ openssl zlib ];
+
+  meta = {
+    description = "A client-side C library implementing the SSH2 protocol";
+    homepage = http://www.libssh2.org;
+    platforms = stdenv.lib.platforms.all;
+    maintainers = [ stdenv.lib.maintainers.urkud ];
+  };
+}
diff --git a/pkgs/development/libraries/phonon-backend-vlc/default.nix b/pkgs/development/libraries/phonon-backend-vlc/default.nix
new file mode 100644
index 00000000000..37cbaf59ce5
--- /dev/null
+++ b/pkgs/development/libraries/phonon-backend-vlc/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, qt47, vlc, automoc4, cmake }:
+
+let
+  pn = "phonon-backend-vlc";
+  v = "0.2.0";
+in
+
+stdenv.mkDerivation {
+  name = "${pn}-${v}";
+
+  src = fetchurl {
+    url = "mirror://kde/stable/${pn}/${v}/src/${pn}-${v}.tar.gz";
+    sha256 = "1sac7770vk0ppwbzl9nag387ks7sqmdnm7722kpzafhx1c2r7wsv";
+  };
+
+  buildInputs = [ qt47 vlc cmake automoc4 ];
+
+  meta = {
+    description = "VideoLAN backend for Phonon multimedia framework";
+    inherit (qt47.meta) platforms;
+    maintainers = [ stdenv.lib.maintainers.urkud ];
+  };
+}
diff --git a/pkgs/development/libraries/sqlite/3.6.x.nix b/pkgs/development/libraries/sqlite/3.6.x.nix
new file mode 100644
index 00000000000..f700b862246
--- /dev/null
+++ b/pkgs/development/libraries/sqlite/3.6.x.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, readline ? null, ncurses ? null }:
+
+assert readline != null -> ncurses != null;
+
+stdenv.mkDerivation {
+  name = "sqlite-3.6.23";
+
+  src = fetchurl {
+    url = "http://www.sqlite.org/sqlite-amalgamation-3.6.23.tar.gz";
+    sha256 = "a5de9ec9273acabc6cb18235df802549c476410b09d58a206e02862b4dc303ae";
+  };
+
+  buildInputs = [readline ncurses];
+  configureFlags = "--enable-threadsafe";
+
+  NIX_CFLAGS_COMPILE = "-DSQLITE_ENABLE_COLUMN_METADATA=1";
+  NIX_CFLAGS_LINK = if readline != null then "-lncurses" else "";
+
+  meta = {
+    homepage = http://www.sqlite.org/;
+    description = "A self-contained, serverless, zero-configuration, transactional SQL database engine";
+  };
+}
diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix
index f700b862246..c708866cfc1 100644
--- a/pkgs/development/libraries/sqlite/default.nix
+++ b/pkgs/development/libraries/sqlite/default.nix
@@ -3,14 +3,15 @@
 assert readline != null -> ncurses != null;
 
 stdenv.mkDerivation {
-  name = "sqlite-3.6.23";
+  name = "sqlite-3.7.0.1";
 
   src = fetchurl {
-    url = "http://www.sqlite.org/sqlite-amalgamation-3.6.23.tar.gz";
-    sha256 = "a5de9ec9273acabc6cb18235df802549c476410b09d58a206e02862b4dc303ae";
+    url = "http://www.sqlite.org/sqlite-amalgamation-3.7.0.1.tar.gz";
+    sha256 = "0nx506wmp32l6sh2p82bd2fscak1b402fp86cxl3r9pfs1yvychj";
   };
 
-  buildInputs = [readline ncurses];
+  buildInputs = [ readline ncurses ];
+  
   configureFlags = "--enable-threadsafe";
 
   NIX_CFLAGS_COMPILE = "-DSQLITE_ENABLE_COLUMN_METADATA=1";
diff --git a/pkgs/development/perl-modules/DBD-SQLite/default.nix b/pkgs/development/perl-modules/DBD-SQLite/default.nix
index c2da549b0ac..22348709a8a 100644
--- a/pkgs/development/perl-modules/DBD-SQLite/default.nix
+++ b/pkgs/development/perl-modules/DBD-SQLite/default.nix
@@ -1,11 +1,11 @@
 {fetchurl, buildPerlPackage, DBI, sqlite}:
 
 buildPerlPackage rec {
-  name = "DBD-SQLite-1.25";
+  name = "DBD-SQLite-1.29";
   
   src = fetchurl {
     url = "mirror://cpan/authors/id/A/AD/ADAMK/${name}.tar.gz";
-    sha256 = "17dd09jhf2kk33rqlsg74c1sb049qabmyh857alqc9fhffd1yb43";
+    sha256 = "0rq8f9avaxqbnjq2zpd2knz2wsn8qiffnbbphp7a3bakwhlxbl2i";
   };
   
   propagatedBuildInputs = [DBI];
diff --git a/pkgs/development/perl-modules/DBD-SQLite/external-sqlite.patch b/pkgs/development/perl-modules/DBD-SQLite/external-sqlite.patch
index 61e2e0af912..9a20fa25039 100644
--- a/pkgs/development/perl-modules/DBD-SQLite/external-sqlite.patch
+++ b/pkgs/development/perl-modules/DBD-SQLite/external-sqlite.patch
@@ -1,39 +1,39 @@
-diff -rc DBD-SQLite-1.25-orig/Makefile.PL DBD-SQLite-1.25/Makefile.PL
-*** DBD-SQLite-1.25-orig/Makefile.PL	2009-04-23 12:12:04.000000000 +0200
---- DBD-SQLite-1.25/Makefile.PL	2009-07-02 14:07:25.000000000 +0200
+diff -rc DBD-SQLite-1.29/Makefile.PL DBD-SQLite-1.29-new/Makefile.PL
+*** DBD-SQLite-1.29/Makefile.PL	2010-01-08 10:08:29.000000000 +0100
+--- DBD-SQLite-1.29-new/Makefile.PL	2010-08-05 11:42:53.000000000 +0200
 ***************
-*** 79,85 ****
-  # Let's find out the full story first, so we can make an informed
-  # decision to whether to do this. -- ADAMK
-  my ($force_local, $sqlite_base, $sqlite_lib, $sqlite_inc);
+*** 123,129 ****
+  # a system sqlite is also sophisticated enough to have a patching system
+  # that can change the if ( 0 ) to if ( 1 )
+  my ($sqlite_local, $sqlite_base, $sqlite_lib, $sqlite_inc);
 ! if ( 0 ) {
   	require File::Spec;
   	if ( $sqlite_base = (grep(/SQLITE_LOCATION=.*/, @ARGV))[0] ) {
   		$sqlite_base =~ /=(.*)/;
---- 79,85 ----
-  # Let's find out the full story first, so we can make an informed
-  # decision to whether to do this. -- ADAMK
-  my ($force_local, $sqlite_base, $sqlite_lib, $sqlite_inc);
+--- 123,129 ----
+  # a system sqlite is also sophisticated enough to have a patching system
+  # that can change the if ( 0 ) to if ( 1 )
+  my ($sqlite_local, $sqlite_base, $sqlite_lib, $sqlite_inc);
 ! if ( 1 ) {
   	require File::Spec;
   	if ( $sqlite_base = (grep(/SQLITE_LOCATION=.*/, @ARGV))[0] ) {
   		$sqlite_base =~ /=(.*)/;
 ***************
-*** 141,148 ****
-  
-  # Use always the bundled one.
-  # XXX: ... and this message should be more informative.
-! $force_local = 1;
-! print "We're using the bundled sqlite library.\n" if $ENV{AUTOMATED_TESTING};
+*** 184,191 ****
+  } else {
+  	# Always the bundled one.
+  	# XXX: ... and this message should be more informative.
+! 	$sqlite_local = 1;
+! 	print "We're using the bundled sqlite library.\n" if $ENV{AUTOMATED_TESTING};
+  }
   
   @ARGV = grep( ! /SQLITE_LOCATION|USE_LOCAL_SQLITE/, @ARGV );
-  
---- 141,148 ----
-  
-  # Use always the bundled one.
-  # XXX: ... and this message should be more informative.
-! #$force_local = 1;
-! #print "We're using the bundled sqlite library.\n" if $ENV{AUTOMATED_TESTING};
+--- 184,191 ----
+  } else {
+  	# Always the bundled one.
+  	# XXX: ... and this message should be more informative.
+! #	$sqlite_local = 1;
+! #	print "We're using the bundled sqlite library.\n" if $ENV{AUTOMATED_TESTING};
+  }
   
   @ARGV = grep( ! /SQLITE_LOCATION|USE_LOCAL_SQLITE/, @ARGV );
-  
diff --git a/pkgs/os-specific/linux/dmtcp/default.nix b/pkgs/os-specific/linux/dmtcp/default.nix
index f2ff4a66a42..ee32654cf8a 100644
--- a/pkgs/os-specific/linux/dmtcp/default.nix
+++ b/pkgs/os-specific/linux/dmtcp/default.nix
@@ -4,7 +4,7 @@
 
 let
   pname = "dmtcp";
-  version = "1.1.4";
+  version = "1.1.8";
 in
 
 stdenv.mkDerivation {
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}_${version}.tar.gz";
-    sha256 = "0asqzndy4is285rmd1dw406ar3wkfaaw9ivyrmhx2w5lwf4gl7sk";
+    sha256 = "05klyml5maw3f5rxl3i20fqyvpmx69bh09h7a48y19q3r4nqd8f2";
   };
 
   buildInputs = [ perl python ];
diff --git a/pkgs/os-specific/linux/dmtcp/devel.nix b/pkgs/os-specific/linux/dmtcp/devel.nix
deleted file mode 100644
index cd62455d238..00000000000
--- a/pkgs/os-specific/linux/dmtcp/devel.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-{stdenv, fetchsvn, perl, python}:
-
-# Perl and python are needed in order to run the test suite.
-
-let
-  revision = "512";
-in
-
-stdenv.mkDerivation {
-  name = "dmtcp-devel-${revision}";
-
-  src = fetchsvn {
-    url = https://dmtcp.svn.sourceforge.net/svnroot/dmtcp/trunk;
-    rev = revision;
-    sha256 = "77d8fe7f39d661669a58c6bf789886a8b6c8186d68d2b95d8a8791efab2c03b7";
-  };
-
-  buildInputs = [ perl python ];
-
-  doCheck = true;
-
-  preCheck = ''
-    substituteInPlace dmtcp/src/dmtcp_coordinator.cpp \
-      --replace /bin/bash /bin/sh
-    substituteInPlace utils/gdb-add-symbol-file \
-      --replace /bin/bash /bin/sh
-    substituteInPlace test/autotest.py \
-      --replace /usr/bin/env $(type -p env) \
-      --replace /bin/bash $(type -p bash) \
-      --replace /usr/bin/perl $(type -p perl) \
-      --replace /usr/bin/python $(type -p python)
-  '';
-
-  meta = {
-    description = "Distributed MultiThreaded Checkpointing";
-    longDescription = ''
-      DMTCP (Distributed MultiThreaded Checkpointing) is a tool to
-      transparently checkpointing the state of an arbitrary group of
-      programs spread across many machines and connected by sockets. It does
-      not modify the user's program or the operating system.
-    '';
-    homepage = http://dmtcp.sourceforge.net/;
-    license = "LGPL";
-  };
-}
diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.27.nix b/pkgs/os-specific/linux/kernel/linux-2.6.27.nix
index 1554624b3a7..beb14c4c87b 100644
--- a/pkgs/os-specific/linux/kernel/linux-2.6.27.nix
+++ b/pkgs/os-specific/linux/kernel/linux-2.6.27.nix
@@ -3,11 +3,11 @@ args @ { stdenv, fetchurl, userModeLinux ? false, extraConfig ? "", ... }:
 import ./generic.nix (
 
   rec {
-    version = "2.6.27.48";
+    version = "2.6.27.49";
   
     src = fetchurl {
       url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2";
-      sha256 = "0l3gyp7z6b2qs30s1xhj8lm1sd8cracz21ixcqpdgs7rspkagdfk";
+      sha256 = "09gnh26gs4bkaj9ib3c5cnmbgj3bhbw7g6b49hz0xrp067slyxai";
     };
 
     features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.32.nix b/pkgs/os-specific/linux/kernel/linux-2.6.32.nix
index b32616572f1..48c4b50a5b6 100644
--- a/pkgs/os-specific/linux/kernel/linux-2.6.32.nix
+++ b/pkgs/os-specific/linux/kernel/linux-2.6.32.nix
@@ -206,11 +206,11 @@ in
 import ./generic.nix (
 
   rec {
-    version = "2.6.32.16";
+    version = "2.6.32.17";
   
     src = fetchurl {
       url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2";
-      sha256 = "1ndvqvfaxachsklzzr5db1bzvfhnzz8diddrm1zlv7171fzmn13j";
+      sha256 = "12ingi7ml0cw7hjbpaq5mxl4nvi7683kma3d1z0pzrzdd9wngh1x";
     };
 
     config = configWithPlatform stdenv.platform;
diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.33.nix b/pkgs/os-specific/linux/kernel/linux-2.6.33.nix
index 86b6e02a292..cab697dc1d7 100644
--- a/pkgs/os-specific/linux/kernel/linux-2.6.33.nix
+++ b/pkgs/os-specific/linux/kernel/linux-2.6.33.nix
@@ -197,11 +197,11 @@ in
 import ./generic.nix (
 
   rec {
-    version = "2.6.33.6";
+    version = "2.6.33.7";
   
     src = fetchurl {
       url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2";
-      sha256 = "0s7lfm9b6i056gqlj1naqda5lwc540s05ws7m6i2a6s79zgw784i";
+      sha256 = "006shp6fkyzah02a33g1ch1x1svdlkl3kfp2b191c2vrrn6hgyim";
     };
 
     config = configWithPlatform stdenv.platform;
diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.34.nix b/pkgs/os-specific/linux/kernel/linux-2.6.34.nix
index ab3ba5bc95c..281fbc5ea1b 100644
--- a/pkgs/os-specific/linux/kernel/linux-2.6.34.nix
+++ b/pkgs/os-specific/linux/kernel/linux-2.6.34.nix
@@ -194,11 +194,11 @@ in
 import ./generic.nix (
 
   rec {
-    version = "2.6.34.1";
+    version = "2.6.34.2";
   
     src = fetchurl {
       url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2";
-      sha256 = "0v78yvkwr100v7bnrkkabxmpv5hjg1ngrjbr5d0kkzsw4d7bmm5x";
+      sha256 = "1p1s35sffvsdfh5rd5jl8iyin0il690als0q75fszf0fx1bh63sr";
     };
 
     config = configWithPlatform stdenv.platform;
diff --git a/pkgs/os-specific/linux/pam_ccreds/default.nix b/pkgs/os-specific/linux/pam_ccreds/default.nix
new file mode 100644
index 00000000000..4d48c86dd14
--- /dev/null
+++ b/pkgs/os-specific/linux/pam_ccreds/default.nix
@@ -0,0 +1,19 @@
+{stdenv, fetchurl, pam, openssl, db}:
+
+stdenv.mkDerivation {
+  name = "pam_ccreds-10";
+
+  src = fetchurl {
+    url = "http://www.padl.com/download/pam_ccreds.tgz";
+    sha256 = "1h7zyg1b1h69civyvrj95w22dg0y7lgw3hq4gqkdcg35w1y76fhz";
+  };
+  patchPhase = ''
+    sed 's/-o root -g root//' -i Makefile.in
+  '';
+
+  buildInputs = [pam openssl db];
+  meta = {
+    homepage = "http://www.padl.com/OSS/pam_ccreds.html";
+    description = "The pam_ccreds module provides the means for Linux workstations to locally authenticate using an enterprise identity when the network is unavailable.";
+  };
+}
diff --git a/pkgs/os-specific/linux/pam_krb5/default.nix b/pkgs/os-specific/linux/pam_krb5/default.nix
new file mode 100644
index 00000000000..62f9b5c119b
--- /dev/null
+++ b/pkgs/os-specific/linux/pam_krb5/default.nix
@@ -0,0 +1,19 @@
+{stdenv, fetchurl, pam, kerberos}:
+
+stdenv.mkDerivation {
+  name = "pam_krb5-2.3.11-1";
+
+  src = fetchurl {
+    url = https://fedorahosted.org/releases/p/a/pam_krb5/pam_krb5-2.3.11-1.tar.gz;
+    sha256 = "1x6wgjzkfkx0h9a7wdgx0jwrdm15npbs79i510lk1n3fyx9lk4mq";
+#    url = http://archives.eyrie.org/software/kerberos/pam-krb5-4.2.tar.gz;
+#    sha256 = "0a0zyd4ddln8yf827qxbfqi1pryxnj0fykfz8lx6nxn2f9pqj1gv";
+  };
+
+  buildInputs = [pam kerberos];
+  meta = {
+#    homepage = "http://www.eyrie.org/~eagle/software/pam-krb5";
+    homepage = "https://fedorahosted.org/pam_krb5/";
+    description = "The pam_krb5 module allows PAM-aware applications to authenticate users by performing an AS exchange with a Kerberos KDC. It can optionally convert Kerberos 5 credentials to Kerberos IV credentials and/or use them to set up AFS tokens for a user's session.";
+  };
+}
diff --git a/pkgs/os-specific/linux/syslinux/default.nix b/pkgs/os-specific/linux/syslinux/default.nix
index 42e6f0b8c29..ae9ed8bf539 100644
--- a/pkgs/os-specific/linux/syslinux/default.nix
+++ b/pkgs/os-specific/linux/syslinux/default.nix
@@ -1,23 +1,20 @@
-{stdenv, fetchurl, nasm, perl}:
+{ stdenv, fetchurl, nasm, perl }:
 
-stdenv.mkDerivation {
-  name = "syslinux-3.35";
+stdenv.mkDerivation rec {
+  name = "syslinux-4.02";
+  
   src = fetchurl {
-    url = mirror://kernel/linux/utils/boot/syslinux/Old/syslinux-3.35.tar.bz2;
-    sha256 = "16kf2zhd0c4m3ai9xcls2y0ggvajhmzk1g6mv6jrv8nskkg6w0l6";
+    url = "mirror://kernel/linux/utils/boot/syslinux/4.xx/${name}.tar.bz2";
+    sha256 = "0zrk6magnrfa7nmdk2rll7xaym9rapwqqgy0wdh3cfscjmcw9kwm";
   };
-  buildInputs = [nasm perl];
 
-  preBuild = "
-    makeFlagsArray=(BINDIR=$out/bin SBINDIR=$out/sbin LIBDIR=$out/lib INCDIR=$out/include)
+  patches = [ ./perl-deps.patch ];
+  
+  buildInputs = [ nasm perl ];
 
-    # Really dirty hack to get syslinux to build without needing a GCC
-    # with 32-bit libraries and headers.
-    if test \"$system\" = x86_64-linux; then
-        substituteInPlace memdisk/Makefile \\
-            --replace 'all: memdisk e820test' 'all: memdisk'
-        mkdir gnu
-        touch gnu/stubs-32.h
-    fi
-  ";
+  preBuild =
+    ''
+      substituteInPlace gpxe/src/Makefile.housekeeping --replace /bin/echo $(type -P echo)
+      makeFlagsArray=(BINDIR=$out/bin SBINDIR=$out/sbin LIBDIR=$out/lib INCDIR=$out/include DATADIR=$out/share MANDIR=$out/share/man PERL=perl)
+    '';
 }
diff --git a/pkgs/os-specific/linux/syslinux/perl-deps.patch b/pkgs/os-specific/linux/syslinux/perl-deps.patch
new file mode 100644
index 00000000000..82c9820809e
--- /dev/null
+++ b/pkgs/os-specific/linux/syslinux/perl-deps.patch
@@ -0,0 +1,81 @@
+http://git.ipxe.org/ipxe.git/commitdiff/719b498
+
+diff -ru -x '*~' -x '*.orig' -x '*.rej' syslinux-4.02-orig/gpxe/src/arch/i386/Makefile.pcbios syslinux-4.02/gpxe/src/arch/i386/Makefile.pcbios
+--- syslinux-4.02-orig/gpxe/src/arch/i386/Makefile.pcbios	2010-07-21 21:33:13.000000000 +0200
++++ syslinux-4.02/gpxe/src/arch/i386/Makefile.pcbios	2010-08-06 23:32:57.000000000 +0200
+@@ -24,11 +24,11 @@
+ 
+ # Padding rules
+ #
+-PAD_rom		= $(PADIMG) --blksize=512 --byte=0xff $@
++PAD_rom		= $(PERL) $(PADIMG) --blksize=512 --byte=0xff $@
+ PAD_hrom	= $(PAD_rom)
+ PAD_xrom	= $(PAD_rom)
+-PAD_dsk		= $(PADIMG) --blksize=512 $@
+-PAD_hd		= $(PADIMG) --blksize=32768 $@
++PAD_dsk		= $(PERL) $(PADIMG) --blksize=512 $@
++PAD_hd		= $(PERL) $(PADIMG) --blksize=32768 $@
+ 
+ # rule to make a non-emulation ISO boot image
+ NON_AUTO_MEDIA	+= iso
+diff -ru -x '*~' -x '*.orig' -x '*.rej' syslinux-4.02-orig/gpxe/src/Makefile syslinux-4.02/gpxe/src/Makefile
+--- syslinux-4.02-orig/gpxe/src/Makefile	2010-07-21 21:33:13.000000000 +0200
++++ syslinux-4.02/gpxe/src/Makefile	2010-08-06 23:31:15.000000000 +0200
+@@ -31,12 +31,12 @@
+ OBJCOPY		:= $(CROSS_COMPILE)objcopy
+ NM		:= $(CROSS_COMPILE)nm
+ OBJDUMP		:= $(CROSS_COMPILE)objdump
+-PARSEROM	:= $(PERL) ./util/parserom.pl
+-MAKEROM		:= $(PERL) ./util/makerom.pl
+-SYMCHECK	:= $(PERL) ./util/symcheck.pl
+-SORTOBJDUMP	:= $(PERL) ./util/sortobjdump.pl
+-PADIMG		:= $(PERL) ./util/padimg.pl
+-LICENCE		:= $(PERL) ./util/licence.pl
++PARSEROM	:= ./util/parserom.pl
++MAKEROM		:= ./util/makerom.pl
++SYMCHECK	:= ./util/symcheck.pl
++SORTOBJDUMP	:= ./util/sortobjdump.pl
++PADIMG		:= ./util/padimg.pl
++LICENCE		:= ./util/licence.pl
+ NRV2B		:= ./util/nrv2b
+ ZBIN		:= ./util/zbin
+ ELF2EFI32	:= ./util/elf2efi32
+diff -ru -x '*~' -x '*.orig' -x '*.rej' syslinux-4.02-orig/gpxe/src/Makefile.housekeeping syslinux-4.02/gpxe/src/Makefile.housekeeping
+--- syslinux-4.02-orig/gpxe/src/Makefile.housekeeping	2010-07-21 21:33:13.000000000 +0200
++++ syslinux-4.02/gpxe/src/Makefile.housekeeping	2010-08-06 23:31:49.000000000 +0200
+@@ -456,7 +456,7 @@
+ 		 '\n$(2) : $$($(4)_DEPS)\n' \
+ 		 '\nTAGS : $$($(4)_DEPS)\n' \
+ 		>> $(2)
+-	@$(PARSEROM) $(1) >> $(2)
++	@$(PERL) $(PARSEROM) $(1) >> $(2)
+ 
+ endef
+ 
+@@ -657,7 +657,7 @@
+ 	$(QM)$(ECHO) "  [LD] $@"
+ 	$(Q)$(LD) $(LDFLAGS) -T $(LDSCRIPT) $(TGT_LD_FLAGS) $(BLIB) -o $@ \
+ 		-Map $(BIN)/$*.tmp.map
+-	$(Q)$(OBJDUMP) -ht $@ | $(SORTOBJDUMP) >> $(BIN)/$*.tmp.map
++	$(Q)$(OBJDUMP) -ht $@ | $(PERL) $(SORTOBJDUMP) >> $(BIN)/$*.tmp.map
+ 
+ # Keep intermediate object file (useful for debugging)
+ .PRECIOUS : $(BIN)/%.tmp
+@@ -714,7 +714,7 @@
+ 		echo "files are missing a licence declaration:" ;\
+ 		echo $(call unlicensed_deps_list,$<);\
+ 		exit 1,\
+-		$(LICENCE) $(call licence_list,$<))
++		$(PERL) $(LICENCE) $(call licence_list,$<))
+ 
+ # Extract compression information from intermediate object file
+ #
+@@ -941,7 +941,7 @@
+ CLEANUP	+= $(BIN)/symtab
+ 
+ symcheck : $(SYMTAB)
+-	$(SYMCHECK) $<
++	$(PERL) $(SYMCHECK) $<
+ 
+ endif # defined(BIN)
+ 
diff --git a/pkgs/servers/mail/postfix/default.nix b/pkgs/servers/mail/postfix/default.nix
index 2a39571a8ff..acd3342775f 100644
--- a/pkgs/servers/mail/postfix/default.nix
+++ b/pkgs/servers/mail/postfix/default.nix
@@ -1,6 +1,8 @@
-{stdenv, fetchurl, db4, glibc, openssl, cyrus_sasl}:
+{ stdenv, fetchurl, db4, glibc, openssl, cyrus_sasl
+, coreutils, findutils, gnused, gnugrep
+}:
 
-assert stdenv.isLinux && stdenv ? coreutils;
+assert stdenv.isLinux;
 
 stdenv.mkDerivation {
   name = "postfix-2.2.11";
@@ -24,8 +26,8 @@ stdenv.mkDerivation {
 
     mkdir $out/share/postfix/conf
     cp conf/* $out/share/postfix/conf
-    sed -e 's@PATH=.*@PATH=${stdenv.coreutils}/bin:${stdenv.findutils}/bin:${stdenv.gnused}/bin:${stdenv.gnugrep}/bin:$out/sbin@' -i $out/share/postfix/conf/post-install
-    sed -e '2aPATH=${stdenv.coreutils}/bin:${stdenv.findutils}/bin:${stdenv.gnused}/bin:${stdenv.gnugrep}/bin:$out/sbin' -i $out/share/postfix/conf/postfix-script
+    sed -e 's@PATH=.*@PATH=${coreutils}/bin:${findutils}/bin:${gnused}/bin:${gnugrep}/bin:$out/sbin@' -i $out/share/postfix/conf/post-install
+    sed -e '2aPATH=${coreutils}/bin:${findutils}/bin:${gnused}/bin:${gnugrep}/bin:$out/sbin' -i $out/share/postfix/conf/postfix-script
     chmod a+x $out/share/postfix/conf/{postfix-script,post-install}
   '';
 
diff --git a/pkgs/servers/sql/virtuoso/default.nix b/pkgs/servers/sql/virtuoso/default.nix
index 346b63bafe5..b302dc69714 100644
--- a/pkgs/servers/sql/virtuoso/default.nix
+++ b/pkgs/servers/sql/virtuoso/default.nix
@@ -1,7 +1,5 @@
 { stdenv, fetchurl, libxml2, openssl, readline, gawk }:
 
-assert stdenv ? gawk || gawk != null;
-
 stdenv.mkDerivation rec {
   name = "virtuoso-opensource-6.1.1";
 
@@ -10,8 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "1sd70j9i26ml16lig9r9lmrdf5q0kybq71r6vzzzc5v5jxjz0l7w";
   };
 
-  buildInputs = [ libxml2 openssl readline ]
-    ++ stdenv.lib.optional (! stdenv ? gawk) gawk;
+  buildInputs = [ libxml2 openssl readline gawk ];
 
   CPP="${stdenv.gcc}/bin/gcc -E";
 
diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix
index 67a09a9cc45..16597d70c1a 100644
--- a/pkgs/stdenv/adapters.nix
+++ b/pkgs/stdenv/adapters.nix
@@ -15,7 +15,7 @@ rec {
 
     
   # Add some arbitrary packages to buildInputs for specific packages.
-  # Used to override packages in stenv like Make.  Should not be used
+  # Used to override packages in stdenv like Make.  Should not be used
   # for other dependencies.
   overrideInStdenv = stdenv: pkgs: stdenv //
     { mkDerivation = args: stdenv.mkDerivation (args //
diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix
index 6cd2f1c7f32..4d2200d1971 100644
--- a/pkgs/stdenv/generic/default.nix
+++ b/pkgs/stdenv/generic/default.nix
@@ -1,6 +1,6 @@
 { system, name, preHook ? null, postHook ? null, initialPath, gcc, shell
 , param1 ? "", param2 ? "", param3 ? "", param4 ? "", param5 ? ""
-, extraAttrs ? {}
+, extraAttrs ? {}, overrides ? {}
 
 , # The `fetchurl' to use for downloading curl and its dependencies
   # (see all-packages.nix).
@@ -97,6 +97,7 @@ let
                || result.system == "armv5tel-linux"
                || result.system == "ict_loongson-2_v0.3_fpu_v0.1-linux";
         isSunOS = result.system == "i386-sunos";
+        isSunOS = result.system == "i386-sunos";
         isi686 = result.system == "i686-linux"
                || result.system == "i686-darwin"
                || result.system == "i686-freebsd"
@@ -120,6 +121,7 @@ let
 
         inherit fetchurlBoot;
 
+        inherit overrides;
       }
 
       # Propagate any extra attributes.  For instance, we use this to
diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix
index a050f3ecaf4..bfeb01a7cd7 100644
--- a/pkgs/stdenv/linux/default.nix
+++ b/pkgs/stdenv/linux/default.nix
@@ -74,7 +74,7 @@ rec {
   # This function builds the various standard environments used during
   # the bootstrap.
   stdenvBootFun =
-    {gcc, extraAttrs ? {}, extraPath ? [], fetchurl}:
+    {gcc, extraAttrs ? {}, overrides ? {}, extraPath ? [], fetchurl}:
 
     import ../generic {
       inherit system;
@@ -90,8 +90,10 @@ rec {
       shell = "${bootstrapTools}/bin/sh";
       initialPath = [bootstrapTools] ++ extraPath;
       fetchurlBoot = fetchurl;
-      inherit gcc;
-      extraAttrs = extraAttrs // {inherit fetchurl;};
+      inherit gcc extraAttrs;
+      overrides = overrides // {
+        inherit fetchurl;
+      };
     };
 
   # Build a dummy stdenv with no GCC or working fetchurl.  This is
@@ -169,7 +171,7 @@ rec {
       coreutils = bootstrapTools;
       libc = stdenvLinuxGlibc;
     };
-    extraAttrs = {
+    overrides = {
       glibc = stdenvLinuxGlibc;
       inherit (stdenvLinuxBoot1Pkgs) perl;
     };
@@ -208,7 +210,7 @@ rec {
       gcc = gccWithStaticLibs;
       name = "";
     };
-    extraAttrs = {
+    overrides = {
       inherit (stdenvLinuxBoot1Pkgs) perl;
     };
     inherit fetchurl;
@@ -228,7 +230,7 @@ rec {
   #
   #    When updating stdenvLinux, make sure that the result has no
   #    dependency (`nix-store -qR') on bootstrapTools.
-  stdenvLinux = import ../generic {
+  stdenvLinux = import ../generic rec {
     name = "stdenv-linux";
     
     inherit system;
@@ -253,10 +255,15 @@ rec {
     fetchurlBoot = fetchurl;
     
     extraAttrs = {
-      inherit (stdenvLinuxBoot2Pkgs) binutils /* gcc */ glibc;
+      inherit (stdenvLinuxBoot2Pkgs) glibc;
+    };
+
+    overrides = {
+      inherit gcc;
+      inherit (stdenvLinuxBoot2Pkgs) binutils glibc;
       inherit (stdenvLinuxBoot3Pkgs)
         gzip bzip2 bash coreutils diffutils findutils gawk
-        gnumake gnused gnutar gnugrep patch patchelf
+        gnumake gnused gnutar gnugrep gnupatch patchelf
         attr acl;
     };
   };
diff --git a/pkgs/stdenv/mingw/default.nix b/pkgs/stdenv/mingw/default.nix
index bedf3986d17..947db5f10a8 100644
--- a/pkgs/stdenv/mingw/default.nix
+++ b/pkgs/stdenv/mingw/default.nix
@@ -6,7 +6,7 @@ let {
 
   /**
    * Initial standard environment based on native Cygwin tools.
-   * GCC is not requires.
+   * GCC is not required.
    * Required (approx): bash, mkdir, gnu tar, curl.
    */
   stdenvInit1 =
@@ -62,7 +62,7 @@ let {
       body =
         stdenv // mkDerivationFun // {
           inherit fetchurl;
-          pkgconfig = pkgconfigBin;
+          overrides.pkgconfig = pkgconfigBin;
         };
 
       shell =
diff --git a/pkgs/tools/archivers/cpio/default.nix b/pkgs/tools/archivers/cpio/default.nix
index 8e14ff17866..1700f03d7bd 100644
--- a/pkgs/tools/archivers/cpio/default.nix
+++ b/pkgs/tools/archivers/cpio/default.nix
@@ -1,45 +1,24 @@
 {stdenv, fetchurl}:
 
-stdenv.mkDerivation ({
-  name = "cpio-2.11";
-
+stdenv.mkDerivation {
+  name = "cpio-2.9";
+  
   src = fetchurl {
-    url = mirror://gnu/cpio/cpio-2.11.tar.bz2;
-    sha256 = "1gavgpzqwgkpagjxw72xgxz52y1ifgz0ckqh8g7cckz7jvyhp0mv";
+    url = mirror://gnu/cpio/cpio-2.9.tar.bz2;
+    sha256 = "01s7f9hg8kgpis96j99hgkiqgdy53pm7qi7bhm3fzx58jfk5z6mv";
   };
 
-  # Tests fail on Darwin, see
-  # <http://lists.gnu.org/archive/html/bug-cpio/2010-07/msg00012.html> for
-  # details.
-  doCheck = !stdenv.isDarwin;
+  patches = [
+    # Make it compile on GCC 4.3.
+    (fetchurl {
+      name = "cpio-2.9-gnu-inline.patch";
+      url = "http://sources.gentoo.org/viewcvs.py/*checkout*/gentoo-x86/app-arch/cpio/files/cpio-2.9-gnu-inline.patch?rev=1.1";
+      sha256 = "1167hrq64h9lh3qhgasm2rivfzkkgx6fik92b017qfa0q61ff8c3";
+    })
+  ];
 
   meta = {
     homepage = http://www.gnu.org/software/cpio/;
-    description = "GNU cpio, a program to create or extract from cpio archives";
-
-    longDescription =
-      '' GNU cpio copies files into or out of a cpio or tar archive.  The
-         archive can be another file on the disk, a magnetic tape, or a pipe.
-
-         GNU cpio supports the following archive formats: binary, old ASCII,
-         new ASCII, crc, HPUX binary, HPUX old ASCII, old tar, and POSIX.1
-         tar.  The tar format is provided for compatability with the tar
-         program.  By default, cpio creates binary format archives, for
-         compatibility with older cpio programs.  When extracting from
-         archives, cpio automatically recognizes which kind of archive it is
-         reading and can read archives created on machines with a different
-         byte-order.
-      '';
-
-    license = "GPLv3+";
-
-    maintainers = [ stdenv.lib.maintainers.ludo ];
-    platforms = stdenv.lib.platforms.all;
+    description = "A program to create or extract from cpio archives";
   };
 }
-
-//
-
-(if stdenv.isLinux
- then {}
- else { patches = [ ./darwin-fix.patch ]; }))
diff --git a/pkgs/tools/archivers/cpio/latest.nix b/pkgs/tools/archivers/cpio/latest.nix
new file mode 100644
index 00000000000..8e14ff17866
--- /dev/null
+++ b/pkgs/tools/archivers/cpio/latest.nix
@@ -0,0 +1,45 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation ({
+  name = "cpio-2.11";
+
+  src = fetchurl {
+    url = mirror://gnu/cpio/cpio-2.11.tar.bz2;
+    sha256 = "1gavgpzqwgkpagjxw72xgxz52y1ifgz0ckqh8g7cckz7jvyhp0mv";
+  };
+
+  # Tests fail on Darwin, see
+  # <http://lists.gnu.org/archive/html/bug-cpio/2010-07/msg00012.html> for
+  # details.
+  doCheck = !stdenv.isDarwin;
+
+  meta = {
+    homepage = http://www.gnu.org/software/cpio/;
+    description = "GNU cpio, a program to create or extract from cpio archives";
+
+    longDescription =
+      '' GNU cpio copies files into or out of a cpio or tar archive.  The
+         archive can be another file on the disk, a magnetic tape, or a pipe.
+
+         GNU cpio supports the following archive formats: binary, old ASCII,
+         new ASCII, crc, HPUX binary, HPUX old ASCII, old tar, and POSIX.1
+         tar.  The tar format is provided for compatability with the tar
+         program.  By default, cpio creates binary format archives, for
+         compatibility with older cpio programs.  When extracting from
+         archives, cpio automatically recognizes which kind of archive it is
+         reading and can read archives created on machines with a different
+         byte-order.
+      '';
+
+    license = "GPLv3+";
+
+    maintainers = [ stdenv.lib.maintainers.ludo ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
+
+//
+
+(if stdenv.isLinux
+ then {}
+ else { patches = [ ./darwin-fix.patch ]; }))
diff --git a/pkgs/tools/archivers/p7zip/default.nix b/pkgs/tools/archivers/p7zip/default.nix
index 2bd6313202e..bb9743e8e5d 100644
--- a/pkgs/tools/archivers/p7zip/default.nix
+++ b/pkgs/tools/archivers/p7zip/default.nix
@@ -1,16 +1,17 @@
-{stdenv, fetchurl}:
+{ stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "p7zip-9.04";
+stdenv.mkDerivation rec {
+  name = "p7zip-9.13";
   
   src = fetchurl {
-    url = mirror://sourceforge/p7zip/p7zip_9.04_src_all.tar.bz2;
-    sha256 = "1azr73vlj602hl6siagnqd1rn8sw73lny292jqgspg0lb9wvdyyx";
+    url = mirror://sourceforge/p7zip/p7zip_9.13_src_all.tar.bz2;
+    sha256 = "08yr0cfbjx60r1ia7vhphzvc3gax62xhgsn3vdm7sdmxxai0z77w";
   };
-  
+
   preConfigure =
     ''
       makeFlagsArray=(DEST_HOME=$out)
+      buildFlags=all3
     '';
 
   meta = {
diff --git a/pkgs/tools/cd-dvd/unetbootin/default.nix b/pkgs/tools/cd-dvd/unetbootin/default.nix
new file mode 100644
index 00000000000..9b4e7fd914c
--- /dev/null
+++ b/pkgs/tools/cd-dvd/unetbootin/default.nix
@@ -0,0 +1,62 @@
+{ stdenv, fetchurl, makeWrapper, qt4, utillinux, coreutils, which, p7zip, mtools, syslinux }:
+
+let version = "485"; in
+
+stdenv.mkDerivation rec {
+  name = "unetbootin-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/unetbootin/UNetbootin/${version}/unetbootin-source-${version}.tar.gz";
+    sha256 = "1nyzy1wrql0l6zkmrd1l3qqvbdkv0534axdz6vy3cyksp157jxc8";
+  };
+
+  sourceRoot = ".";
+
+  buildInputs = [ makeWrapper qt4 ];
+
+  # Lots of nice hard-coded paths...
+  postUnpack =
+    ''
+      substituteInPlace unetbootin.cpp \
+          --replace /sbin/fdisk ${utillinux}/sbin/fdisk \
+          --replace /sbin/sfdisk ${utillinux}/sbin/sfdisk \
+          --replace /sbin/blkid ${utillinux}/sbin/blkid \
+          --replace /bin/df ${coreutils}/bin/df \
+          --replace /usr/bin/syslinux ${syslinux}/bin/syslinux \
+          --replace /usr/bin/extlinux ${syslinux}/sbin/extlinux \
+          --replace /usr/share/syslinux ${syslinux}/share/syslinux
+      substituteInPlace main.cpp \
+          --replace /usr/share/unetbootin $out/share/unetbootin
+      substituteInPlace unetbootin.desktop \
+          --replace /usr/bin $out/bin
+    '';
+
+  buildPhase =
+    ''
+      lupdate unetbootin.pro
+      lrelease unetbootin.pro
+      qmake
+      make
+    '';
+
+  installPhase =
+    ''
+      ensureDir $out/bin
+      cp unetbootin $out/bin
+      
+      ensureDir $out/share/unetbootin
+      cp unetbootin_*.qm  $out/share/unetbootin
+
+      ensureDir $out/share/applications
+      cp unetbootin.desktop $out/share/applications
+      
+      wrapProgram $out/bin/unetbootin \
+          --prefix PATH : ${which}/bin:${p7zip}/bin:${mtools}/bin
+    '';
+
+  meta = {
+    homepage = http://unetbootin.sourceforge.net/;
+    description = "A tool to create bootable live USB drives from ISO images";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/tools/filesystems/dosfstools/default.nix b/pkgs/tools/filesystems/dosfstools/default.nix
index 7ef741753ba..f5e51430af3 100644
--- a/pkgs/tools/filesystems/dosfstools/default.nix
+++ b/pkgs/tools/filesystems/dosfstools/default.nix
@@ -1,24 +1,18 @@
-{builderDefs}: with builderDefs;
-       let localDefs = builderDefs.passthru.function (rec {
-         src = /* put a fetchurl here */
-           fetchurl {
-            url = http://www.daniel-baumann.ch/software/dosfstools/dosfstools-3.0.1.tar.bz2;
-            sha256 = "7fab0de42391277028071d01ff4da83ff9a399408ccf29958cdee62ffe746d45";
-           };
+{ stdenv, fetchurl }:
 
-        buildInputs = [];
-        configureFlags = [];
-        makeFlags = " PREFIX=$out ";
-    });
-    in with localDefs;
 stdenv.mkDerivation rec {
-    name = "dosfstools-3.01";
-    builder = writeScript (name + "-builder")
-        (textClosure localDefs 
-            ["doMakeInstall" doForceShare doPropagate]);
-    meta = {
-        description = "Dosfstools - utilities for vfat file system.";
-	homepage = "http://www.daniel-baumann.ch/software/dosfstools/";
-        inherit src;
-    };
+  name = "dosfstools-3.0.9";
+
+  src = fetchurl {
+    url = "http://www.daniel-baumann.ch/software/dosfstools/${name}.tar.bz2";
+    sha256 = "13s5s0hvhmn7r4ppqmw8nqgdm5v5vc6r5j44kn87wl5cmrpnfqrz";
+  };
+
+  makeFlags = "PREFIX=$(out)";
+
+  meta = {
+    description = "Utilities for creating and checking FAT and VFAT file systems";
+    homepage = http://www.daniel-baumann.ch/software/dosfstools/;
+    platforms = stdenv.lib.platforms.linux;
+  };
 }
diff --git a/pkgs/tools/filesystems/mtools/default.nix b/pkgs/tools/filesystems/mtools/default.nix
new file mode 100644
index 00000000000..5bb5bbc6d9a
--- /dev/null
+++ b/pkgs/tools/filesystems/mtools/default.nix
@@ -0,0 +1,17 @@
+{ stdenv, fetchurl, texinfo }:
+
+stdenv.mkDerivation rec {
+  name = "mtools-4.0.13";
+
+  src = fetchurl {
+    url = "mirror://gnu/mtools/${name}.tar.bz2";
+    sha256 = "1nj7lc2q1g66l3ma8z1c95nglf9himnr6k85b5rry99f9za7npbg";
+  };
+
+  buildInputs = [ texinfo ];
+
+  meta = {
+    homepage = http://www.gnu.org/software/mtools/;
+    description = "Utilities to access MS-DOS disks without mounting them";
+  };
+}
diff --git a/pkgs/tools/graphics/asymptote/src-for-default.nix b/pkgs/tools/graphics/asymptote/src-for-default.nix
index 2a274de0c10..e960b74655b 100644
--- a/pkgs/tools/graphics/asymptote/src-for-default.nix
+++ b/pkgs/tools/graphics/asymptote/src-for-default.nix
@@ -1,9 +1,9 @@
 rec {
-   version="1.96";
-   name="asymptote-1.96";
-   hash="0rs2h77j3nq36w0vr131yvlp8lqsanidhf9fvd4bggz5j5r8r850";
+   version="2.03";
+   name="asymptote-2.03";
+   hash="1npj9igf4b9dy1frriqc20ihm1s0f3yw2pgs0xc4rv514rp0wkpx";
    url="http://downloads.sourceforge.net/project/asymptote/asymptote/${version}/asymptote-${version}.src.tgz";
-   advertisedUrl="http://downloads.sourceforge.net/project/asymptote/asymptote/1.96/asymptote-1.96.src.tgz";
+   advertisedUrl="http://downloads.sourceforge.net/project/asymptote/asymptote/2.03/asymptote-2.03.src.tgz";
   
   
 }
diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix
index 7d545e8c7fb..33f11cdede5 100644
--- a/pkgs/tools/networking/curl/default.nix
+++ b/pkgs/tools/networking/curl/default.nix
@@ -1,34 +1,37 @@
 { stdenv, fetchurl
-, zlibSupport ? false, zlib ? null
-, sslSupport ? false, openssl ? null
+, zlibSupport ? false, zlib
+, sslSupport ? false, openssl
+, scpSupport ? false, libssh2
 , linkStatic ? false
 }:
 
 assert zlibSupport -> zlib != null;
 assert sslSupport -> openssl != null;
+assert scpSupport -> libssh2 != null;
 
 stdenv.mkDerivation rec {
   name = "curl-7.21.0";
-  
+
   src = fetchurl {
     url = "http://curl.haxx.se/download/${name}.tar.bz2";
     sha256 = "1fl7sh38i746b57aqjqjaykwq4rhm2p1phzrgnc2h6wm2k2b95gy";
   };
-  
+
   # Zlib and OpenSSL must be propagated because `libcurl.la' contains
   # "-lz -lssl", which aren't necessary direct build inputs of
   # applications that use Curl.
   propagatedBuildInputs =
     stdenv.lib.optional zlibSupport zlib ++
     stdenv.lib.optional sslSupport openssl;
-    
+
   configureFlags = ''
     ${if sslSupport then "--with-ssl=${openssl}" else "--without-ssl"}
+    ${if scpSupport then "--with-libssh2=${libssh2}" else "--without-libssh2"}
     ${if linkStatic then "--enable-static --disable-shared" else ""}
   '';
 
   dontDisableStatic = if linkStatic then true else false;
-  
+
   CFLAGS = if stdenv ? isDietLibC then "-DHAVE_INET_NTOA_R_2_ARGS=1" else "";
   LDFLAGS = if linkStatic then "-static" else "";
   CXX = "g++";
diff --git a/pkgs/tools/networking/dhcp/default.nix b/pkgs/tools/networking/dhcp/default.nix
index 49a2de6e08f..67997c700e9 100644
--- a/pkgs/tools/networking/dhcp/default.nix
+++ b/pkgs/tools/networking/dhcp/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, nettools, iputils, iproute, makeWrapper }:
+{ stdenv, fetchurl, nettools, iputils, iproute, makeWrapper, coreutils, gnused }:
 
 stdenv.mkDerivation rec {
   name = "dhcp-4.1.1-P1";
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       substituteInPlace $out/sbin/dhclient-script \
         --replace /sbin/ip ${iproute}/sbin/ip
       wrapProgram "$out/sbin/dhclient-script" --prefix PATH : \
-        "${nettools}/bin:${nettools}/sbin:${iputils}/bin:${stdenv.coreutils}/bin:${stdenv.gnused}/bin"
+        "${nettools}/bin:${nettools}/sbin:${iputils}/bin:${coreutils}/bin:${gnused}/bin"
     '';
 
   preConfigure =
diff --git a/pkgs/tools/networking/nbd/default.nix b/pkgs/tools/networking/nbd/default.nix
index 551d2109f28..2a634f9a2dc 100644
--- a/pkgs/tools/networking/nbd/default.nix
+++ b/pkgs/tools/networking/nbd/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, pkgconfig, glib}:
 
 stdenv.mkDerivation rec {
-  name = "nbd-2.9.15";
+  name = "nbd-2.9.17";
 
   src = fetchurl {
     url = "mirror://sourceforge/nbd/${name}.tar.bz2";
-    sha256 = "26e2ef18cc2f214d666eef1cfb31df1ba8ee6eaa78390afd6d18f2cce9c0c704";
+    sha256 = "07423fba4b1a6d394008505b86fe41d1978956035f49c1197de648fbaa7fb7ff";
   };
 
   buildInputs = [pkgconfig glib];
@@ -22,6 +22,6 @@ stdenv.mkDerivation rec {
     description = "map arbitrary files as block devices over the network";
     license = "GPLv2";
     maintainers = [ stdenv.lib.maintainers.simons  ];
-    platforms = stdenv.lib.platforms.gnu;
+    platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/tools/package-management/nix/sqlite.nix b/pkgs/tools/package-management/nix/sqlite.nix
index 8fe65ad3936..b6b87633249 100644
--- a/pkgs/tools/package-management/nix/sqlite.nix
+++ b/pkgs/tools/package-management/nix/sqlite.nix
@@ -4,11 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nix-0.16pre22378";
+  name = "nix-0.16pre22953";
 
   src = fetchurl {
-    url = "http://hydra.nixos.org/build/467032/download/4/${name}.tar.bz2";
-    sha256 = "1bd3645da0bc03b70e4b0d687c6c0868bb1522b01b6acf4af858556f8f21ee57";
+    url = "http://hydra.nixos.org/build/527157/download/4/${name}.tar.bz2";
+    sha256 = "7fe185f49bda5281274b203467d206a6a76a762f742a93adeca71ba63470f71e";
   };
 
   buildInputs = [ perl curl openssl ];
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c8a9db36347..56ed6695462 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -93,10 +93,11 @@ let
   # (un-overriden) set of packages, allowing packageOverrides
   # attributes to refer to the original attributes (e.g. "foo =
   # ... pkgs.foo ...").
-  __overrides = (getConfig ["packageOverrides"] (pkgs: {})) pkgsOrig;
+  overrides = (getConfig ["packageOverrides"] (pkgs: {})) pkgsOrig //
+    (if pkgsOrig.stdenv ? overrides then pkgsOrig.stdenv.overrides else { });
 
   pkgsOrig = pkgsFun {}; # the un-overriden packages, passed to packageOverrides
-  pkgs = pkgsFun __overrides; # the overriden, final packages
+  pkgs = pkgsFun overrides; # the overriden, final packages
 
 
   # We use `callPackage' to be able to omit function arguments that
@@ -113,6 +114,7 @@ let
   # The package compositions.  Yes, this isn't properly indented.
   pkgsFun = __overrides: with helperFunctions; helperFunctions // rec {
 
+
   # Override system. This is useful to build i686 packages on x86_64-linux.
   forceSystem = system: (import ./all-packages.nix) {
     inherit system;
@@ -152,10 +154,6 @@ let
   # inside the set for derivations.
   recurseIntoAttrs = attrs: attrs // {recurseForDerivations = true;};
 
-  useFromStdenv = it : alternative : if ((bootStdenv != null ||
-    crossSystem == null) && builtins.hasAttr it stdenv) then
-    (builtins.getAttr it stdenv) else alternative;
-
   # Return the first available value in the order: pkg.val, val, or default.
   getPkgConfig = pkg : val : default : (getConfig [ pkg val ] (getConfig [ val ] default));
 
@@ -265,15 +263,10 @@ let
     inherit stdenv mercurial nix;
   };
 
-  # `fetchurl' downloads a file from the network.  The `useFromStdenv'
-  # is there to allow stdenv to determine fetchurl.  Used during the
-  # stdenv-linux bootstrap phases to prevent lots of different curls
-  # from being built.
-  fetchurl = useFromStdenv "fetchurl"
-    (import ../build-support/fetchurl {
-      curl = curl;
-      stdenv = stdenv;
-    });
+  # `fetchurl' downloads a file from the network.
+  fetchurl = import ../build-support/fetchurl {
+    inherit curl stdenv;
+  };
 
   # fetchurlBoot is used for curl and its dependencies in order to
   # prevent a cyclic dependency (curl depends on curl.tar.bz2,
@@ -428,10 +421,7 @@ let
 
   bsdiff = callPackage ../tools/compression/bsdiff { };
 
-  bzip2 = useFromStdenv "bzip2"
-    (import ../tools/compression/bzip2 {
-      inherit fetchurl stdenv;
-    });
+  bzip2 = callPackage ../tools/compression/bzip2 { };
 
   cabextract = callPackage ../tools/archivers/cabextract { };
 
@@ -469,18 +459,14 @@ let
 
   convmv = callPackage ../tools/misc/convmv { };
 
-  coreutils_real = makeOverridable (if stdenv ? isDietLibC
-      then import ../tools/misc/coreutils-5
-      else import ../tools/misc/coreutils)
+  coreutils = callPackage (if stdenv ? isDietLibC
+      then ../tools/misc/coreutils-5
+      else ../tools/misc/coreutils)
     {
-      inherit fetchurl stdenv acl perl gmp;
-
       # TODO: Add ACL support for cross-Linux.
-      aclSupport = (crossSystem == null) && stdenv.isLinux;
+      aclSupport = crossSystem == null && stdenv.isLinux;
     };
 
-  coreutils = useFromStdenv "coreutils" coreutils_real;
-
   cpio = callPackage ../tools/archivers/cpio { };
 
   cromfs = callPackage ../tools/archivers/cromfs { };
@@ -488,11 +474,12 @@ let
   cron = callPackage ../tools/system/cron {  # see also fcron
   };
 
-  curl = makeOverridable (import ../tools/networking/curl) {
+  curl = makeOverridable (import ../tools/networking/curl) rec {
     fetchurl = fetchurlBoot;
-    inherit stdenv zlib openssl;
+    inherit stdenv zlib openssl libssh2;
     zlibSupport = ! ((stdenv ? isDietLibC) || (stdenv ? isStatic));
-    sslSupport = ! ((stdenv ? isDietLibC) || (stdenv ? isStatic));
+    sslSupport = zlibSupport;
+    scpSupport = zlibSupport && (!stdenv.isSunOS);
   };
 
   curlftpfs = callPackage ../tools/filesystems/curlftpfs { };
@@ -528,10 +515,7 @@ let
 
   diffstat = callPackage ../tools/text/diffstat { };
 
-  diffutils = useFromStdenv "diffutils"
-    (import ../tools/text/diffutils {
-      inherit fetchurl stdenv coreutils;
-    });
+  diffutils = callPackage ../tools/text/diffutils { };
 
   dirmngr = callPackage ../tools/security/dirmngr { };
 
@@ -589,12 +573,10 @@ let
 
   file = callPackage ../tools/misc/file { };
 
-  findutils = useFromStdenv "findutils"
-    (if stdenv.isDarwin then findutils4227 else
-      import ../tools/misc/findutils {
-        inherit fetchurl stdenv coreutils;
-      }
-    );
+  findutils =
+    if stdenv.isDarwin
+    then findutils4227
+    else callPackage ../tools/misc/findutils { };
 
   findutils4227 = callPackage ../tools/misc/findutils/4.2.27.nix { };
 
@@ -610,10 +592,7 @@ let
 
   unix2dos = callPackage ../tools/text/unix2dos { };
 
-  gawk = useFromStdenv "gawk"
-    (import ../tools/text/gawk {
-      inherit fetchurl stdenv;
-    });
+  gawk = callPackage ../tools/text/gawk { };
 
   gdmap = callPackage ../tools/system/gdmap {
     inherit (gtkLibs216) gtk;
@@ -644,14 +623,9 @@ let
     inherit (gtkLibs) glib;
   };
 
-  gnugrep = useFromStdenv "gnugrep"
-    (import ../tools/text/gnugrep {
-      inherit fetchurl stdenv pcre;
-    });
+  gnugrep = callPackage ../tools/text/gnugrep { };
 
-  gnupatch = useFromStdenv "patch" (import ../tools/text/gnupatch {
-    inherit fetchurl stdenv ed;
-  });
+  gnupatch = callPackage ../tools/text/gnupatch { };
 
   gnupg1orig = callPackage ../tools/security/gnupg1 {
     ideaSupport = false;
@@ -670,17 +644,11 @@ let
     lua = null;
   };
 
-  gnused = useFromStdenv "gnused"
-    (import ../tools/text/gnused {
-      inherit fetchurl stdenv;
-    });
+  gnused = callPackage ../tools/text/gnused { };
 
   gnused_4_2 = callPackage ../tools/text/gnused/4.2.nix { };
 
-  gnutar = useFromStdenv "gnutar"
-    (import ../tools/archivers/gnutar {
-      inherit fetchurl stdenv;
-    });
+  gnutar = callPackage ../tools/archivers/gnutar { };
 
   gnuvd = callPackage ../tools/misc/gnuvd { };
 
@@ -730,10 +698,7 @@ let
     inherit openssl gmp nettools iproute;
   };
 
-  gzip = useFromStdenv "gzip"
-    (import ../tools/compression/gzip {
-      inherit fetchurl stdenv;
-    });
+  gzip = callPackage ../tools/compression/gzip { };
 
   pigz = callPackage ../tools/compression/pigz { };
 
@@ -861,6 +826,8 @@ let
 
   mtdutils = callPackage ../tools/filesystems/mtdutils { };
 
+  mtools = callPackage ../tools/filesystems/mtools { };
+
   multitran = recurseIntoAttrs (let callPackage = newScope pkgs.multitran; in rec {
     multitrandata = callPackage ../tools/text/multitran/data { };
 
@@ -1216,6 +1183,8 @@ let
     inherit (gnome) gtk;
   };
 
+  unetbootin = callPackage ../tools/cd-dvd/unetbootin { };
+
   upx = callPackage ../tools/compression/upx { };
 
   vbetool = builderDefsPackage ../tools/system/vbetool {
@@ -1384,14 +1353,11 @@ let
   ### SHELLS
 
 
-  bash = lowPrio (useFromStdenv "bash" bashReal);
-
-  bashReal = callPackage ../shells/bash {
+  bash = lowPrio (callPackage ../shells/bash {
     texinfo = null;
-  };
+  });
 
-  bashInteractive = appendToName "interactive" (bashReal.override {
-    inherit readline texinfo;
+  bashInteractive = appendToName "interactive" (callPackage ../shells/bash {
     interactive = true;
   });
 
@@ -2088,8 +2054,7 @@ let
     fetchurl = fetchurlBoot;
   };
 
-  perl = useFromStdenv "perl"
-    (if system != "i686-cygwin" then perl510 else sysPerl);
+  perl = if system != "i686-cygwin" then perl510 else sysPerl;
 
   php = makeOverridable (import ../development/interpreters/php) {
     inherit
@@ -2286,10 +2251,9 @@ let
 
   avrdude = callPackage ../development/tools/misc/avrdude { };
 
-  binutils = useFromStdenv "binutils"
-    (import ../development/tools/misc/binutils {
-      inherit fetchurl stdenv noSysDirs;
-    });
+  binutils = callPackage ../development/tools/misc/binutils {
+    inherit noSysDirs;
+  };
 
   binutilsCross = forceBuildDrv (import ../development/tools/misc/binutils {
       inherit stdenv fetchurl;
@@ -2390,10 +2354,7 @@ let
 
   gnum4 = callPackage ../development/tools/misc/gnum4 { };
 
-  gnumake = useFromStdenv "gnumake"
-    (import ../development/tools/build-managers/gnumake {
-      inherit fetchurl stdenv;
-    });
+  gnumake = callPackage ../development/tools/build-managers/gnumake { };
 
   gnumake380 = callPackage ../development/tools/build-managers/gnumake-3.80 { };
 
@@ -2459,31 +2420,19 @@ let
      */
   };
 
-  patchelf = useFromStdenv "patchelf"
-    (import ../development/tools/misc/patchelf {
-      inherit fetchurl stdenv;
-    });
+  patchelf = callPackage ../development/tools/misc/patchelf { };
 
   patchelf06 = callPackage ../development/tools/misc/patchelf/0.6.nix { };
 
   pmccabe = callPackage ../development/tools/misc/pmccabe { };
 
-  /**
-   * pkgconfig is optionally taken from the stdenv to allow bootstrapping
-   * of glib and pkgconfig itself on MinGW.
-   */
-  pkgconfigReal = useFromStdenv "pkgconfig"
-    (import ../development/tools/misc/pkgconfig {
-      inherit fetchurl stdenv;
-    });
-
   /* Make pkgconfig always return a buildDrv, never a proper hostDrv,
      because most usage of pkgconfig as buildInput (inheritance of
      pre-cross nixpkgs) means using it using as buildNativeInput
      cross_renaming: we should make all programs use pkgconfig as
      buildNativeInput after the renaming.
      */
-  pkgconfig = forceBuildDrv pkgconfigReal;
+  pkgconfig = forceBuildDrv (callPackage ../development/tools/misc/pkgconfig { });
 
   radare = callPackage ../development/tools/analysis/radare {
     inherit (gtkLibs) gtk;
@@ -2561,10 +2510,7 @@ let
 
   aalib = callPackage ../development/libraries/aalib { };
 
-  acl = useFromStdenv "acl"
-    (import ../development/libraries/acl {
-      inherit stdenv fetchurl gettext attr libtool;
-    });
+  acl = callPackage ../development/libraries/acl { };
 
   adns = import ../development/libraries/adns/1.4.nix {
     inherit stdenv fetchurl;
@@ -2601,10 +2547,7 @@ let
     inherit fetchurl stdenv;
   });
 
-  attr = useFromStdenv "attr"
-    (import ../development/libraries/attr {
-      inherit stdenv fetchurl gettext libtool;
-    });
+  attr = callPackage ../development/libraries/attr { };
 
   aubio = callPackage ../development/libraries/aubio { };
 
@@ -2839,7 +2782,7 @@ let
 
   glfw = callPackage ../development/libraries/glfw { };
 
-  glibc = useFromStdenv "glibc" glibc211;
+  glibc = glibc211;
 
   glibc25 = callPackage ../development/libraries/glibc-2.5 {
     kernelHeaders = linuxHeaders;
@@ -3155,7 +3098,11 @@ let
     inherit (gnome) libgnomecanvas;
   };
 
-  lcms = callPackage ../development/libraries/lcms { };
+  lcms = lcms1;
+
+  lcms1 = callPackage ../development/libraries/lcms { };
+
+  lcms2 = callPackage ../development/libraries/lcms2 { };
 
   lensfun = callPackage ../development/libraries/lensfun {
     inherit (gnome) glib;
@@ -3388,6 +3335,8 @@ let
 
   libssh = callPackage ../development/libraries/libssh { };
 
+  libssh2 = callPackage ../development/libraries/libssh2 { };
+
   libstartup_notification = callPackage ../development/libraries/startup-notification { };
 
   libtasn1 = callPackage ../development/libraries/libtasn1 { };
@@ -3604,6 +3553,11 @@ let
     cplusplusSupport = !stdenv ? isDietLibC;
   };
 
+  phonon_backend_vlc = callPackage ../development/libraries/phonon-backend-vlc {
+    vlc = vlc.override { qt4 = qt47; };
+    inherit (kde45) automoc4;
+  };
+
   physfs = callPackage ../development/libraries/physfs { };
 
   plib = callPackage ../development/libraries/plib { };
@@ -3739,9 +3693,14 @@ let
     ncurses = null;
   };
 
-  sqliteInteractive = lowPrio (appendToName "interactive" (sqlite.override {
+  sqlite36 = callPackage ../development/libraries/sqlite/3.6.x.nix {
+    readline = null;
+    ncurses = null;
+  };
+
+  sqliteInteractive = appendToName "interactive" (sqlite.override {
     inherit readline ncurses;
-  }));
+  });
 
   stlport = callPackage ../development/libraries/stlport { };
 
@@ -4278,8 +4237,6 @@ let
 
   dmtcp = callPackage ../os-specific/linux/dmtcp { };
 
-  dmtcp_devel = callPackage ../os-specific/linux/dmtcp/devel.nix { };
-
   dietlibc = callPackage ../os-specific/linux/dietlibc {
     # Dietlibc 0.30 doesn't compile on PPC with GCC 4.1, bus GCC 3.4 works.
     stdenv = if stdenv.system == "powerpc-linux" then overrideGCC stdenv gcc34 else stdenv;
@@ -4743,6 +4700,10 @@ let
 
   # pam_bioapi ( see http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader )
 
+  pam_ccreds = callPackage ../os-specific/linux/pam_ccreds {
+    db = db4;
+  };
+
   pam_console = callPackage ../os-specific/linux/pam_console {
     libtool = libtool_1_5;
     flex = if stdenv.system == "i686-linux" then flex else flex2533;
@@ -4750,6 +4711,8 @@ let
 
   pam_devperm = callPackage ../os-specific/linux/pam_devperm { };
 
+  pam_krb5 = callPackage ../os-specific/linux/pam_krb5 { };
+
   pam_ldap = callPackage ../os-specific/linux/pam_ldap { };
 
   pam_login = callPackage ../os-specific/linux/pam_login { };
@@ -5073,8 +5036,8 @@ let
     inherit (gnome) libglade libgnomecanvas;
   };
 
-  adobeReader = callPackage ../applications/misc/adobe-reader {
-    inherit (gtkLibs) glib pango atk gtk;
+  adobeReader = lib.callPackageWith (pkgsi686Linux // pkgsi686Linux.xorg) ../applications/misc/adobe-reader {
+    inherit (pkgsi686Linux.gtkLibs) glib pango atk gtk;
   };
 
   amsn = callPackage ../applications/networking/instant-messengers/amsn {
@@ -6003,7 +5966,7 @@ let
   };
 
   rsync = callPackage ../applications/networking/sync/rsync {
-    enableACLs = !stdenv.isDarwin;
+    enableACLs = !(stdenv.isDarwin || stdenv.isSunOS);
   };
 
   rxvt = callPackage ../applications/misc/rxvt { };
@@ -6173,9 +6136,9 @@ let
   vimHugeX = vim_configurable;
 
   vim_configurable = import ../applications/editors/vim/configurable.nix {
-    inherit fetchurl stdenv ncurses pkgconfig composableDerivation lib;
+    inherit fetchurl stdenv ncurses pkgconfig gettext composableDerivation lib;
     inherit (xlibs) libX11 libXext libSM libXpm
-        libXt libXaw libXau libXmu;
+        libXt libXaw libXau libXmu libICE;
     inherit (gtkLibs) glib gtk;
     features = "huge"; # one of  tiny, small, normal, big or huge
     # optional features by passing
@@ -6183,6 +6146,8 @@ let
     # TODO mzschemeinterp perlinterp
     inherit python perl tcl ruby /*x11*/;
 
+    lua = lua5;
+
     # optional features by flags
     flags = [ "X11" ]; # only flag "X11" by now
   };
@@ -6205,6 +6170,8 @@ let
     graphicsSupport = false;
   };
 
+  weechat = callPackage ../applications/networking/irc/weechat { };
+
   wings = callPackage ../applications/graphics/wings { };
 
   # I'm keen on wmiimenu only  >wmii-3.5 no longer has it...
@@ -6601,22 +6568,26 @@ let
     inherit stdenv;
   });
 
-  kde45 = makeOverridable (import ../desktops/kde-4.5) (pkgs // {
-    qt4 = qt47;
-    pyqt4 = pyqt4.override { qt4 = qt47; };
-    libdbusmenu_qt = libdbusmenu_qt.override { qt4 = qt47; };
-    shared_desktop_ontologies = shared_desktop_ontologies.override { v = "0.5"; };
-  });
+  kde45 = callPackage ../desktops/kde-4.5 {
+    callPackage = newScope ({
+      qt4 = qt47;
+      pyqt4 = pyqt4.override { qt4 = qt47; };
+      libdbusmenu_qt = libdbusmenu_qt.override { qt4 = qt47; };
+      shared_desktop_ontologies = shared_desktop_ontologies.override { v = "0.5"; };
+    } // kde45);
+  };
 
   xfce = xfce4;
   xfce4 = recurseIntoAttrs (import ../desktops/xfce-4 pkgs);
 
+  
   ### SCIENCE
 
   xplanet = callPackage ../applications/science/xplanet {
     inherit (gtkLibs) pango;
   };
 
+  
   ### SCIENCE/GEOMETRY
 
   drgeo = builderDefsPackage (import ../applications/science/geometry/drgeo) {
@@ -6686,9 +6657,7 @@ let
 
   hol_light = callPackage ../applications/science/logic/hol_light { };
 
-  hol_light_binaries = callPackage ../applications/science/logic/hol_light/binaries.nix {
-    dmtcp = dmtcp_devel;
-  };
+  hol_light_binaries = callPackage ../applications/science/logic/hol_light/binaries.nix { };
 
   # This is a special version of OCaml handcrafted especially for
   # hol_light it should be merged with the current expresion for ocaml
@@ -6883,6 +6852,7 @@ let
   psi = callPackage ../applications/networking/instant-messengers/psi {
     qca2 = kde45.qca2;
     qca2_ossl = kde45.qca2_ossl;
+    qt4 = qt47;
   };
 
   putty = callPackage ../applications/networking/remote/putty {
@@ -6914,9 +6884,7 @@ let
 
   tex4ht = callPackage ../misc/tex/tex4ht { };
 
-  texFunctions = callPackage ../misc/tex/nix {
-    inherit (haskellPackages) lhs2tex;
-  };
+  texFunctions = import ../misc/tex/nix pkgs;
 
   texLive = builderDefsPackage (import ../misc/tex/texlive) {
     inherit builderDefs zlib bzip2 ncurses libpng ed
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index e14c5244d56..cdc3ef31169 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -904,7 +904,7 @@ rec {
 
   DBDSQLite = import ../development/perl-modules/DBD-SQLite {
     inherit fetchurl buildPerlPackage DBI;
-    inherit (pkgs) sqlite;
+    sqlite = pkgs.sqlite36;
   };
 
   DBDmysql = import ../development/perl-modules/DBD-mysql {
diff --git a/pkgs/top-level/release-lib.nix b/pkgs/top-level/release-lib.nix
index be60de14ed8..0345ebba0c4 100644
--- a/pkgs/top-level/release-lib.nix
+++ b/pkgs/top-level/release-lib.nix
@@ -104,7 +104,9 @@ rec {
     
   # May fail as much as it wishes, we will catch the error.
   processPackage = attrSet: 
-    if attrSet ? recurseForDerivations && attrSet.recurseForDerivations then 
+    if attrSet ? recurseForDerivations && attrSet.recurseForDerivations then
+      packagesWithMetaPlatform attrSet
+    else if attrSet ? recurseForRelease && attrSet.recurseForRelease then
       packagesWithMetaPlatform attrSet
     else
       if attrSet ? meta && attrSet.meta ? platforms
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 6cab2a48461..563df607aad 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -329,6 +329,7 @@ with (import ./release-lib.nix);
   vsftpd = linux;
   w3m = all;
   webkit = linux;
+  weechat = linux;
   wget = all;
   which = all;
   wicd = linux;
@@ -447,27 +448,6 @@ with (import ./release-lib.nix);
   };
 
   kde44 = {
-    kdelibs = linux;
-    kdebase_workspace = linux;
-    kdebase = linux;
-    kdebase_runtime = linux;
-    oxygen_icons = linux;
-    kdepimlibs = linux;
-    kdeadmin = linux;
-    kdeartwork = linux;
-    kdeaccessibility = linux;
-    kdeedu = linux;
-    kdegraphics = linux;
-    kdemultimedia = linux;
-    kdenetwork = linux;
-    kdepim = linux;
-    kdepim_runtime = linux;
-    kdeplasma_addons = linux;
-    kdegames = linux;
-    kdetoys = linux;
-    kdeutils = linux;
-    kdesdk = linux;
-    kdewebdev = linux;
     krusader = linux;
     kmplayer = linux;
     ktorrent = linux;
@@ -559,22 +539,27 @@ with (import ./release-lib.nix);
     lndir = all;
     setxkbmap = linux;
     xauth = linux;
+    xbitmaps = linux;
     xev = linux;
+    xf86inputevdev = linux;
     xf86inputkeyboard = linux;
     xf86inputmouse = linux;
-    xf86inputevdev = linux;
     xf86inputsynaptics = linux;
     xf86videoati = linux;
+    xf86videocirrus = linux;
     xf86videointel = linux;
     xf86videonv = linux;
     xf86videovesa = linux;
     xfs = linux;
     xkbcomp = linux;
+    xlsclients = linux;
     xmessage = linux;
     xorgserver = linux;
+    xprop = linux;    
     xrandr = linux;
     xrdb = linux;
     xset = linux;
+    xsetroot = linux;
   };
 
 } ))