summary refs log tree commit diff
diff options
context:
space:
mode:
authorYury G. Kudryashov <urkud.urkud@gmail.com>2012-03-15 15:09:36 +0000
committerYury G. Kudryashov <urkud.urkud@gmail.com>2012-03-15 15:09:36 +0000
commit785d18e02b1d98563cc962fe6ca4f87ae926f6ee (patch)
tree69765f2c8a9f31ccd7c319fe018f4b59c51ac52a
parent0cea832a1b1f143b2d7d9ee6f386b424551153fb (diff)
parent1ebf45400a098fd20982896b7914bf7cff3a93c8 (diff)
downloadnixlib-785d18e02b1d98563cc962fe6ca4f87ae926f6ee.tar
nixlib-785d18e02b1d98563cc962fe6ca4f87ae926f6ee.tar.gz
nixlib-785d18e02b1d98563cc962fe6ca4f87ae926f6ee.tar.bz2
nixlib-785d18e02b1d98563cc962fe6ca4f87ae926f6ee.tar.lz
nixlib-785d18e02b1d98563cc962fe6ca4f87ae926f6ee.tar.xz
nixlib-785d18e02b1d98563cc962fe6ca4f87ae926f6ee.tar.zst
nixlib-785d18e02b1d98563cc962fe6ca4f87ae926f6ee.zip
svn merge ^/nixpkgs/trunk
svn path=/nixpkgs/branches/glib-2.30-take2/; revision=33111
-rwxr-xr-xmaintainers/scripts/copy-tarball.sh45
-rwxr-xr-xmaintainers/scripts/copy-tarballs.sh48
-rw-r--r--pkgs/applications/audio/GStreamer/default.nix13
-rw-r--r--pkgs/applications/editors/emacs-24/default.nix4
-rw-r--r--pkgs/applications/editors/leksah/default.nix18
-rw-r--r--pkgs/applications/graphics/darktable/default.nix4
-rw-r--r--pkgs/applications/graphics/gimp/plugins/default.nix3
-rw-r--r--pkgs/applications/graphics/k3d/debian-patches.nix14
-rw-r--r--pkgs/applications/graphics/k3d/debian-patches.txt3
-rw-r--r--pkgs/applications/graphics/k3d/default.nix28
-rw-r--r--pkgs/applications/graphics/paraview/default.nix6
-rw-r--r--pkgs/applications/misc/adobe-reader/default.nix11
-rw-r--r--pkgs/applications/misc/evince/default.nix4
-rw-r--r--pkgs/applications/misc/mysql-workbench/default.nix5
-rw-r--r--pkgs/applications/misc/truecrypt/default.nix6
-rw-r--r--pkgs/applications/misc/xneur/0.8.nix4
-rw-r--r--pkgs/applications/misc/xneur/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix5
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/netsurf/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/opera/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/uzbl/default.nix6
-rw-r--r--pkgs/applications/networking/dropbox/default.nix9
-rw-r--r--pkgs/applications/networking/instant-messengers/carrier/2.4.2.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/carrier/2.5.0.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/ekiga/default.nix (renamed from pkgs/applications/networking/ekiga/default.nix)0
-rw-r--r--pkgs/applications/networking/instant-messengers/kphone/default.nix (renamed from pkgs/applications/networking/kphone/default.nix)0
-rw-r--r--pkgs/applications/networking/instant-messengers/linphone/default.nix (renamed from pkgs/applications/networking/linphone/default.nix)0
-rw-r--r--pkgs/applications/networking/instant-messengers/oneteam/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/psi/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/psi/psimedia.nix5
-rw-r--r--pkgs/applications/networking/instant-messengers/skype/default.nix (renamed from pkgs/applications/networking/skype/default.nix)0
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix20
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/kde/0.3.0.nix13
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/kde/contact-applet-po.patch24
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/kde/default.nix53
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/kde/presence-applet-po.patch24
-rwxr-xr-xpkgs/applications/networking/instant-messengers/telepathy/kde/update.sh38
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix15
-rw-r--r--pkgs/applications/networking/instant-messengers/twinkle/default.nix (renamed from pkgs/applications/networking/twinkle/default.nix)0
-rw-r--r--pkgs/applications/networking/p2p/retroshare/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/tribler/default.nix6
-rw-r--r--pkgs/applications/office/openoffice/generate-libreoffice-srcs.sh20
-rw-r--r--pkgs/applications/office/openoffice/libreoffice-srcs.nix368
-rw-r--r--pkgs/applications/office/openoffice/libreoffice.nix101
-rw-r--r--pkgs/applications/taxes/aangifte-2011/default.nix37
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex/default.nix6
-rw-r--r--pkgs/applications/version-management/subversion/default.nix4
-rw-r--r--pkgs/applications/video/cinelerra/default.nix4
-rw-r--r--pkgs/applications/video/gnash/default.nix16
-rw-r--r--pkgs/applications/video/tvtime/default.nix64
-rw-r--r--pkgs/applications/video/tvtime/tvtime-1.0.2+linux-headers-2.6.18.patch15
-rw-r--r--pkgs/applications/video/tvtime/tvtime-1.0.2-autotools.patch73
-rw-r--r--pkgs/applications/video/tvtime/tvtime-1.0.2-gcc41.patch57
-rw-r--r--pkgs/applications/video/tvtime/tvtime-1.0.2-glibc-2.10.patch24
-rw-r--r--pkgs/applications/video/tvtime/tvtime-1.0.2-libsupc++.patch16
-rw-r--r--pkgs/applications/video/tvtime/tvtime-1.0.2-xinerama.patch32
-rw-r--r--pkgs/applications/video/tvtime/tvtime-libpng-1.5.patch14
-rw-r--r--pkgs/applications/video/tvtime/tvtime-pic.patch11
-rw-r--r--pkgs/applications/video/zapping/0.10.nix38
-rw-r--r--pkgs/applications/video/zapping/builder.sh9
-rw-r--r--pkgs/applications/video/zapping/default.nix39
-rw-r--r--pkgs/applications/virtualization/OVMF/default.nix32
-rw-r--r--pkgs/build-support/gcc-cross-wrapper/default.nix21
-rw-r--r--pkgs/build-support/vm/default.nix14
-rw-r--r--pkgs/desktops/gnome-2/default.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/audiofile/default.nix12
-rw-r--r--pkgs/desktops/gnome-2/platform/esound/default.nix13
-rw-r--r--pkgs/desktops/kde-4.8/kde-runtime.nix9
-rw-r--r--pkgs/desktops/kde-4.8/kdebindings/smokekde.nix10
-rw-r--r--pkgs/desktops/kde-4.8/kdepim-runtime.nix7
-rw-r--r--pkgs/desktops/kde-4.8/kipi-plugins.nix29
-rw-r--r--pkgs/desktops/xfce-4.6/applications/xfce4-mixer.nix10
-rw-r--r--pkgs/desktops/xfce-4.6/default.nix2
-rw-r--r--pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix10
-rw-r--r--pkgs/desktops/xfce-4.8/default.nix2
-rw-r--r--pkgs/development/compilers/Agda-executable/default.nix4
-rw-r--r--pkgs/development/compilers/edk2/default.nix74
-rw-r--r--pkgs/development/compilers/iasl/default.nix8
-rw-r--r--pkgs/development/libraries/farsight2/default.nix19
-rw-r--r--pkgs/development/libraries/farsight2/makefile.patch37
-rw-r--r--pkgs/development/libraries/gnu-efi/default.nix40
-rw-r--r--pkgs/development/libraries/gssdp/default.nix8
-rw-r--r--pkgs/development/libraries/gstreamer/default.nix22
-rw-r--r--pkgs/development/libraries/gstreamer/gnonlin/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/gst-ffmpeg/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/gst-plugins-bad/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/gst-plugins-good/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/gst-plugins-ugly/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/gst-python/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/qt-gstreamer/boost1.48.patch49
-rw-r--r--pkgs/development/libraries/gstreamer/qt-gstreamer/default.nix18
-rw-r--r--pkgs/development/libraries/gupnp-igd/default.nix21
-rw-r--r--pkgs/development/libraries/gupnp/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/Agda/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/Hipmunk/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cairo/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/digest/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/gio/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/glib/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/gloss/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/gtk/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hamlet/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hashtables/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/language-javascript/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/leksah/leksah-server.nix14
-rw-r--r--pkgs/development/libraries/haskell/ltk/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/pandoc/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/pango/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/polyparse/1.7.nix (renamed from pkgs/development/libraries/haskell/polyparse/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/polyparse/1.8.nix18
-rw-r--r--pkgs/development/libraries/haskell/sendfile/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shakespeare-css/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shakespeare-i18n/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shakespeare-js/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shakespeare-text/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shakespeare/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/tls/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/unordered-containers/0.2.1.0.nix (renamed from pkgs/development/libraries/haskell/unordered-containers/0.2.0.0.nix)4
-rw-r--r--pkgs/development/libraries/haskell/xml-conduit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod-core/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod-form/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/zeromq-haskell/default.nix4
-rw-r--r--pkgs/development/libraries/java/swt/default.nix10
-rw-r--r--pkgs/development/libraries/libnice/default.nix12
-rw-r--r--pkgs/development/libraries/libpcap/default.nix6
-rw-r--r--pkgs/development/libraries/libpcap/libpcap_amd64.patch26
-rw-r--r--pkgs/development/libraries/loudmouth/default.nix2
-rw-r--r--pkgs/development/libraries/phonon-backend-gstreamer/default.nix7
-rw-r--r--pkgs/development/libraries/qt-4.x/4.8/default.nix4
-rw-r--r--pkgs/development/libraries/rte/default.nix9
-rw-r--r--pkgs/development/libraries/telepathy-gabble/default.nix18
-rw-r--r--pkgs/development/libraries/telepathy-qt/default.nix10
-rw-r--r--pkgs/development/libraries/telepathy/farsight/default.nix16
-rw-r--r--pkgs/development/libraries/telepathy/glib/default.nix (renamed from pkgs/development/libraries/telepathy-glib/default.nix)6
-rw-r--r--pkgs/development/libraries/telepathy/glib/fix-pkgconfig.patch14
-rw-r--r--pkgs/development/libraries/telepathy/qt/default.nix20
-rw-r--r--pkgs/development/libraries/telepathy/qt/missing-include.patch11
-rw-r--r--pkgs/development/libraries/webkit/default.nix4
-rw-r--r--pkgs/development/libraries/webkit/svn.nix4
-rw-r--r--pkgs/development/libraries/wxGTK-2.8/default.nix16
-rw-r--r--pkgs/development/libraries/wxGTK-2.9/2.9.0.nix16
-rw-r--r--pkgs/development/libraries/wxGTK-2.9/2.9.1.nix16
-rw-r--r--pkgs/development/libraries/zvbi/default.nix15
-rw-r--r--pkgs/development/tools/build-managers/scons/default.nix18
-rw-r--r--pkgs/development/tools/haskell/BNFC-meta/default.nix8
-rw-r--r--pkgs/development/tools/haskell/alex-meta/default.nix8
-rw-r--r--pkgs/development/tools/haskell/cabal2nix/default.nix4
-rw-r--r--pkgs/development/tools/haskell/uuagc/default.nix4
-rw-r--r--pkgs/games/dwarf-fortress/default.nix4
-rw-r--r--pkgs/games/spring/default.nix10
-rw-r--r--pkgs/games/spring/gcc44.patch10
-rw-r--r--pkgs/games/spring/springlobby.nix9
-rw-r--r--pkgs/games/xmoto/default.nix3
-rw-r--r--pkgs/misc/busybox/default.nix8
-rw-r--r--pkgs/misc/cups/pdf-filter.nix5
-rw-r--r--pkgs/misc/emulators/gens-gs/default.nix4
-rw-r--r--pkgs/misc/emulators/mess/default.nix4
-rw-r--r--pkgs/misc/ghostscript/default.nix6
-rw-r--r--pkgs/misc/my-env/default.nix54
-rw-r--r--pkgs/misc/themes/gtk2/oxygen-gtk/default.nix4
-rw-r--r--pkgs/os-specific/gnu/default.nix4
-rw-r--r--pkgs/os-specific/gnu/smbfs/default.nix4
-rw-r--r--pkgs/os-specific/gnu/unionfs/default.nix42
-rw-r--r--pkgs/os-specific/linux/aufs/3.nix2
-rw-r--r--pkgs/os-specific/linux/bluez/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/iwlwifi-5000-ucode/default.nix11
-rw-r--r--pkgs/os-specific/linux/gw6c/default.nix41
-rw-r--r--pkgs/os-specific/linux/hdparm/default.nix15
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.3.nix249
-rw-r--r--pkgs/os-specific/linux/kernel/patches.nix14
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/default.nix5
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/legacy173.nix7
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/legacy96.nix7
-rw-r--r--pkgs/os-specific/linux/util-linux/default.nix2
-rw-r--r--pkgs/tools/X11/bumblebee/default.nix4
-rw-r--r--pkgs/tools/admin/gtk-vnc/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/cdrkit/cdrkit-1.1.9-efi-boot.patch204
-rw-r--r--pkgs/tools/cd-dvd/cdrkit/default.nix7
-rw-r--r--pkgs/tools/misc/xburst-tools/default.nix4
-rw-r--r--pkgs/tools/networking/network-manager/default.nix25
-rw-r--r--pkgs/tools/networking/network-manager/nixos-purity.patch6
-rw-r--r--pkgs/tools/networking/network-manager/pptp.nix34
-rw-r--r--pkgs/tools/networking/networkmanagement/default.nix4
-rw-r--r--pkgs/tools/networking/tcpdump/default.nix4
-rw-r--r--pkgs/tools/package-management/nix/unstable.nix6
-rw-r--r--pkgs/tools/system/efibootmgr/arbitrary-filenames.patch24
-rw-r--r--pkgs/tools/system/efibootmgr/default.nix3
-rw-r--r--pkgs/tools/typesetting/tex/pgfplots/default.nix20
-rw-r--r--pkgs/top-level/all-packages.nix475
-rw-r--r--pkgs/top-level/haskell-packages.nix32
-rw-r--r--pkgs/top-level/perl-packages.nix47
-rw-r--r--pkgs/top-level/python-packages.nix13
-rw-r--r--pkgs/top-level/release-small.nix2
-rw-r--r--pkgs/top-level/release.nix2
197 files changed, 2599 insertions, 1235 deletions
diff --git a/maintainers/scripts/copy-tarball.sh b/maintainers/scripts/copy-tarball.sh
new file mode 100755
index 000000000000..b4c2e93dab17
--- /dev/null
+++ b/maintainers/scripts/copy-tarball.sh
@@ -0,0 +1,45 @@
+#! /bin/sh -e
+
+distDir=/data/webserver/tarballs
+
+url="$1"
+file="$2"
+if [ -z "$url" ]; then echo "syntax: $0 URL"; exit 0; fi
+
+base="$(basename "$url")"
+if [ -z "$base" ]; then echo "bad URL"; exit 1; fi
+dstPath="$distDir/$base"
+
+if [ -e "$dstPath" ]; then echo "$dstPath already exists"; exit 0; fi
+
+if [ -z "$file" ]; then
+
+    echo "downloading $url to $dstPath"
+
+    if [ -n "$dryRun" ]; then exit 0; fi
+
+    declare -a res
+    if ! res=($(PRINT_PATH=1 nix-prefetch-url "$url")); then
+        continue
+    fi
+    
+    storePath=${res[1]}
+
+else
+    storePath="$file"
+fi
+    
+cp $storePath "$dstPath.tmp.$$"
+mv -f "$dstPath.tmp.$$" "$dstPath"
+
+echo "hashing $dstPath"
+
+md5=$(nix-hash --flat --type md5 "$dstPath")
+ln -sfn "../$base" $distDir/md5/$md5
+
+sha1=$(nix-hash --flat --type sha1 "$dstPath")
+ln -sfn "../$base" $distDir/sha1/$sha1
+
+sha256=$(nix-hash --flat --type sha256 "$dstPath")
+ln -sfn "../$base" $distDir/sha256/$sha256
+ln -sfn "../$base" $distDir/sha256/$(nix-hash --type sha256 --to-base32 "$sha256")
diff --git a/maintainers/scripts/copy-tarballs.sh b/maintainers/scripts/copy-tarballs.sh
index c8f357100036..80aeef9d66de 100755
--- a/maintainers/scripts/copy-tarballs.sh
+++ b/maintainers/scripts/copy-tarballs.sh
@@ -1,57 +1,15 @@
 #! /bin/sh -e
 
-distDir=/data/webserver/tarballs
-
-urls=$(nix-instantiate --eval-only --xml --strict ./eval-release.nix \
+urls=$(nix-instantiate --eval-only --xml --strict '<nixpkgs/maintainers/scripts/eval-release.nix>' \
     | grep -A2 'name="urls"' \
     | grep '<string value=' \
     | sed 's/.*"\(.*\)".*/\1/' \
     | sort | uniq)
 
 for url in $urls; do
-    
     if echo "$url" | grep -q -E "www.cs.uu.nl|nixos.org|.stratego-language.org|java.sun.com|ut2004|linuxq3a|RealPlayer|Adbe|belastingdienst|microsoft|armijn/.nix|sun.com|archive.eclipse.org"; then continue; fi
-
-    base="$(basename "$url")"
-    newPath="$distDir/$base"
-
-    if ! test -e "$newPath"; then
-
-        #if echo $url | grep -q 'mirror://'; then
-        #   echo "$fn: skipping mirrored $url"
-        #   continue
-        #fi
-
-        echo "downloading $url to $newPath"
-
-        if test -n "$doCopy"; then
-            declare -a res
-            if ! res=($(PRINT_PATH=1 nix-prefetch-url "$url")); then
-                continue
-            fi
-            storePath=${res[1]}
-            cp $storePath "$newPath.tmp.$$"
-            mv -f "$newPath.tmp.$$" "$newPath"
-        fi
-        
-    fi
-
-    if test -n "$doCopy" -a -e "$newPath"; then
-
-        echo "hashing $newPath"
-
-        md5=$(nix-hash --flat --type md5 "$newPath")
-        ln -sfn "../$base" $distDir/md5/$md5
-
-        sha1=$(nix-hash --flat --type sha1 "$newPath")
-        ln -sfn "../$base" $distDir/sha1/$sha1
-
-        sha256=$(nix-hash --flat --type sha256 "$newPath")
-        ln -sfn "../$base" $distDir/sha256/$sha256
-        ln -sfn "../$base" $distDir/sha256/$(nix-hash --type sha256 --to-base32 "$sha256")
-
-    fi
-
+    if ! echo "$url" | grep -q -E "\-.*[0-9].*"; then echo "skipping $url"; continue; fi
+    $(dirname $0)/copy-tarball.sh "$url"
 done
 
 echo DONE
diff --git a/pkgs/applications/audio/GStreamer/default.nix b/pkgs/applications/audio/GStreamer/default.nix
deleted file mode 100644
index 0239b29f7ee2..000000000000
--- a/pkgs/applications/audio/GStreamer/default.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{stdenv, fetchurl, perl
-, bison, flex, glib
-, pkgconfig, libxml2}:
-
-stdenv.mkDerivation {
-  name = "GStreamer-0.10.10";
-  src = fetchurl {
-    url = http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-0.10.10.tar.bz2;
-    md5 = "6875bf0bd3cf38b9ae1362b9e644e6fc";
-  };
-
-  buildInputs = [perl bison flex glib pkgconfig libxml2];
-}
diff --git a/pkgs/applications/editors/emacs-24/default.nix b/pkgs/applications/editors/emacs-24/default.nix
index 236c7574d5ec..ae6b4677b598 100644
--- a/pkgs/applications/editors/emacs-24/default.nix
+++ b/pkgs/applications/editors/emacs-24/default.nix
@@ -9,13 +9,13 @@ assert (libXft != null) -> libpng != null;	# probably a bug
 assert stdenv.isDarwin -> libXaw != null;	# fails to link otherwise
 
 stdenv.mkDerivation rec {
-  name = "emacs-24.0.93";
+  name = "emacs-24.0.94";
 
   builder = ./builder.sh;
 
   src = fetchurl {
     url = "http://alpha.gnu.org/gnu/emacs/pretest/${name}.tar.gz";
-    sha256 = "4a100accb2f76231aed4dddb32d3725dec131280ad3bdf1b39b52ce337a210fe";
+    sha256 = "1dgy53dxpnwrn6h3i3z8fpcyasms0wlvhqfyih4cwkz712var393";
   };
 
   buildInputs = 
diff --git a/pkgs/applications/editors/leksah/default.nix b/pkgs/applications/editors/leksah/default.nix
index 6ce382884ac2..2bbffd853a41 100644
--- a/pkgs/applications/editors/leksah/default.nix
+++ b/pkgs/applications/editors/leksah/default.nix
@@ -1,18 +1,20 @@
-{ cabal, binary, binaryShared, Cabal, deepseq, filepath, glib, gtk
-, gtksourceview2, hslogger, leksahServer, ltk, mtl, network, parsec
-, processLeksah, regexBase, regexTdfa, strict, time, utf8String
+{ cabal, binary, binaryShared, Cabal, deepseq, enumerator, filepath
+, gio, glib, gtk, gtksourceview2, hslogger, leksahServer, ltk, mtl
+, network, parsec, QuickCheck, regexBase, regexTdfa, strict, text
+, time, transformers, utf8String
 }:
 
 cabal.mkDerivation (self: {
   pname = "leksah";
-  version = "0.10.0.4";
-  sha256 = "1g12w1kl63fxzz1c2x237yrqkaja9awiqyyipkdms5iql0ini7bw";
+  version = "0.12.0.3";
+  sha256 = "1374ffwban58kabnynacl0fyzs6756kd5q1lcfya46mp26l7syrd";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    binary binaryShared Cabal deepseq filepath glib gtk gtksourceview2
-    hslogger leksahServer ltk mtl network parsec processLeksah
-    regexBase regexTdfa strict time utf8String
+    binary binaryShared Cabal deepseq enumerator filepath gio glib gtk
+    gtksourceview2 hslogger leksahServer ltk mtl network parsec
+    QuickCheck regexBase regexTdfa strict text time transformers
+    utf8String
   ];
   noHaddock = true;
   meta = {
diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix
index c47ed07a48d3..d6e1a6c11195 100644
--- a/pkgs/applications/graphics/darktable/default.nix
+++ b/pkgs/applications/graphics/darktable/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl
 , GConf, atk, cairo, cmake, curl, dbus_glib, exiv2, glib
-, gnome_keyring, gphoto2, gtk, ilmbase, intltool, lcms, lcms2
+, libgnome_keyring, gphoto2, gtk, ilmbase, intltool, lcms, lcms2
 , lensfun, libXau, libXdmcp, libexif, libglade, libgphoto2, libjpeg
 , libpng, libpthreadstubs, libraw1394, librsvg, libtiff, libxcb
 , openexr, pixman, pkgconfig, sqlite }:
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ GConf atk cairo cmake curl dbus_glib exiv2 glib gnome_keyring gtk
+    [ GConf atk cairo cmake curl dbus_glib exiv2 glib libgnome_keyring gtk
       ilmbase intltool lcms lcms2 lensfun libXau libXdmcp libexif
       libglade libgphoto2 libjpeg libpng libpthreadstubs libraw1394
       librsvg libtiff libxcb openexr pixman pkgconfig sqlite
diff --git a/pkgs/applications/graphics/gimp/plugins/default.nix b/pkgs/applications/graphics/gimp/plugins/default.nix
index b80d27bfcf9b..70a27030969b 100644
--- a/pkgs/applications/graphics/gimp/plugins/default.nix
+++ b/pkgs/applications/graphics/gimp/plugins/default.nix
@@ -5,8 +5,7 @@
 
 { pkgs, gimp }:
 let
-  inherit (pkgs) stdenv fetchurl pkgconfig gtkLibs;
-  inherit (gtkLibs) glib;
+  inherit (pkgs) stdenv fetchurl pkgconfig glib;
   targetPluginDir = "$out/${gimp.name}-plugins";
   targetScriptDir = "$out/${gimp.name}-scripts";
   prefix = "plugin-gimp-";
diff --git a/pkgs/applications/graphics/k3d/debian-patches.nix b/pkgs/applications/graphics/k3d/debian-patches.nix
new file mode 100644
index 000000000000..fe1289f14413
--- /dev/null
+++ b/pkgs/applications/graphics/k3d/debian-patches.nix
@@ -0,0 +1,14 @@
+# Generated by debian-patches.sh from debian-patches.txt
+let
+  prefix = "http://patch-tracker.debian.org/patch/series/dl/k3d/0.8.0.2-15";
+in
+[
+  {
+    url = "${prefix}/disable_mutable_in_boost_gil.patch";
+    sha256 = "037l86h2hszqgw8arqpzprz5qvngsb61i7lpww617mkvqrc4hiq3";
+  }
+  {
+    url = "${prefix}/k3d_gtkmm224.patch";
+    sha256 = "0a81fg96zby6kidqwj6n8mhbrh0j5fpnmfh7lr6havz5r2is9ks5";
+  }
+]
diff --git a/pkgs/applications/graphics/k3d/debian-patches.txt b/pkgs/applications/graphics/k3d/debian-patches.txt
new file mode 100644
index 000000000000..a9b4abed2f09
--- /dev/null
+++ b/pkgs/applications/graphics/k3d/debian-patches.txt
@@ -0,0 +1,3 @@
+k3d/0.8.0.2-15
+disable_mutable_in_boost_gil.patch
+k3d_gtkmm224.patch
diff --git a/pkgs/applications/graphics/k3d/default.nix b/pkgs/applications/graphics/k3d/default.nix
index c1579579d813..058d0f79a2f4 100644
--- a/pkgs/applications/graphics/k3d/default.nix
+++ b/pkgs/applications/graphics/k3d/default.nix
@@ -1,32 +1,32 @@
-{stdenv, fetchurl, gtkLibs, gnome
-  , cmake, mesa, zlib, python, expat, libxml2, libsigcxx, libuuid, freetype
-  , libpng, boost, doxygen, cairomm, pkgconfig, imagemagick, libjpeg, libtiff
-  , gettext, intltool, perl
-  }:
+{stdenv, fetchurl
+, cmake, mesa, zlib, python, expat, libxml2, libsigcxx, libuuid, freetype
+, libpng, boost, doxygen, cairomm, pkgconfig, imagemagick, libjpeg, libtiff
+, gettext, intltool, perl, gtkmm, glibmm, gtkglext
+}:
 
 stdenv.mkDerivation rec {
   version = "0.8.0.2";
   name = "k3d-${version}";
   src = fetchurl {
-    url = "http://downloads.sourceforge.net/project/k3d/K-3D%20Source/K-3D%200.8.0.2/k3d-source-0.8.0.2.tar.bz2";
+    url = "mirror://sourceforge/k3d/k3d-source-0.8.0.2.tar.bz2";
     sha256 = "01fd2qb0zddif3wz1a2wdmwyzn81cf73678qp2gjs8iikmdz6w7x";
   };
 
-  patches = [ (fetchurl {
-    url = "http://patch-tracker.debian.org/patch/series/dl/k3d/0.8.0.2-15/k3d_gtkmm224.patch";
-    sha256 = "0a81fg96zby6kidqwj6n8mhbrh0j5fpnmfh7lr6havz5r2is9ks5";
-  })
-   ];
+  patches = map fetchurl ((import ./debian-patches.nix) ++
+    [ {
+      url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-gfx/k3d/files/k3d-0.7.11.0-libpng14.patch;
+      sha256 = "1vl7dbvxg9b54ay0n8dd2v2k3j001h8h1bpr1cbm3vrzv31lnwzx";
+    } ]);
 
   preConfigure = ''
     export LD_LIBRARY_PATH="$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/build/lib"
   '';
 
-  buildInputs = with gtkLibs; with gnome; [
+  buildInputs = [
      cmake mesa zlib python expat libxml2 libsigcxx libuuid freetype libpng
      boost doxygen cairomm pkgconfig imagemagick libjpeg libtiff gettext
      intltool perl
-     gtkmm glibmm gtkglext 
+     gtkmm glibmm gtkglext
     ];
 
   doCheck = false;
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     homepage = "http://k-3d.org/";
     platforms = with stdenv.lib.platforms;
       linux;
-    maintainers = with stdenv.lib.maintainers; 
+    maintainers = with stdenv.lib.maintainers;
       [raskin];
   };
 }
diff --git a/pkgs/applications/graphics/paraview/default.nix b/pkgs/applications/graphics/paraview/default.nix
index ba67a755de4b..2491b93bbc20 100644
--- a/pkgs/applications/graphics/paraview/default.nix
+++ b/pkgs/applications/graphics/paraview/default.nix
@@ -7,10 +7,10 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "paraview-3.12.0";
+  name = "paraview-3.14.0";
   src = fetchurl {
-    url = "http://www.paraview.org/files/v3.12/ParaView-3.12.0.tar.gz";
-    sha256 = "0n0n0hrv02rd9rb63z4baalf40m8v870027mr47b93scgp18qyim";
+    url = "http://www.paraview.org/files/v3.14/ParaView-3.14.0-Source.tar.gz";
+    sha256 = "168v8zk64pxcd392kb4zqnkbw540d52bx6fs35aqz88i5jc0x9xv";
   };
 
   # [  5%] Generating vtkGLSLShaderLibrary.h
diff --git a/pkgs/applications/misc/adobe-reader/default.nix b/pkgs/applications/misc/adobe-reader/default.nix
index 25bce4203eed..6eaf976faa46 100644
--- a/pkgs/applications/misc/adobe-reader/default.nix
+++ b/pkgs/applications/misc/adobe-reader/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, libX11, cups, gtkLibs, zlib, libxml2 }:
+{ stdenv, fetchurl, libX11, cups, zlib, libxml2, pango, atk, gtk, glib
+, gdk_pixbuf }:
 
 assert stdenv.system == "i686-linux";
 
@@ -17,13 +18,7 @@ stdenv.mkDerivation {
   # versions.
   
   libPath = stdenv.lib.makeLibraryPath
-    [ stdenv.gcc.gcc libX11 zlib libxml2 cups 
-      gtkLibs.pango
-      gtkLibs.atk
-      gtkLibs.gtk
-      gtkLibs.glib
-      gtkLibs.gdk_pixbuf
-    ];
+    [ stdenv.gcc.gcc libX11 zlib libxml2 cups pango atk gtk glib gdk_pixbuf ];
   
   meta = {
     description = "Adobe Reader, a viewer for PDF documents";
diff --git a/pkgs/applications/misc/evince/default.nix b/pkgs/applications/misc/evince/default.nix
index ac81a09c96d8..793c7bda2994 100644
--- a/pkgs/applications/misc/evince/default.nix
+++ b/pkgs/applications/misc/evince/default.nix
@@ -1,7 +1,7 @@
 { fetchurl, stdenv, perl, perlXMLParser, gettext, intltool
 , pkgconfig, glib, gtk, gnomedocutils, gnomeicontheme
 , libgnome, libgnomeui, scrollkeeper, libxslt
-, libglade, gnome_keyring, dbus, dbus_glib
+, libglade, libgnome_keyring, dbus, dbus_glib
 , poppler, libspectre, djvulibre, shared_mime_info
 , makeWrapper, which, ghostscript
 , recentListSize ? null # 5 is not enough, allow passing a different number
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     perl perlXMLParser gettext intltool pkgconfig glib gtk
     gnomedocutils gnomeicontheme libgnome libgnomeui libglade
-    scrollkeeper gnome_keyring
+    scrollkeeper libgnome_keyring
     libxslt  # for `xsltproc'
     dbus dbus_glib poppler libspectre djvulibre makeWrapper which
     ghostscript
diff --git a/pkgs/applications/misc/mysql-workbench/default.nix b/pkgs/applications/misc/mysql-workbench/default.nix
index adf2810f9374..a92e2fd37b02 100644
--- a/pkgs/applications/misc/mysql-workbench/default.nix
+++ b/pkgs/applications/misc/mysql-workbench/default.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchurl, makeWrapper, boost, file, gettext
-, glib, glibc, gnome_keyring, gtk, gtkmm, intltool, libctemplate, libglade
+, glib, glibc, libgnome_keyring, gnome_keyring, gtk, gtkmm, intltool
+, libctemplate, libglade
 , libgnome, libsigcxx, libtool, libuuid, libxml2, libzip, lua, mesa, mysql
 , pango, paramiko, pcre, pexpect, pkgconfig, pycrypto, python, sqlite
 }:
@@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
     sha256 = "1b5ijaccy2k7if4pld8ihz1wa1wr1f9gj2m5xa4kf7v05zcx93c6";
   };
 
-  buildInputs = [ boost file gettext glib glibc gnome_keyring gtk gtkmm intltool
+  buildInputs = [ boost file gettext glib glibc libgnome_keyring gtk gtkmm intltool
     libctemplate libglade libgnome libsigcxx libtool libuuid libxml2 libzip lua makeWrapper mesa
     mysql paramiko pcre pexpect pkgconfig pycrypto python sqlite ];
 
diff --git a/pkgs/applications/misc/truecrypt/default.nix b/pkgs/applications/misc/truecrypt/default.nix
index bd7197534519..40a4f8412667 100644
--- a/pkgs/applications/misc/truecrypt/default.nix
+++ b/pkgs/applications/misc/truecrypt/default.nix
@@ -45,12 +45,12 @@ library, use the 'NOGUI' parameter:
 }:
 
 stdenv.mkDerivation {
-  name = "truecrypt-7.1";
+  name = "truecrypt-7.1a";
   builder = ./builder.sh;
 
   src = fetchurl {
-    url = http://fossies.org/unix/misc/TrueCrypt-7.1-Source.tar.gz;
-    sha256 = "1x6rdxcvklb3zpmgfc3mg5h71gzki1q55ljkzjab2vzkf9n5v0cl";
+    url = http://fossies.org/unix/misc/TrueCrypt-7.1a-Source.tar.gz;
+    sha1 = "d43e0dbe05c04e316447d87413c4f74c68f5de24";
   };
 
   pkcs11h = fetchurl {
diff --git a/pkgs/applications/misc/xneur/0.8.nix b/pkgs/applications/misc/xneur/0.8.nix
index f94aa0c2fbc7..3eb84e6d4eae 100644
--- a/pkgs/applications/misc/xneur/0.8.nix
+++ b/pkgs/applications/misc/xneur/0.8.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, pcre, GStreamer, glib, libxml2, aspell
+{ stdenv, fetchurl, pkgconfig, pcre, gstreamer, glib, libxml2, aspell
 , imlib2, xorg, xosd }:
 
 stdenv.mkDerivation {
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
   };
 
   buildInputs =
-    [ xorg.libX11 pkgconfig pcre GStreamer glib libxml2 aspell
+    [ xorg.libX11 pkgconfig pcre gstreamer glib libxml2 aspell
       xorg.libXpm imlib2 xosd xorg.libXt xorg.libXext
     ];
 
diff --git a/pkgs/applications/misc/xneur/default.nix b/pkgs/applications/misc/xneur/default.nix
index bdaaaa43c74a..4f6e3342f588 100644
--- a/pkgs/applications/misc/xneur/default.nix
+++ b/pkgs/applications/misc/xneur/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, xorg, pcre, GStreamer, glib, libxml2
+{ stdenv, fetchurl, pkgconfig, xorg, pcre, gstreamer, glib, libxml2
 , aspell, cairo, imlib2, xosd, libnotify, gtk, pango, atk, enchant,
  gdk_pixbuf}:
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ xorg.libX11 pkgconfig pcre GStreamer glib libxml2 aspell cairo
+    [ xorg.libX11 pkgconfig pcre gstreamer glib libxml2 aspell cairo
       xorg.libXpm imlib2 xosd xorg.libXt xorg.libXext xorg.libXi libnotify
       gtk pango enchant gdk_pixbuf
     ];
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 3fffc68b6b2e..a73f87b4a533 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -1,5 +1,6 @@
 { GConf, alsaLib, bzip2, cairo, cups, dbus, dbus_glib, expat
-, fetchurl, ffmpeg, fontconfig, freetype, gtkLibs, libX11, libXfixes
+, fetchurl, ffmpeg, fontconfig, freetype, libX11, libXfixes
+, glib, gtk, gdk_pixbuf, pango
 , libXScrnSaver, libXdamage, libXext, libXrender, libXt, libXtst
 , libgcrypt, libjpeg, libpng, makeWrapper, nspr, nss, patchelf
 , stdenv, unzip, zlib, pam, pcre }:
@@ -37,7 +38,7 @@ stdenv.mkDerivation rec {
          ffmpeg fontconfig freetype libX11 libXScrnSaver libXfixes
          libXdamage libXext libXrender libXt libXtst libgcrypt libjpeg
          libpng nspr stdenv.gcc.gcc zlib stdenv.gcc.libc
-         gtkLibs.glib gtkLibs.gtk gtkLibs.gdk_pixbuf gtkLibs.pango
+         glib gtk gdk_pixbuf pango
          pam
        ];
 
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
index eae84d9c3a6d..821ddbd3dad8 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
@@ -21,9 +21,9 @@ let
     ];
 
   rpath32 = makeLibraryPath
-    [ pkgsi686Linux.gtkLibs.gdk_pixbuf
-      pkgsi686Linux.gtkLibs.glib
-      pkgsi686Linux.gtkLibs.gtk
+    [ pkgsi686Linux.gdk_pixbuf
+      pkgsi686Linux.glib
+      pkgsi686Linux.gtk
       pkgsi686Linux.xorg.libX11
       pkgsi686Linux.xorg.libXcomposite
       pkgsi686Linux.xorg.libXfixes
diff --git a/pkgs/applications/networking/browsers/netsurf/default.nix b/pkgs/applications/networking/browsers/netsurf/default.nix
index e9e0d502c2d8..cf01a3c6d5f5 100644
--- a/pkgs/applications/networking/browsers/netsurf/default.nix
+++ b/pkgs/applications/networking/browsers/netsurf/default.nix
@@ -77,9 +77,9 @@ rec {
   browser = import ./netsurf.nix {
     inherit fetchurl sourceFromHead stdenv lib pkgconfig
       libnsbmp libnsgif libsvgtiny libwapcaplet hubub libParserUtils
-      libpng libxml2 libCSS lcms curl libmng;
+      libpng libxml2 libCSS lcms curl libmng glib gtk;
     libharu = netsurfHaru;
-    inherit (gnome) glib gtk libglade;
+    inherit (gnome) libglade;
   };
 
 
diff --git a/pkgs/applications/networking/browsers/opera/default.nix b/pkgs/applications/networking/browsers/opera/default.nix
index 19a55c0f89cd..b6c9789bcfe6 100644
--- a/pkgs/applications/networking/browsers/opera/default.nix
+++ b/pkgs/applications/networking/browsers/opera/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, zlib, libX11, libXext, libSM, libICE, libXt
 , freetype, fontconfig, libXft, libXrender, libxcb, expat, libXau, libXdmcp
 , libuuid, cups, xz
-, gstreamer, gstPluginsBase, libxml2
+, gstreamer, gst_plugins_base, libxml2
 , gtkSupport ? true, glib, gtk, pango, gdk_pixbuf, cairo, atk
 , kdeSupport ? false, qt4, kdelibs
 }:
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ stdenv.gcc.gcc stdenv.gcc.libc zlib libX11 libXt libXext libSM libICE
       libXft freetype fontconfig libXrender libuuid expat
-      gstreamer libxml2 gstPluginsBase
+      gstreamer libxml2 gst_plugins_base
     ]
     ++ stdenv.lib.optionals gtkSupport [ glib gtk pango gdk_pixbuf cairo atk ]
     ++ stdenv.lib.optionals kdeSupport [ kdelibs qt4 ];
diff --git a/pkgs/applications/networking/browsers/uzbl/default.nix b/pkgs/applications/networking/browsers/uzbl/default.nix
index 145e5de90b72..b21d1862de5d 100644
--- a/pkgs/applications/networking/browsers/uzbl/default.nix
+++ b/pkgs/applications/networking/browsers/uzbl/default.nix
@@ -26,9 +26,9 @@ rec {
   doWrap = a.makeManyWrappers "$out/bin/uzbl-core" 
     ''
       --prefix GST_PLUGIN_PATH : ${a.webkit.gstreamer}/lib/gstreamer-* \
-      --prefix GST_PLUGIN_PATH : ${a.webkit.gstPluginsBase}/lib/gstreamer-* \
-      --prefix GST_PLUGIN_PATH : ${a.webkit.gstPluginsGood}/lib/gstreamer-* \
-      --prefix GST_PLUGIN_PATH : ${a.webkit.gstFfmpeg}/lib/gstreamer-* \
+      --prefix GST_PLUGIN_PATH : ${a.webkit.gst_plugins_base}/lib/gstreamer-* \
+      --prefix GST_PLUGIN_PATH : ${a.webkit.gst_plugins_good}/lib/gstreamer-* \
+      --prefix GST_PLUGIN_PATH : ${a.webkit.gst_ffmpeg}/lib/gstreamer-* \
       --prefix GIO_EXTRA_MODULES : ${a.glib_networking}/lib/gio/modules
     '';
 
diff --git a/pkgs/applications/networking/dropbox/default.nix b/pkgs/applications/networking/dropbox/default.nix
index 936fedd1491e..f8d97a4f167c 100644
--- a/pkgs/applications/networking/dropbox/default.nix
+++ b/pkgs/applications/networking/dropbox/default.nix
@@ -1,6 +1,8 @@
 { stdenv, fetchurl, makeDesktopItem
-, xlibs, gtkLibs, gnome
+, libSM, libX11, libXext, libXcomposite, libXcursor, libXdamage
+, libXfixes, libXi, libXinerama, libXrandr, libXrender
 , dbus, dbus_glib, fontconfig, gcc, patchelf
+, atk, glib, gdk_pixbuf, gtk, pango
 }:
 
 # this package contains the daemon version of dropbox
@@ -28,8 +30,7 @@ let
   # Libraries referenced by dropbox binary.
   # Be aware that future versions of the dropbox binary may refer
   # to different versions than are currently in these packages.
-  ldpath = with xlibs; with gtkLibs; with gnome;
-    stdenv.lib.makeSearchPath "lib" [
+  ldpath = stdenv.lib.makeSearchPath "lib" [
       libSM libX11 libXext libXcomposite libXcursor libXdamage
       libXfixes libXi libXinerama libXrandr libXrender
       atk dbus dbus_glib glib fontconfig gcc gdk_pixbuf
@@ -83,4 +84,4 @@ in stdenv.mkDerivation {
     description = "Online stored folders (daemon version)";
     homepage = http://www.dropbox.com;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/networking/instant-messengers/carrier/2.4.2.nix b/pkgs/applications/networking/instant-messengers/carrier/2.4.2.nix
index 6a86774226d3..877e71d0d00e 100644
--- a/pkgs/applications/networking/instant-messengers/carrier/2.4.2.nix
+++ b/pkgs/applications/networking/instant-messengers/carrier/2.4.2.nix
@@ -14,7 +14,7 @@ rec {
   };
 
   buildInputs = [gtkspell aspell
-    GStreamer startupnotification
+    gstreamer startupnotification
     libxml2 openssl nss
     libXScrnSaver ncurses scrnsaverproto 
     libX11 xproto kbproto GConf avahi
diff --git a/pkgs/applications/networking/instant-messengers/carrier/2.5.0.nix b/pkgs/applications/networking/instant-messengers/carrier/2.5.0.nix
index 58f65a2709ec..8bb28f7ce000 100644
--- a/pkgs/applications/networking/instant-messengers/carrier/2.5.0.nix
+++ b/pkgs/applications/networking/instant-messengers/carrier/2.5.0.nix
@@ -14,7 +14,7 @@ rec {
   };
 
   buildInputs = [gtkspell aspell
-    GStreamer startupnotification
+    gstreamer startupnotification
     libxml2 openssl nss
     libXScrnSaver ncurses scrnsaverproto 
     libX11 xproto kbproto GConf avahi
diff --git a/pkgs/applications/networking/ekiga/default.nix b/pkgs/applications/networking/instant-messengers/ekiga/default.nix
index 276df1ae7a15..276df1ae7a15 100644
--- a/pkgs/applications/networking/ekiga/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ekiga/default.nix
diff --git a/pkgs/applications/networking/kphone/default.nix b/pkgs/applications/networking/instant-messengers/kphone/default.nix
index dceb24a48b89..dceb24a48b89 100644
--- a/pkgs/applications/networking/kphone/default.nix
+++ b/pkgs/applications/networking/instant-messengers/kphone/default.nix
diff --git a/pkgs/applications/networking/linphone/default.nix b/pkgs/applications/networking/instant-messengers/linphone/default.nix
index 04e119afdb14..04e119afdb14 100644
--- a/pkgs/applications/networking/linphone/default.nix
+++ b/pkgs/applications/networking/instant-messengers/linphone/default.nix
diff --git a/pkgs/applications/networking/instant-messengers/oneteam/default.nix b/pkgs/applications/networking/instant-messengers/oneteam/default.nix
index 026ab3fff1c5..3549d7f14996 100644
--- a/pkgs/applications/networking/instant-messengers/oneteam/default.nix
+++ b/pkgs/applications/networking/instant-messengers/oneteam/default.nix
@@ -1,16 +1,16 @@
 x@{builderDefsPackage
   , fetchgit, perl, xulrunner, cmake, perlPackages, zip, unzip, pkgconfig
-  , pulseaudio, gtkLibs, pixman, nspr, nss, libXScrnSaver, scrnsaverproto
+  , pulseaudio, glib, gtk, pixman, nspr, nss, libXScrnSaver, scrnsaverproto
   , ...}:
 builderDefsPackage
 (a :  
 let 
   helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    ["fetchgit" "perlPackages" "gtkLibs"];
+    ["fetchgit" "perlPackages"];
 
   buildInputs = map (n: builtins.getAttr n x)
     (builtins.attrNames (builtins.removeAttrs x helperArgNames)) ++ [
-      a.perlPackages.SubName a.gtkLibs.gtk a.gtkLibs.glib
+      a.perlPackages.SubName a.gtk a.glib
     ];
   sourceInfo = rec {
     baseName="oneteam";
diff --git a/pkgs/applications/networking/instant-messengers/pidgin/default.nix b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
index 637744fc1821..aad1996f023b 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
@@ -11,7 +11,7 @@
  * - doxygen
  */
 { stdenv, fetchurl, pkgconfig, gtk, gtkspell, aspell,
-  GStreamer, gstPluginsBase, startupnotification, gettext,
+  gstreamer, gst_plugins_base, startupnotification, gettext,
   perl, perlXMLParser, libxml2, nss, nspr, farsight2,
   libXScrnSaver, ncurses, avahi, dbus, dbus_glib, intltool, libidn
   , lib, python
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
   inherit nss ncurses;
   buildInputs = [
     gtkspell aspell
-    GStreamer gstPluginsBase startupnotification
+    gstreamer gst_plugins_base startupnotification
     libxml2] 
   ++ (lib.optional (openssl != null) openssl)
   ++ (lib.optional (gnutls != null) gnutls)
diff --git a/pkgs/applications/networking/instant-messengers/psi/default.nix b/pkgs/applications/networking/instant-messengers/psi/default.nix
index 66dbddece3cc..2c6ba36c44f1 100644
--- a/pkgs/applications/networking/instant-messengers/psi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, aspell, qt4, zlib, sox, libX11, xproto, libSM, 
-  libICE, qca2, pkgconfig, qca2_ossl, liboil, speex, gst_all, which, glib }:
+  libICE, qca2, pkgconfig, qca2_ossl, liboil, speex, callPackage, which, glib }:
 
 stdenv.mkDerivation rec {
   name = "psi-0.14";
@@ -21,9 +21,7 @@ stdenv.mkDerivation rec {
       " --disable-bundled-qca"
     ];
 
-  psiMedia = (import ./psimedia.nix) {
-    inherit stdenv fetchurl qt4 speex gst_all liboil which glib pkgconfig;
-  };
+  psiMedia = callPackage ./psimedia.nix { };
 
   postInstall = ''
     PSI_PLUGINS="$out/lib/psi/plugins"
diff --git a/pkgs/applications/networking/instant-messengers/psi/psimedia.nix b/pkgs/applications/networking/instant-messengers/psi/psimedia.nix
index c7cee2f2c665..df821da42f20 100644
--- a/pkgs/applications/networking/instant-messengers/psi/psimedia.nix
+++ b/pkgs/applications/networking/instant-messengers/psi/psimedia.nix
@@ -1,4 +1,5 @@
-{stdenv, fetchurl, qt4, gst_all, liboil, speex, which, glib, pkgconfig}:
+{stdenv, fetchurl, qt4, gstreamer, gst_plugins_base, liboil, speex, which
+, glib, pkgconfig}:
 
 stdenv.mkDerivation rec {
   name = "psimedia";
@@ -8,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "0fxjdz8afh75gfx2msysb1gss6zx578l3224jvc9jhm99w1ii781";
   };
 
-  buildInputs = [qt4 gst_all.gstreamer gst_all.gstPluginsBase liboil speex which glib pkgconfig];
+  buildInputs = [qt4 gstreamer gst_plugins_base liboil speex which glib pkgconfig];
 
   configurePhase = ''./configure'';
 
diff --git a/pkgs/applications/networking/skype/default.nix b/pkgs/applications/networking/instant-messengers/skype/default.nix
index f94d7e125f65..f94d7e125f65 100644
--- a/pkgs/applications/networking/skype/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skype/default.nix
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
new file mode 100644
index 000000000000..154057b9377e
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, pkgconfig, libxslt, telepathy_glib, libxml2, dbus_glib
+, sqlite, libsoup, libnice, gnutls }:
+
+stdenv.mkDerivation rec {
+  name = "telepathy-gabble-0.15.4";
+
+  src = fetchurl {
+    url = "${meta.homepage}/releases/telepathy-gabble/${name}.tar.gz";
+    sha256 = "0rgqxsdcxds0ljcc01f9ifav26y80p4my37wqzkicr9hmv54h98s";
+  };
+
+  buildNativeInputs = [pkgconfig libxslt];
+  buildInputs = [ libxml2 dbus_glib sqlite libsoup libnice telepathy_glib gnutls ];
+
+  configureFlags = "--with-ca-certificates=/etc/ca-bundle.crt";
+  
+  meta = {
+    homepage = http://telepathy.freedesktop.org;
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/kde/0.3.0.nix b/pkgs/applications/networking/instant-messengers/telepathy/kde/0.3.0.nix
new file mode 100644
index 000000000000..f2340415be7f
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/telepathy/kde/0.3.0.nix
@@ -0,0 +1,13 @@
+[
+{name="ktp-accounts-kcm";key="accounts_kcm";sha256="0i4x4z6w4l9ngx0j258p2vjmsnsdn8hckq7cfld1iliq6fxb1vwv";}
+{name="ktp-approver";key="approver";sha256="0nj89jsina8b736sygxia8jmz6l81n6j0ffin8cpqbp9mczzpv9f";}
+{name="ktp-auth-handler";key="auth_handler";sha256="1fggj8aa56m7ycwi4q44kfzlx6gfigk0zaq8lhms4wdhm6736fhs";}
+{name="ktp-common-internals";key="common_internals";sha256="196f6gkfb3w11qdbamwvkq6hxk2zbdc3js53mh352yhmdyf3cya6";}
+{name="ktp-contact-applet";key="contact_applet";sha256="1vhv78qcyna1r4lmzpixb2a0p973ywjyi1izy8jf1vfhy3kk28dw";}
+{name="ktp-contact-list";key="contact_list";sha256="15gnm09j4g6ip7vgisayd3ixv2sryjazakzkfksxfkdxl3mgfzg3";}
+{name="ktp-filetransfer-handler";key="filetransfer_handler";sha256="1mq48clrlqwbg08211pr7hm24kagjzd8zs287mk9xl2wbv70jgc1";}
+{name="ktp-kded-integration-module";key="kded_integration_module";sha256="1p47dks5cvda4i8xhij01z1qmcv2vw27az0la15rhzqlf8kh4sam";}
+{name="ktp-presence-applet";key="presence_applet";sha256="1npr59g42yxb67dnplingqa2paaxdw60p99kilbvw15chfbrh47r";}
+{name="ktp-send-file";key="send_file";sha256="1961zh4b1bamjyqw3wkm2aclx5sbfbr84i3x7lvfr74vw6cky8mc";}
+{name="ktp-text-ui";key="text_ui";sha256="184zyw6l779nkgpc5dx9lcmh543kmr4ay8cvm8vsnrsknn6p0dgp";}
+]
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/kde/contact-applet-po.patch b/pkgs/applications/networking/instant-messengers/telepathy/kde/contact-applet-po.patch
new file mode 100644
index 000000000000..6b73781af5ce
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/telepathy/kde/contact-applet-po.patch
@@ -0,0 +1,24 @@
+commit eaf09e1242408ac8652ba3ffd1d698326e4b2360
+Author: Rohan Garg <rohangarg@kubuntu.org>
+Date:   Wed Feb 8 00:19:19 2012 +0530
+
+    Do not use CMake 2.8 just yet
+    
+    CMake 2.8 has some scope issues which cause the pofile target to
+    interfere while building translations in the tarball releases.
+    Not requiring CMake 2.8 fixes the build issue.
+    
+    BUGS: 292593 293030
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0b34038..50e94f3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,7 +1,5 @@
+ project(ktp-contact-applet)
+ 
+-cmake_minimum_required(VERSION 2.8)
+-
+ set(CMAKE_MODULE_PATH
+     "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules"
+     ${CMAKE_MODULE_PATH}
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/kde/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/kde/default.nix
new file mode 100644
index 000000000000..8b7c9ba98de0
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/telepathy/kde/default.nix
@@ -0,0 +1,53 @@
+{ stdenv, fetchurl, fetchgit, telepathy_qt, kdelibs, gettext, pkgconfig
+, qt_gstreamer }:
+
+let
+  version = "0.3.0";
+  manifest = import (./. + "/${version}.nix");
+  overrides = {
+    presence_applet = x : (x // { patches = [ ./presence-applet-po.patch ]; });
+    contact_applet = x: (x // { patches = [ ./contact-applet-po.patch ]; });
+  };
+  ktpFun = { name, key, sha256 }:
+  {
+    name = key;
+    value = stdenv.mkDerivation (
+      (if builtins.hasAttr key overrides then builtins.getAttr key overrides else (x: x))
+      {
+        name = "${name}-${version}";
+
+        src = fetchurl {
+          url = "mirror://kde/unstable/kde-telepathy/${version}/src/${name}-${version}.tar.bz2";
+          inherit sha256;
+        };
+
+        buildNativeInputs = [ gettext pkgconfig ];
+        buildInputs = [ kdelibs telepathy_qt ]
+          ++ stdenv.lib.optional (name != "ktp-common-internals") common_internals;
+      }
+    );
+  };
+
+  stable = builtins.listToAttrs (map ktpFun manifest);
+  unstable = {
+    call_ui = stdenv.mkDerivation {
+      name = "ktp-call-ui-20120314";
+
+      src = fetchgit {
+        url = git://anongit.kde.org/ktp-call-ui;
+        rev = "3587166d1ace83b115e113853514a7acc04d9d86";
+        sha256 = "0yv386rqy4vkwmd38wvvsrbam59sbv5k2lwimv96kf93xgkp5g0l";
+      };
+
+      buildInputs = [ kdelibs telepathy_qt common_internals qt_gstreamer ];
+      buildNativeInputs = [ gettext pkgconfig ];
+    };
+  };
+  common_internals = pkgs.common_internals;
+  pkgs = unstable // stable;
+in
+pkgs // {
+  inherit version;
+  recurseForDerivations = true;
+  full = stdenv.lib.attrValues pkgs;
+}
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/kde/presence-applet-po.patch b/pkgs/applications/networking/instant-messengers/telepathy/kde/presence-applet-po.patch
new file mode 100644
index 000000000000..10d190a62945
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/telepathy/kde/presence-applet-po.patch
@@ -0,0 +1,24 @@
+commit bf59d0488708eb57ca91a9b6d0ce8951b99ba778
+Author: Rohan Garg <rohangarg@kubuntu.org>
+Date:   Wed Feb 8 01:19:42 2012 +0530
+
+    Do not use CMake 2.8 just yet
+    
+    CMake 2.8 has some scope issues which cause the pofile target to
+    interfere while building translations in the tarball releases.
+    Not requiring CMake 2.8 fixes the build issue.
+    
+    BUG: 292593
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8e2c1de..80add26 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,7 +1,5 @@
+ project(ktp-presence-applet)
+ 
+-cmake_minimum_required(VERSION 2.8)
+-
+ set(CMAKE_MODULE_PATH
+     "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules"
+     ${CMAKE_MODULE_PATH}
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/kde/update.sh b/pkgs/applications/networking/instant-messengers/telepathy/kde/update.sh
new file mode 100755
index 000000000000..19a8e2053bf2
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/telepathy/kde/update.sh
@@ -0,0 +1,38 @@
+#!/bin/sh
+
+usage() {
+	echo "$0 version|directory"
+}
+
+download() {
+	URL=ftp://ftp.kde.org/pub/kde/unstable/kde-telepathy/$1/src
+	destdir=$2
+	if test -n "$KDE_FULL_SESSION"; then
+		kioclient copy $URL $destdir
+	else
+		mkdir $destdir
+		lftp -c "open $URL; lcd $destdir; mget -c *"
+	fi
+}
+
+if [[ -d $1 ]]; then
+	directory=$1
+	version=$(ls $directory/* | head -n1 |
+		sed -e "s,$directory/[^0-9.]*\\([0-9.]\\+\\)\\.tar.*,\\1,")
+	echo "Version $version"
+else
+	version=$1
+	directory=src-$version
+	download $version $directory
+fi
+
+packages=$(ls $directory/* | sed -e "s,$directory/ktp-\\(.*\\)-$version.*,\\1,")
+echo $packages
+exec >$version.nix
+echo "["
+for pkg in $packages; do
+	hash=$(nix-hash --flat --type sha256 --base32 $directory/ktp-$pkg-$version.*)
+	echo "{name=\"ktp-${pkg}\";key=\"${pkg//-/_}\";sha256=\"${hash}\";}"
+done
+echo "]"
+
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
new file mode 100644
index 000000000000..3d24fdf2a191
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
@@ -0,0 +1,15 @@
+{ stdenv, fetchurl, pkgconfig, telepathy_glib, libxslt }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-5.11.0";
+  pname = "telepathy-mission-control";
+
+  src = fetchurl {
+    url = "http://telepathy.freedesktop.org/releases/${pname}/${name}.tar.gz";
+    sha256 = "19fz1lrsvrm0p58wkxhjn7xyickz8bgzks4mkhlvgp692ypvvppm";
+  };
+
+  buildInputs = [ telepathy_glib ];
+
+  buildNativeInputs = [ pkgconfig libxslt ];
+}
diff --git a/pkgs/applications/networking/twinkle/default.nix b/pkgs/applications/networking/instant-messengers/twinkle/default.nix
index 0824210c4b56..0824210c4b56 100644
--- a/pkgs/applications/networking/twinkle/default.nix
+++ b/pkgs/applications/networking/instant-messengers/twinkle/default.nix
diff --git a/pkgs/applications/networking/p2p/retroshare/default.nix b/pkgs/applications/networking/p2p/retroshare/default.nix
index be9847bc51cb..d4e3aa91cc0b 100644
--- a/pkgs/applications/networking/p2p/retroshare/default.nix
+++ b/pkgs/applications/networking/p2p/retroshare/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, qt, libupnp, gpgme, gnome_keyring, glib}:
+{stdenv, fetchurl, qt, libupnp, gpgme, libgnome_keyring, glib}:
 
 throw "still fails to build"
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
     sha256 = "15971wxx8djwcxn170jyn0mlh7cfzqsf031aa849wr9z234gwrcn";
   };
 
-  buildInputs = [ qt libupnp gpgme gnome_keyring glib ];
+  buildInputs = [ qt libupnp gpgme libgnome_keyring glib ];
 
   buildPhase = ''
     cd libbitdht/src
diff --git a/pkgs/applications/networking/p2p/tribler/default.nix b/pkgs/applications/networking/p2p/tribler/default.nix
index a834c443bf78..5fa19c71d9a1 100644
--- a/pkgs/applications/networking/p2p/tribler/default.nix
+++ b/pkgs/applications/networking/p2p/tribler/default.nix
@@ -1,15 +1,15 @@
 { stdenv, fetchsvn, pythonPackages, makeWrapper, nettools
 , enablePlayer ? false, vlc ? null }:
 
-let rev = "24912"; in
+let rev = "25411"; in
 
 stdenv.mkDerivation {
-  name = "tribler-5.5.13-pre${rev}";
+  name = "tribler-5.5.21-pre${rev}";
 
   src = fetchsvn {
     url = http://svn.tribler.org/abc/branches/release-5.5.x;
     inherit rev;
-    sha256 = "1x4rf83gsxif7fwx7p4crfji52i5y8rp54qfv1lbyxr8dfqjx83g";
+    sha256 = "17c9svy4zjchzihk6mf0kh4lnvaxjfmgfmimyby5w0d3cwbw49zx";
   };
 
   buildInputs = [ pythonPackages.python pythonPackages.wrapPython makeWrapper ];
diff --git a/pkgs/applications/office/openoffice/generate-libreoffice-srcs.sh b/pkgs/applications/office/openoffice/generate-libreoffice-srcs.sh
index 97bf2b32c9ce..1d751ec7049e 100644
--- a/pkgs/applications/office/openoffice/generate-libreoffice-srcs.sh
+++ b/pkgs/applications/office/openoffice/generate-libreoffice-srcs.sh
@@ -1,25 +1,17 @@
-#!/bin/sh
+#!/var/run/current-system/bin/bash
 
-VERSIONBASE=3.4.5
-
-VERSION=3.4.5.2
-
-if [ $# -gt 2 ]; then
-  VERSIONBASE=$1
-  VERSION=$2
-fi
+# Take the list of files from the main package, ooo.lst.in
 
 echo '{fetchurl} : ['
 
-for a in artwork base bootstrap calc components extensions extras filters \
-  help impress libs-core libs-extern libs-extern-sys libs-gui postprocess \
-  translations ure writer sdk testing; do
+while read a; do
 
-  URL=http://download.documentfoundation.org/libreoffice/src/$VERSIONBASE/libreoffice-$a-$VERSION.tar.bz2
+  URL=http://dev-www.libreoffice.org/src/$a
 
+  MD5=${a::32}
   echo '(fetchurl {'
   echo "  url = \"$URL\";"
-  echo "  sha256 = \"`nix-prefetch-url $URL`\";"
+  echo "  md5 = \"$MD5\";"
   echo '})'
 done
 
diff --git a/pkgs/applications/office/openoffice/libreoffice-srcs.nix b/pkgs/applications/office/openoffice/libreoffice-srcs.nix
index ed795c9a79fe..7e84bfdbd71c 100644
--- a/pkgs/applications/office/openoffice/libreoffice-srcs.nix
+++ b/pkgs/applications/office/openoffice/libreoffice-srcs.nix
@@ -1,78 +1,370 @@
 {fetchurl} : [
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-artwork-3.4.5.2.tar.bz2";
-  sha256 = "01vi1njw0agpvxi0141k2arzhgq1kjbda7sj1l0l304qj9n78b1q";
+  url = "http://dev-www.libreoffice.org/src/48a9f787f43a09c0a9b7b00cd1fddbbf-hyphen-2.7.1.tar.gz";
+  md5 = "48a9f787f43a09c0a9b7b00cd1fddbbf";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-base-3.4.5.2.tar.bz2";
-  sha256 = "0f5rsyrn33iz0sny3wxsghv7c7yrbhas42yarb5rq958i3kpm6wz";
+  url = "http://dev-www.libreoffice.org/src/63ddc5116488985e820075e65fbe6aa4-openssl-0.9.8o.tar.gz";
+  md5 = "63ddc5116488985e820075e65fbe6aa4";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-calc-3.4.5.2.tar.bz2";
-  sha256 = "1l00y0qj1s9m31jmqg7q7bczxa5xsng388nqc9zc3vd6zjf4xy9i";
+  url = "http://dev-www.libreoffice.org/src/db5ffcd50064421176e8afb7b85fd1a7-pixman-0.24.0.tar.bz2";
+  md5 = "db5ffcd50064421176e8afb7b85fd1a7";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-components-3.4.5.2.tar.bz2";
-  sha256 = "1sq6yl06x006wxj1i89lv75sskb1bkxws82rcj1gvih6r8czih52";
+  url = "http://dev-www.libreoffice.org/src/0b49ede71c21c0599b0cc19b353a6cb3-README_apache-commons.txt";
+  md5 = "0b49ede71c21c0599b0cc19b353a6cb3";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-extensions-3.4.5.2.tar.bz2";
-  sha256 = "18xhk9h9vl9qhwlgv8ks3xi6hls2vgnkygnz1yhpf4p2g2y6nv7z";
+  url = "http://dev-www.libreoffice.org/src/e1c178b18f130b40494561f02bc1a948-libexttextcat-3.2.0.tar.bz2";
+  md5 = "e1c178b18f130b40494561f02bc1a948";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-extras-3.4.5.2.tar.bz2";
-  sha256 = "0zxm30na6hzpjfasi1g890magf63kmg39y6y56wz9hv2z9p5q8jv";
+  url = "http://dev-www.libreoffice.org/src/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip";
+  md5 = "17410483b5b5f267aa18b7e00b65e6e0";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-filters-3.4.5.2.tar.bz2";
-  sha256 = "002qxqav39530csraq16ga4fnvw8v9wqbvp88b6lzi2m5yqpbl46";
+  url = "http://dev-www.libreoffice.org/src/1756c4fa6c616ae15973c104cd8cb256-Adobe-Core35_AFMs-314.tar.gz";
+  md5 = "1756c4fa6c616ae15973c104cd8cb256";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-help-3.4.5.2.tar.bz2";
-  sha256 = "1agsqzz73dmsy2jsw63qq1ljx4h0ppz7zwqllc7617yiak0rqsqq";
+  url = "http://dev-www.libreoffice.org/src/18f577b374d60b3c760a3a3350407632-STLport-4.5.tar.gz";
+  md5 = "18f577b374d60b3c760a3a3350407632";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-impress-3.4.5.2.tar.bz2";
-  sha256 = "0ivabx4wl7dkfalr0z4gqm5976phc6mkidnv1i580ixrf0zdz483";
+  url = "http://dev-www.libreoffice.org/src/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz";
+  md5 = "1f24ab1d39f4a51faf22244c94a6203f";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-libs-core-3.4.5.2.tar.bz2";
-  sha256 = "0blwd58hf51iixikrjrlqdm6n40wv5k2c9c8krfzxfcvk20mvv4b";
+  url = "http://dev-www.libreoffice.org/src/24be19595acad0a2cae931af77a0148a-LICENSE_source-9.0.0.7-bj.html";
+  md5 = "24be19595acad0a2cae931af77a0148a";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-libs-extern-3.4.5.2.tar.bz2";
-  sha256 = "01cm3fjfj08a7b8i6iszml2ly1wa2hnkqqq1irvjb0wb1fjjxq3s";
+  url = "http://dev-www.libreoffice.org/src/26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz";
+  md5 = "26b3e95ddf3d9c077c480ea45874b3b8";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-libs-extern-sys-3.4.5.2.tar.bz2";
-  sha256 = "1528n6mnlhpdhi9zfvqziwr6knsak212ghjww0jlfh31ky3whlh0";
+  url = "http://dev-www.libreoffice.org/src/284e768eeda0e2898b0d5bf7e26a016e-raptor-1.4.18.tar.gz";
+  md5 = "284e768eeda0e2898b0d5bf7e26a016e";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-libs-gui-3.4.5.2.tar.bz2";
-  sha256 = "0win8si2yjkbfrwx46dw6as82iw7x4wd53cirncsrwvzksdqphcr";
+  url = "http://dev-www.libreoffice.org/src/2a177023f9ea8ec8bd00837605c5df1b-jakarta-tomcat-5.0.30-src.tar.gz";
+  md5 = "2a177023f9ea8ec8bd00837605c5df1b";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-postprocess-3.4.5.2.tar.bz2";
-  sha256 = "1rspqy1drfvj3rdfx8d7wbwn17vw08n26qmb98xwkgf5najdpfnp";
+  url = "http://dev-www.libreoffice.org/src/2ae988b339daec234019a7066f96733e-commons-lang-2.3-src.tar.gz";
+  md5 = "2ae988b339daec234019a7066f96733e";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-translations-3.4.5.2.tar.bz2";
-  sha256 = "0ngynrskq6h58gybswcpklj49cyvh0igksngbr0gz6n1yq3471iz";
+  url = "http://dev-www.libreoffice.org/src/2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz";
+  md5 = "2c9b0f83ed5890af02c0df1c1776f39b";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-ure-3.4.5.2.tar.bz2";
-  sha256 = "0wg06gbaq3ynqzaxaaqgxkjssxnggw6xqgfm63rmn9c1cd4q0mzy";
+  url = "http://dev-www.libreoffice.org/src/0be45d54cc5e1c2e3102e32b8c190346-liberation-fonts-ttf-1.07.1.tar.gz";
+  md5 = "0be45d54cc5e1c2e3102e32b8c190346";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-writer-3.4.5.2.tar.bz2";
-  sha256 = "0k7xf94abavdzpns1z13phl3vjz0xkfv2h5sn7rgpr3dy184klxh";
+  url = "http://dev-www.libreoffice.org/src/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip";
+  md5 = "35c94d2df8893241173de1d16b6034c0";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-sdk-3.4.5.2.tar.bz2";
-  sha256 = "1f9iv875aw9sic4gl45ik1vx24gpq9iarjl673wz6l0wxr6hgrgw";
+  url = "http://dev-www.libreoffice.org/src/35efabc239af896dfb79be7ebdd6e6b9-gentiumbasic-fonts-1.10.zip";
+  md5 = "35efabc239af896dfb79be7ebdd6e6b9";
 })
 (fetchurl {
-  url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-testing-3.4.5.2.tar.bz2";
-  sha256 = "05sk3li5jgmjv722ncsr2i7arhmsvkkvmh4qw7xl70p8dpxhla8q";
+  url = "http://dev-www.libreoffice.org/src/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip";
+  md5 = "39bb3fcea1514f1369fcfc87542390fd";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/3ade8cfe7e59ca8e65052644fed9fca4-epm-3.7.tar.gz";
+  md5 = "3ade8cfe7e59ca8e65052644fed9fca4";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/3c219630e4302863a9a83d0efde889db-commons-logging-1.1.1-src.tar.gz";
+  md5 = "3c219630e4302863a9a83d0efde889db";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/48470d662650c3c074e1c3fabbc67bbd-README_source-9.0.0.7-bj.txt";
+  md5 = "48470d662650c3c074e1c3fabbc67bbd";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/48d8169acc35f97e05d8dcdfd45be7f2-lucene-2.3.2.tar.gz";
+  md5 = "48d8169acc35f97e05d8dcdfd45be7f2";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/4a660ce8466c9df01f19036435425c3a-glibc-2.1.3-stub.tar.gz";
+  md5 = "4a660ce8466c9df01f19036435425c3a";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/f101a9e88b783337b20b2e26dfd26d5f-cairo-1.10.2.tar.gz";
+  md5 = "f101a9e88b783337b20b2e26dfd26d5f";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/599dc4cc65a07ee868cf92a667a913d2-xpdf-3.02.tar.gz";
+  md5 = "599dc4cc65a07ee868cf92a667a913d2";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/7740a8ec23878a2f50120e1faa2730f2-libxml2-2.7.6.tar.gz";
+  md5 = "7740a8ec23878a2f50120e1faa2730f2";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/7376930b0d3f3d77a685d94c4a3acda8-STLport-4.5-0119.tar.gz";
+  md5 = "7376930b0d3f3d77a685d94c4a3acda8";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip";
+  md5 = "798b2ffdc8bcfe7bca2cf92b62caf685";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/ecb2e37e45c9933e2a963cabe03670ab-curl-7.19.7.tar.gz";
+  md5 = "ecb2e37e45c9933e2a963cabe03670ab";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/8294d6c42e3553229af9934c5c0ed997-stax-api-1.0-2-sources.jar";
+  md5 = "8294d6c42e3553229af9934c5c0ed997";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/bd30e9cf5523cdfc019b94f5e1d7fd19-cppunit-1.12.1.tar.gz";
+  md5 = "bd30e9cf5523cdfc019b94f5e1d7fd19";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/a169ab152209200a7bad29a275cb0333-seamonkey-1.1.14.source.tar.gz";
+  md5 = "a169ab152209200a7bad29a275cb0333";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/a4d9b30810a434a3ed39fc0003bbd637-LICENSE_stax-api-1.0-2-sources.html";
+  md5 = "a4d9b30810a434a3ed39fc0003bbd637";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip";
+  md5 = "a7983f859eafb2677d7ff386a023bc40";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip";
+  md5 = "ada24d37d8d638b3d8a9985e80bc2978";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/af3c3acf618de6108d65fcdc92b492e1-commons-codec-1.3-src.tar.gz";
+  md5 = "af3c3acf618de6108d65fcdc92b492e1";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/bc702168a2af16869201dbe91e46ae48-LICENSE_Python-2.6.1";
+  md5 = "bc702168a2af16869201dbe91e46ae48";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/c441926f3a552ed3e5b274b62e86af16-STLport-4.0.tar.gz";
+  md5 = "c441926f3a552ed3e5b274b62e86af16";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/ca66e26082cab8bb817185a116db809b-redland-1.0.8.tar.gz";
+  md5 = "ca66e26082cab8bb817185a116db809b";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/d4c4d91ab3a8e52a2e69d48d34ef4df4-core.zip";
+  md5 = "d4c4d91ab3a8e52a2e69d48d34ef4df4";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/d70951c80dabecc2892c919ff5d07172-db-4.7.25.NC-custom.tar.gz";
+  md5 = "d70951c80dabecc2892c919ff5d07172";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/e0707ff896045731ff99e99799606441-README_db-4.7.25.NC-custom.txt";
+  md5 = "e0707ff896045731ff99e99799606441";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/e81c2f0953aa60f8062c05a4673f2be0-Python-2.6.1.tar.bz2";
+  md5 = "e81c2f0953aa60f8062c05a4673f2be0";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/e61d0364a30146aaa3001296f853b2b9-libxslt-1.1.26.tar.gz";
+  md5 = "e61d0364a30146aaa3001296f853b2b9";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/ea570af93c284aa9e5621cd563f54f4d-bsh-2.0b1-src.tar.gz";
+  md5 = "ea570af93c284aa9e5621cd563f54f4d";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/ea91f2fb4212a21d708aced277e6e85a-vigra1.4.0.tar.gz";
+  md5 = "ea91f2fb4212a21d708aced277e6e85a";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/ee8b492592568805593f81f8cdf2a04c-expat-2.0.1.tar.gz";
+  md5 = "ee8b492592568805593f81f8cdf2a04c";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/fb7ba5c2182be4e73748859967455455-README_stax-api-1.0-2-sources.txt";
+  md5 = "fb7ba5c2182be4e73748859967455455";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/fca8706f2c4619e2fa3f8f42f8fc1e9d-rasqal-0.9.16.tar.gz";
+  md5 = "fca8706f2c4619e2fa3f8f42f8fc1e9d";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/fdb27bfe2dbe2e7b57ae194d9bf36bab-SampleICC-1.3.2.tar.gz";
+  md5 = "fdb27bfe2dbe2e7b57ae194d9bf36bab";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/f872f4ac066433d8ff92f5e316b36ff9-dejavu-fonts-ttf-2.33.zip";
+  md5 = "f872f4ac066433d8ff92f5e316b36ff9";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/0981bda6548a8c8233ffce2b6e4b2a23-mysql-connector-c++-1.1.0.tar.gz";
+  md5 = "0981bda6548a8c8233ffce2b6e4b2a23";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/061a9f17323117c9358ed60f33ecff78-postgresql-9.1.1.tar.bz2";
+  md5 = "061a9f17323117c9358ed60f33ecff78";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/067201ea8b126597670b5eff72e1f66c-mythes-1.2.0.tar.gz";
+  md5 = "067201ea8b126597670b5eff72e1f66c";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip";
+  md5 = "3404ab6b1792ae5f16bbd603bd1e1d03";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip";
+  md5 = "3bdf40c0d199af31923e900d082ca2dd";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip";
+  md5 = "8ce2fcd72becf06c41f7201d15373ed9";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip";
+  md5 = "97b2d4dba862397f446b217e2b623e71";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip";
+  md5 = "ace6ab49184e329db254e454a010f56d";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip";
+  md5 = "d8bd5eed178db6e2b18eeed243f85aa8";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip";
+  md5 = "db60e4fde8dd6d6807523deb71ee34dc";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip";
+  md5 = "eeb2c7ddf0d302fba4bfc6e97eac9624";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip";
+  md5 = "f94d9870737518e3b597f9265f4e9803";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip";
+  md5 = "ba2930200c9f019c2d93a8c88c651a0f";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/ff369e69ef0f0143beb5626164e87ae2-neon-0.29.5.tar.gz";
+  md5 = "ff369e69ef0f0143beb5626164e87ae2";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/3dd55b952826d2b32f51308f2f91aa89-gettext-0.18.1.1.tar.gz";
+  md5 = "3dd55b952826d2b32f51308f2f91aa89";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/9f6e85e1e38490c3956f4415bcd33e6e-glib-2.28.1.tar.gz";
+  md5 = "9f6e85e1e38490c3956f4415bcd33e6e";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/a7d6c5f2fe2d481149ed3ba807b5c043-gdk-pixbuf-2.23.0.tar.gz";
+  md5 = "a7d6c5f2fe2d481149ed3ba807b5c043";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/3a84ac2da37cae5bf7ce616228c6fbde-libgsf-1.14.19.tar.gz";
+  md5 = "3a84ac2da37cae5bf7ce616228c6fbde";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/22ad1c8d3fda7e73b0798035f3dd96bc-pango-1.28.3.tar.gz";
+  md5 = "22ad1c8d3fda7e73b0798035f3dd96bc";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/0611e099e807210cf738dcb41425d104-libcroco-0.6.2.tar.gz";
+  md5 = "0611e099e807210cf738dcb41425d104";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/d7a242ca43e33e1b63d3073f9d46a6a8-librsvg-2.32.1.tar.gz";
+  md5 = "d7a242ca43e33e1b63d3073f9d46a6a8";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/220035f111ea045a51e290906025e8b5-libpng-1.5.1.tar.gz";
+  md5 = "220035f111ea045a51e290906025e8b5";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/a2c10c04f396a9ce72894beb18b4e1f9-jpeg-8c.tar.gz";
+  md5 = "a2c10c04f396a9ce72894beb18b4e1f9";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/c735eab2d659a96e5a594c9e8541ad63-zlib-1.2.5.tar.gz";
+  md5 = "c735eab2d659a96e5a594c9e8541ad63";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/314e582264c36b3735466c522899aa07-icu4c-4_4_2-src.tgz";
+  md5 = "314e582264c36b3735466c522899aa07";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt";
+  md5 = "451ccf439a36a568653b024534669971";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/b99fb620b1324b4ce79ee6998b507146-JLanguageTool-1.4.0.tar.bz2";
+  md5 = "b99fb620b1324b4ce79ee6998b507146";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/debc62758716a169df9f62e6ab2bc634-zlib-1.2.3.tar.gz";
+  md5 = "debc62758716a169df9f62e6ab2bc634";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/0f63ee487fda8f21fafa767b3c447ac9-ixion-0.2.0.tar.gz";
+  md5 = "0f63ee487fda8f21fafa767b3c447ac9";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/71474203939fafbe271e1263e61d083e-nss-3.12.8-with-nspr-4.8.6.tar.gz";
+  md5 = "71474203939fafbe271e1263e61d083e";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/9d283e02441d8cebdcd1e5d9df227d67-libwpg-0.2.1.tar.bz2";
+  md5 = "9d283e02441d8cebdcd1e5d9df227d67";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/c01351d7db2b205de755d58769288224-libwpd-0.9.4.tar.bz2";
+  md5 = "c01351d7db2b205de755d58769288224";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/34dd7951abbda99b7a75a09993a37965-libwps-0.2.4.tar.bz2";
+  md5 = "34dd7951abbda99b7a75a09993a37965";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/0ff7d225d087793c8c2c680d77aac3e7-mdds_0.5.3.tar.bz2";
+  md5 = "0ff7d225d087793c8c2c680d77aac3e7";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/f02578f5218f217a9f20e9c30e119c6a-boost_1_44_0.tar.bz2";
+  md5 = "f02578f5218f217a9f20e9c30e119c6a";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/3121aaf3e13e5d88dfff13fb4a5f1ab8-hunspell-1.3.2.tar.gz";
+  md5 = "3121aaf3e13e5d88dfff13fb4a5f1ab8";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/3bf481ca95109b14435125c0dd1f2217-graphite2-1.0.3.tgz";
+  md5 = "3bf481ca95109b14435125c0dd1f2217";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/776ad69a63ac1e99abed176e54ce25d9-libvisio-0.0.14.tar.bz2";
+  md5 = "776ad69a63ac1e99abed176e54ce25d9";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/e7a384790b13c29113e22e596ade9687-LinLibertineG-20120116.zip";
+  md5 = "e7a384790b13c29113e22e596ade9687";
+})
+(fetchurl {
+  url = "http://dev-www.libreoffice.org/src/7c2549f6b0a8bb604e6c4c729ffdcfe6-libcmis-0.1.0.tar.gz";
+  md5 = "7c2549f6b0a8bb604e6c4c729ffdcfe6";
 })
 ]
diff --git a/pkgs/applications/office/openoffice/libreoffice.nix b/pkgs/applications/office/openoffice/libreoffice.nix
index d90beecd967a..6c61f04026d6 100644
--- a/pkgs/applications/office/openoffice/libreoffice.nix
+++ b/pkgs/applications/office/openoffice/libreoffice.nix
@@ -3,34 +3,63 @@
 , libxml2, db4, sablotron, curl, libXaw, fontconfig, libsndfile, neon
 , bison, flex, zip, unzip, gtk, libmspack, getopt, file, cairo, which
 , icu, boost, jdk, ant, libXext, libX11, libXtst, libXi, cups
-, libXinerama, openssl, gperf, cppunit, GConf, ORBit2
-, autoconf, openldap, postgresql, bash
-, langs ? [ "en-US" "ca" "ru" "eo" "fr" "nl" "de" "en-GB" ]
-, force ? false
+, libXinerama, openssl, gperf, cppunit, GConf, ORBit2, poppler
+, librsvg, gnome_vfs, gstreamer, gst_plugins_base, mesa
+, autoconf, automake, openldap, bash
+, fontsConf
+, langs ? [ "ca" "ru" "eo" "fr" "nl" "de" "en-GB" ]
 }:
 
-if !force then
-  throw ''The expression for libreoffice is still not ready.
-  Set config.libreoffice.force = true; if you want to try it anyway.''
-else
+let
+  langsSpaces = stdenv.lib.concatStringsSep " " langs;
+in
 stdenv.mkDerivation rec {
-  name = "libreoffice-3.4.5.2";
+  name = "libreoffice-3.5.0.3";
 
   srcs_download = import ./libreoffice-srcs.nix { inherit fetchurl; };
 
+  src_translation = fetchurl {
+    url = "http://download.documentfoundation.org/libreoffice/src/3.5.0/libreoffice-translations-3.5.0.3.tar.xz";
+    sha256 = "0kk1jb4axjvkmg22yhxx4p9522zix6rr5cs0c5rxzlkm63qw6h8w";
+  };
+
+  src_help = fetchurl {
+    url = "http://download.documentfoundation.org/libreoffice/src/3.5.0/libreoffice-help-3.5.0.3.tar.xz";
+    sha256 = "0wvlh2r4cy14rs0svr4yb4fidp2g9wbj8vxx2a5swnjf2fdf8qda";
+  };
+
   src = fetchurl {
-    url = "http://download.documentfoundation.org/libreoffice/src/3.4.5/libreoffice-bootstrap-3.4.5.2.tar.bz2";
-    sha256 = "05xz6ykddrm6mrgl9jssr2xpg2ir0x6c1c3n1cph0mvd0hiz58x9";
+    url = "http://download.documentfoundation.org/libreoffice/src/3.5.0/libreoffice-core-3.5.0.3.tar.xz";
+    sha256 = "04hvlj6wzbj3zjpfjq975mgdmf902ywyf94nxcv067asg83qfcvr";
   };
 
+  configureScript = "./autogen.sh";
+
   preConfigure = ''
-    sed -i 's,/usr/bin/env bash,${bash}/bin/bash,' Makefile.in bin/unpack-sources
+    tar xf $src_translation
+    # Libreoffice expects by default the translations in ./translations
+    mv libreoffice-translations-3.5.0.3/translations .
+    tar xf $src_help
+    # Libreoffice expects by default the help in ./helpcontent2
+    mv libreoffice-help-3.5.0.3/helpcontent2 .
+
+    sed -i 's,/bin/bash,${bash}/bin/bash,' sysui/desktop/share/makefile.mk solenv/bin/localize
+    sed -i 's,/usr/bin/env bash,${bash}/bin/bash,' bin/unpack-sources \
+      solenv/bin/install-gdb-printers solenv/bin/striplanguagetags.sh
+
+    sed -i 's,/usr/bin/env perl,${perl}/bin/perl,' solenv/bin/concat-deps.pl solenv/bin/ooinstall
+    sed -i 's,ANT_OPTS+="\(.*\)",ANT_OPTS+=\1,' apache-commons/java/*/makefile.mk
 
     # Needed to find genccode
     PATH=$PATH:${icu}/sbin
+
+    configureFlagsArray=("--with-lang=${langsSpaces}")
   '';
 
   buildPhase = ''
+    # This is required as some cppunittests require fontconfig configured
+    export FONTCONFIG_FILE=${fontsConf}
+    mkdir src
     for a in $srcs_download; do
       FILE=$(basename $a)
       # take out the hash
@@ -41,14 +70,8 @@ stdenv.mkDerivation rec {
     sed '/wget nor curl/{n;d}' -i download
     ./download
 
-    # Fix svtools: hardcoded jpeg path
-    sed -i -e 's,^JPEG3RDLIB=.*,JPEG3RDLIB=${libjpeg}/lib/libjpeg.so,' solenv/inc/libs.mk
     # Fix sysui: wants to create a tar for root
     sed -i -e 's,--own.*root,,' sysui/desktop/slackware/makefile.mk
-    # Fix libtextcat: wants to set rpath to /usr/local/lib
-    sed -i -e 's,^CONFIGURE_FLAGS.*,& --prefix='$TMPDIR, libtextcat/makefile.mk
-    # Fix hunspell: the checks fail due to /bin/bash missing, and I find this fix easier
-    sed -i -e 's,make && make check,make,' hunspell/makefile.mk
     # Fix redland: wants to set rpath to /usr/local/lib
     sed -i -e 's,^CONFIGURE_FLAGS.*,& --prefix='$TMPDIR, redland/redland/makefile.mk \
       redland/raptor/makefile.mk redland/rasqal/makefile.mk
@@ -61,55 +84,46 @@ stdenv.mkDerivation rec {
     make
   '';
 
-  configureFlags = [
-    # Helpful, while testing the expression
-    # "--with-num-cpus=4"
+  # It installs only things to $out/lib/libreoffice
+  postInstall = ''
+    mkdir -p $out/bin
+    for a in sbase scalc sdraw smath swriter spadmin simpress soffice; do
+      ln -s $out/lib/libreoffice/program/$a $out/bin/$a
+    done
+  '';
 
+  configureFlags = [
     "--enable-verbose"
 
     # Without these, configure does not finish
-    "--disable-gnome-vfs"
-    "--disable-gstreamer"
-    "--disable-opengl"
     "--without-junit"
     "--without-system-mythes"
 
     # Without this, it wants to download
-    "--with-cairo"
+    "--with-system-cairo"
     "--with-system-libs"
-    "--with-system-python"
+    "--enable-python=system"
     "--with-system-boost"
     "--with-system-db"
 
     # I imagine this helps. Copied from go-oo.
     "--disable-epm"
-    "--disable-fontooo"
-    "--disable-gnome-vfs"
-    "--disable-gnome-vfs"
     "--disable-mathmldtd"
     "--disable-mozilla"
     "--disable-odk"
-    "--disable-pasf"
     "--disable-dbus"
     "--disable-kde"
     "--disable-kde4"
-    "--disable-mono"
+    "--disable-postgresql-sdbc"
     "--with-package-format=native"
     "--with-jdk-home=${jdk}"
     "--with-ant-home=${ant}"
     "--without-afms"
-    "--without-dict"
     "--without-fonts"
     "--without-myspell-dicts"
-    "--without-nas"
     "--without-ppds"
-    "--without-system-agg"
     "--without-system-beanshell"
     "--without-system-hsqldb"
-    "--without-system-xalan"
-    "--without-system-xerces"
-    "--without-system-xml-apis"
-    "--without-system-xt"
     "--without-system-jars"
     "--without-system-hunspell"
     "--without-system-altlinuxhyph"
@@ -119,15 +133,20 @@ stdenv.mkDerivation rec {
     "--without-system-libwps"
     "--without-system-libwpg"
     "--without-system-redland"
+    "--without-system-libvisio"
+    "--without-system-libcmis"
+    "--without-system-nss"
+    "--without-system-sampleicc"
+    "--without-system-libexttextcat"
   ];
 
   buildInputs = [
     pam python tcsh libxslt perl ArchiveZip CompressZlib zlib 
     libjpeg expat pkgconfig freetype libwpd libxml2 db4 sablotron curl 
     libXaw fontconfig libsndfile neon bison flex zip unzip gtk libmspack 
-    getopt file jdk cairo which icu boost libXext libX11 libXtst libXi
-    cups libXinerama openssl gperf GConf ORBit2
-    ant autoconf openldap postgresql cppunit
+    getopt file jdk cairo which icu boost libXext libX11 libXtst libXi mesa
+    cups libXinerama openssl gperf GConf ORBit2 gnome_vfs gstreamer gst_plugins_base
+    ant autoconf openldap cppunit poppler librsvg automake
   ];
 
   meta = {
diff --git a/pkgs/applications/taxes/aangifte-2011/default.nix b/pkgs/applications/taxes/aangifte-2011/default.nix
new file mode 100644
index 000000000000..0bffad95d50b
--- /dev/null
+++ b/pkgs/applications/taxes/aangifte-2011/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, makeWrapper, xdg_utils, libX11, libXext, libSM }:
+
+stdenv.mkDerivation {
+  name = "aangifte2011-1";
+  
+  src = fetchurl {
+    url = http://download.belastingdienst.nl/belastingdienst/apps/linux/ib2011_linux.tar.gz;
+    sha256 = "0br9cfy3ibykzbhc1mkm7plxrs251vakpd5gai0m13bwgc04jrd2";
+  };
+
+  dontStrip = true;
+  dontPatchELF = true;
+
+  buildInputs = [ makeWrapper ];
+
+  buildPhase =
+    ''
+      for i in bin/*; do
+          patchelf \
+              --set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \
+              --set-rpath ${stdenv.lib.makeLibraryPath [ libX11 libXext libSM ]}:$(cat $NIX_GCC/nix-support/orig-gcc)/lib \
+              $i
+      done
+    '';
+
+  installPhase =
+    ''
+      mkdir -p $out
+      cp -prvd * $out/
+      wrapProgram $out/bin/ib2011ux --prefix PATH : ${xdg_utils}/bin
+    '';
+
+  meta = {
+    description = "Elektronische aangifte IB 2011 (Dutch Tax Return Program)";
+    url = http://www.belastingdienst.nl/particulier/aangifte2009/download/;
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
index 9a2cb7f71f77..80307135e9aa 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
@@ -4,14 +4,14 @@
 }:
 
 let
-  version = "3.20120230";
+  version = "3.20120309";
 in
 stdenv.mkDerivation {
   name = "git-annex-${version}";
 
   src = fetchurl {
     url = "http://ftp.de.debian.org/debian/pool/main/g/git-annex/git-annex_${version}.tar.gz";
-    sha256 = "2406fd1405bcdc30cb57ba0455919b5bad2be64bcfe6b6f921cd6ea1797a66fa";
+    sha256 = "54b2d6a9660a700cbe914e8613c1a4bc265f912cf157be774e2b5ea5775a4502";
   };
 
   buildInputs = [
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
   preConfigure = ''
     makeFlagsArray=( PREFIX=$out )
     sed -i -e 's|#!/usr/bin/perl|#!${perl}/bin/perl|' mdwn2man
-    sed -i -e 's|"cp |"${coreutils}/bin/cp |' -e 's|"rm -f |"${coreutils}/bin/rm -f |' -e 's|, test_addurl||' test.hs
+    sed -i -e 's|"cp |"${coreutils}/bin/cp |' -e 's|"rm -f |"${coreutils}/bin/rm -f |' test.hs
   '';
 
   meta = {
diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix
index 6e0f65d4caa9..30b15f833d9f 100644
--- a/pkgs/applications/version-management/subversion/default.nix
+++ b/pkgs/applications/version-management/subversion/default.nix
@@ -21,13 +21,13 @@ assert compressionSupport -> neon.compressionSupport;
 
 stdenv.mkDerivation rec {
 
-  version = "1.7.3";
+  version = "1.7.4";
 
   name = "subversion-${version}";
 
   src = fetchurl {
     url = "mirror://apache/subversion//${name}.tar.bz2";
-    sha1 = "624d4070361c0e8d7cf4f5c667629e72459b122d";
+    sha1 = "57a3cd351c1dbedddd020e7a1952df6cd2674527";
   };
 
   buildInputs = [ zlib apr aprutil sqlite ]
diff --git a/pkgs/applications/video/cinelerra/default.nix b/pkgs/applications/video/cinelerra/default.nix
index 83736d039327..98ba7a8e137e 100644
--- a/pkgs/applications/video/cinelerra/default.nix
+++ b/pkgs/applications/video/cinelerra/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchgit, sourceFromHead, autoconf, automake, libtool
 , pkgconfig, faad2, faac, a52dec, alsaLib, fftw, lame, libavc1394
 , libiec61883, libraw1394, libsndfile, libvorbis, libogg, libjpeg
-, libtiff, freetype, mjpegtools, x264, gettext, openexr, esound
+, libtiff, freetype, mjpegtools, x264, gettext, openexr
 , libXext, libXxf86vm, libXv, libXi, libX11, xextproto, libtheora, libpng
 , libdv, libuuid, file, nasm, perl }:
         
@@ -33,7 +33,7 @@ stdenv.mkDerivation {
       faad2 faac
       a52dec alsaLib   fftw lame libavc1394 libiec61883
       libraw1394 libsndfile libvorbis libogg libjpeg libtiff freetype
-      mjpegtools x264 gettext openexr esound 
+      mjpegtools x264 gettext openexr
       libXext libXxf86vm libXv libXi libX11 xextproto
       libtheora libpng libdv libuuid
       nasm
diff --git a/pkgs/applications/video/gnash/default.nix b/pkgs/applications/video/gnash/default.nix
index 5e6d1d8f942a..f8415bbe22a4 100644
--- a/pkgs/applications/video/gnash/default.nix
+++ b/pkgs/applications/video/gnash/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl
-, SDL, SDL_mixer, gstreamer, gstPluginsBase, gstPluginsGood
-, gstFfmpeg, speex
+, SDL, SDL_mixer, gstreamer, gst_plugins_base, gst_plugins_good
+, gst_ffmpeg, speex
 , libogg, libxml2, libjpeg, mesa, libpng, libungif, libtool
 , boost, freetype, agg, dbus, curl, pkgconfig, gettext
 , glib, gtk, gtkglext, x11, ming, dejagnu, python, perl
@@ -44,8 +44,8 @@ stdenv.mkDerivation rec {
 
   # XXX: KDE is supported as well so we could make it available optionally.
   buildInputs = [
-    gettext x11 SDL SDL_mixer gstreamer gstPluginsBase gstPluginsGood
-    gstFfmpeg speex libtool
+    gettext x11 SDL SDL_mixer gstreamer gst_plugins_base gst_plugins_good
+    gst_ffmpeg speex libtool
     libogg libxml2 libjpeg mesa libpng libungif boost freetype agg
     dbus curl pkgconfig glib gtk gtkglext
     xulrunner
@@ -63,10 +63,10 @@ stdenv.mkDerivation rec {
          --enable-media=gst                                     \
          --enable-gui=gtk"
 
-       # In `libmedia', Gnash compiles with "-I$gstPluginsBase/include",
-       # whereas it really needs "-I$gstPluginsBase/include/gstreamer-0.10".
+       # In `libmedia', Gnash compiles with "-I$gst_plugins_base/include",
+       # whereas it really needs "-I$gst_plugins_base/include/gstreamer-0.10".
        # Work around this using GCC's $CPATH variable.
-       export CPATH="${gstPluginsBase}/include/gstreamer-0.10:${gstPluginsGood}/include/gstreamer-0.10"
+       export CPATH="${gst_plugins_base}/include/gstreamer-0.10:${gst_plugins_good}/include/gstreamer-0.10"
        echo "\$CPATH set to \`$CPATH'"
 
        echo "\$GST_PLUGIN_PATH set to \`$GST_PLUGIN_PATH'"
@@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
     do
       wrapProgram "$prog" --prefix                                            \
         GST_PLUGIN_PATH ":"                                                     \
-        "${gstPluginsBase}/lib/gstreamer-0.10:${gstPluginsGood}/lib/gstreamer-0.10:${gstFfmpeg}/lib/gstreamer-0.10"
+        "${gst_plugins_base}/lib/gstreamer-0.10:${gst_plugins_good}/lib/gstreamer-0.10:${gst_ffmpeg}/lib/gstreamer-0.10"
     done
   '';
 
diff --git a/pkgs/applications/video/tvtime/default.nix b/pkgs/applications/video/tvtime/default.nix
new file mode 100644
index 000000000000..eef6e9caf165
--- /dev/null
+++ b/pkgs/applications/video/tvtime/default.nix
@@ -0,0 +1,64 @@
+{stdenv, fetchurl, xlibs, libX11, libXtst, libSM, libXext, libXv, libXxf86vm, libXau, 
+   libXdmcp, zlib, libpng, libxml2, freetype, libICE, intltool, libXinerama, gettext, 
+   pkgconfig, kernel, file, libXi}:
+
+stdenv.mkDerivation rec {
+  name = "tvtime-1.0.2";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/tvtime/${name}.tar.gz";
+    sha256 = "aef2a4bab084df252428d66cabec61b4c63fab32cdfc0cc6599d82efd77f0523";
+  };
+
+  # many of these patches were copied from gentoo's portage team (maybe all?!)
+  patchPhase = ''
+    # to avoid this error message:
+    # ...-glibc-2.12.2/include/xlocale.h:43:20: note: previous declaration of 'locale_t' was here
+    patch -p1 < ${ ./tvtime-1.0.2-glibc-2.10.patch}
+
+    # to avoid this error message:
+    #  videodev2.h:19:46: fatal error: linux/compiler.h: No such file or directory
+    sed -i -e "s/videodev.h/linux\/videodev.h/" src/videoinput.c
+    sed -i -e "s/videodev2.h/linux\/videodev2.h/" src/videoinput.c
+
+    # to avoid this error message:
+    # 1 out of 2 hunks FAILED -- saving rejects to file src/Makefile.am.rej
+    patch -p1 < ${ ./tvtime-1.0.2-libsupc++.patch }
+
+    # to avoid this error message:
+    # ../plugins/greedyh.asm:21:6: error: extra qualification 'DScalerFilterGreedyH::' on member 'filterDScaler_SSE'
+    patch -p1 < ${ ./tvtime-1.0.2-gcc41.patch }
+
+    # compiles without this patch
+    patch -p1 < ${ ./tvtime-pic.patch }
+
+    # compiles without this patch
+    patch -p1 < ${ ./tvtime-1.0.2-autotools.patch }
+
+    # compiles without this patch
+    patch -p1 < ${ ./tvtime-1.0.2-xinerama.patch }
+
+    # libpng 1.5 patch (gentoo)
+    patch -p1 < ${ ./tvtime-libpng-1.5.patch }
+
+    # /usr/bin/file - ltmain.sh configure aclocal.m4
+    sed -i -e "s%/usr/bin/file%/nix/store/f92pyxmbi274q7fzrfnlc2xiy6d3cyi1-file-5.04/bi/file%g" ltmain.sh
+    sed -i -e "s%/usr/bin/file%/nix/store/f92pyxmbi274q7fzrfnlc2xiy6d3cyi1-file-5.04/bin/file%g" configure
+    sed -i -e "s%/usr/bin/file%/nix/store/f92pyxmbi274q7fzrfnlc2xiy6d3cyi1-file-5.04/bin/file%g" aclocal.m4
+  '';
+
+  configureFlags = '' 
+    --x-includes=${xlibs.libX11}/include 
+    --x-libraries=${xlibs.libX11}/lib
+  '';
+
+  buildInputs = [ libX11 libXtst libSM libXext libXv libXxf86vm libXau libXdmcp zlib libpng libxml2 freetype libICE intltool libXinerama gettext pkgconfig file libXi ];
+
+  meta = {
+    description = "High quality television application for use with video capture cards";
+    homepage = lhttp://tvtime.sourceforge.net/;
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = with stdenv.lib.maintainers; [qknight];
+    platforms = with stdenv.lib.platforms; linux;
+  };
+}
diff --git a/pkgs/applications/video/tvtime/tvtime-1.0.2+linux-headers-2.6.18.patch b/pkgs/applications/video/tvtime/tvtime-1.0.2+linux-headers-2.6.18.patch
new file mode 100644
index 000000000000..b1cfd49f1ba9
--- /dev/null
+++ b/pkgs/applications/video/tvtime/tvtime-1.0.2+linux-headers-2.6.18.patch
@@ -0,0 +1,15 @@
+Index: tvtime-1.0.2/src/videoinput.c
+===================================================================
+--- tvtime-1.0.2.orig/src/videoinput.c
++++ tvtime-1.0.2/src/videoinput.c
+@@ -35,8 +35,8 @@
+ #ifdef HAVE_CONFIG_H
+ # include "config.h"
+ #endif
+-#include "videodev.h"
+-#include "videodev2.h"
++#include <linux/videodev.h>
++#include <linux/videodev2.h>
+ #include "videoinput.h"
+ #include "mixer.h"
+ 
diff --git a/pkgs/applications/video/tvtime/tvtime-1.0.2-autotools.patch b/pkgs/applications/video/tvtime/tvtime-1.0.2-autotools.patch
new file mode 100644
index 000000000000..bf02ebefa529
--- /dev/null
+++ b/pkgs/applications/video/tvtime/tvtime-1.0.2-autotools.patch
@@ -0,0 +1,73 @@
+Index: tvtime-1.0.2/src/Makefile.am
+===================================================================
+--- tvtime-1.0.2.orig/src/Makefile.am
++++ tvtime-1.0.2/src/Makefile.am
+@@ -19,9 +19,6 @@ pkgsysconfdir = $(sysconfdir)/@PACKAGE@
+ tmpdir = /tmp
+ localedir = $(datadir)/locale
+ 
+-TTF_CFLAGS = `$(FREETYPE_CONFIG) --cflags`
+-TTF_LIBS = `$(FREETYPE_CONFIG) --libs`
+-
+ # Set the following if you want to specify an additional font directory
+ # FONT_CFLAGS = -DFONTDIR='/usr/share/fonts/truetype/freefont/'
+ 
+@@ -76,20 +73,20 @@ tvtime_SOURCES = $(COMMON_SRCS) $(OUTPUT
+ tvtime_CFLAGS = $(TTF_CFLAGS) $(PNG_CFLAGS) $(OPT_CFLAGS) \
+ 	$(PLUGIN_CFLAGS) $(X11_CFLAGS) $(XML2_FLAG) \
+ 	$(FONT_CFLAGS) $(AM_CFLAGS)
+-tvtime_LDFLAGS  = $(TTF_LIBS) $(ZLIB_LIBS) $(PNG_LIBS) \
++tvtime_LDADD  = $(TTF_LIBS) $(ZLIB_LIBS) $(PNG_LIBS) \
+ 	$(X11_LIBS) $(XML2_LIBS) -lm -lsupc++
+ 
+ tvtime_command_SOURCES = utils.h utils.c tvtimeconf.h tvtimeconf.c \
+ 	tvtime-command.c
+ tvtime_command_CFLAGS = $(OPT_CFLAGS) $(XML2_FLAG) $(AM_CFLAGS)
+-tvtime_command_LDFLAGS  = $(ZLIB_LIBS) $(XML2_LIBS)
++tvtime_command_LDADD  = $(ZLIB_LIBS) $(XML2_LIBS)
+ tvtime_configure_SOURCES = utils.h utils.c tvtimeconf.h tvtimeconf.c \
+ 	tvtime-configure.c
+ tvtime_configure_CFLAGS = $(OPT_CFLAGS) $(XML2_FLAG) $(AM_CFLAGS)
+-tvtime_configure_LDFLAGS  = $(ZLIB_LIBS) $(XML2_LIBS)
++tvtime_configure_LDADD  = $(ZLIB_LIBS) $(XML2_LIBS)
+ tvtime_scanner_SOURCES = utils.h utils.c videoinput.h videoinput.c \
+ 	tvtimeconf.h tvtimeconf.c station.h station.c tvtime-scanner.c \
+ 	mixer.h mixer.c
+ tvtime_scanner_CFLAGS = $(OPT_CFLAGS) $(XML2_FLAG) $(AM_CFLAGS)
+-tvtime_scanner_LDFLAGS  = $(ZLIB_LIBS) $(XML2_LIBS)
++tvtime_scanner_LDADD  = $(ZLIB_LIBS) $(XML2_LIBS)
+ 
+Index: tvtime-1.0.2/configure.ac
+===================================================================
+--- tvtime-1.0.2.orig/configure.ac
++++ tvtime-1.0.2/configure.ac
+@@ -10,6 +10,7 @@ if test x"$host_alias" = x""; then host_
+ 
+ # Check for compilers.
+ AC_PROG_CC
++AM_PROG_CC_C_O
+ AC_CHECK_PROG(found_cc, "$CC", yes, no)
+ test "x$found_cc" = "xyes" || exit 1
+ 
+@@ -17,9 +18,6 @@ AC_PROG_CXX
+ AC_CHECK_PROG(found_cxx, "$CXX", yes, no)
+ test "x$found_cxx" = "xyes" || exit 1
+ 
+-# Check for libtool.
+-AC_PROG_LIBTOOL
+-
+ # Checks for header files.
+ AC_HEADER_STDC
+ AC_CHECK_HEADERS([ctype.h dirent.h errno.h fcntl.h getopt.h langinfo.h math.h netinet/in.h pwd.h signal.h stdint.h stdio.h stdlib.h string.h sys/ioctl.h sys/mman.h sys/resource.h sys/stat.h sys/time.h sys/wait.h sys/types.h unistd.h wordexp.h locale.h])
+@@ -65,10 +63,7 @@ dnl ------------------------------------
+ dnl freetype
+ dnl ---------------------------------------------
+ dnl Test for freetype
+-AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no)
+-if test "$FREETYPE_CONFIG" = "no" ; then
+-  AC_MSG_ERROR(freetype2 needed and freetype-config not found)
+-fi
++PKG_CHECK_MODULES([TTF], [freetype2])
+ 
+ dnl ---------------------------------------------
+ dnl libxml2
diff --git a/pkgs/applications/video/tvtime/tvtime-1.0.2-gcc41.patch b/pkgs/applications/video/tvtime/tvtime-1.0.2-gcc41.patch
new file mode 100644
index 000000000000..58e9bb204e10
--- /dev/null
+++ b/pkgs/applications/video/tvtime/tvtime-1.0.2-gcc41.patch
@@ -0,0 +1,57 @@
+diff -Naur tvtime-1.0.1/plugins/greedyh.asm tvtime-1.0.1-gcc41/plugins/greedyh.asm
+--- tvtime-1.0.1/plugins/greedyh.asm	2005-08-14 18:16:43.000000000 +0200
++++ tvtime-1.0.1-gcc41/plugins/greedyh.asm	2005-11-28 17:53:09.210774544 +0100
+@@ -18,7 +18,7 @@
+ 
+ #include "x86-64_macros.inc"
+ 
+-void DScalerFilterGreedyH::FUNCT_NAME(TDeinterlaceInfo* pInfo)
++void FUNCT_NAME(TDeinterlaceInfo* pInfo)
+ {
+     int64_t i;
+     bool InfoIsOdd = (pInfo->PictureHistory[0]->Flags & PICTURE_INTERLACED_ODD) ? 1 : 0;
+diff -Naur tvtime-1.0.1/plugins/tomsmocomp/TomsMoCompAll2.inc tvtime-1.0.1-gcc41/plugins/tomsmocomp/TomsMoCompAll2.inc
+--- tvtime-1.0.1/plugins/tomsmocomp/TomsMoCompAll2.inc	2004-10-20 17:31:05.000000000 +0200
++++ tvtime-1.0.1-gcc41/plugins/tomsmocomp/TomsMoCompAll2.inc	2005-11-28 17:53:33.251119856 +0100
+@@ -5,9 +5,9 @@
+ #endif
+ 
+ #ifdef USE_STRANGE_BOB
+-#define SEARCH_EFFORT_FUNC(n) DScalerFilterTomsMoComp::SEFUNC(n##_SB)
++#define SEARCH_EFFORT_FUNC(n) SEFUNC(n##_SB)
+ #else
+-#define SEARCH_EFFORT_FUNC(n) DScalerFilterTomsMoComp::SEFUNC(n)
++#define SEARCH_EFFORT_FUNC(n) SEFUNC(n)
+ #endif
+ 
+ int SEARCH_EFFORT_FUNC(0)		// we don't try at all ;-)
+diff -Naur tvtime-1.0.1/plugins/tomsmocomp.cpp tvtime-1.0.1-gcc41/plugins/tomsmocomp.cpp
+--- tvtime-1.0.1/plugins/tomsmocomp.cpp	2004-10-20 19:38:04.000000000 +0200
++++ tvtime-1.0.1-gcc41/plugins/tomsmocomp.cpp	2005-11-28 17:52:53.862107896 +0100
+@@ -31,7 +31,7 @@
+ 
+ #define IS_MMX
+ #define SSE_TYPE MMX
+-#define FUNCT_NAME DScalerFilterTomsMoComp::filterDScaler_MMX
++#define FUNCT_NAME filterDScaler_MMX
+ #include "tomsmocomp/TomsMoCompAll.inc"
+ #undef  IS_MMX
+ #undef  SSE_TYPE
+@@ -39,7 +39,7 @@
+ 
+ #define IS_3DNOW
+ #define SSE_TYPE 3DNOW
+-#define FUNCT_NAME DScalerFilterTomsMoComp::filterDScaler_3DNOW
++#define FUNCT_NAME filterDScaler_3DNOW
+ #include "tomsmocomp/TomsMoCompAll.inc"
+ #undef  IS_3DNOW
+ #undef  SSE_TYPE
+@@ -47,7 +47,7 @@
+ 
+ #define IS_SSE
+ #define SSE_TYPE SSE
+-#define FUNCT_NAME DScalerFilterTomsMoComp::filterDScaler_SSE
++#define FUNCT_NAME filterDScaler_SSE
+ #include "tomsmocomp/TomsMoCompAll.inc"
+ #undef  IS_SSE
+ #undef  SSE_TYPE
diff --git a/pkgs/applications/video/tvtime/tvtime-1.0.2-glibc-2.10.patch b/pkgs/applications/video/tvtime/tvtime-1.0.2-glibc-2.10.patch
new file mode 100644
index 000000000000..c3d8ad87d733
--- /dev/null
+++ b/pkgs/applications/video/tvtime/tvtime-1.0.2-glibc-2.10.patch
@@ -0,0 +1,24 @@
+diff -Naur tvtime-1.0.2.org/src/xmltv.c tvtime-1.0.2/src/xmltv.c
+--- tvtime-1.0.2.org/src/xmltv.c	2009-07-02 21:48:49.426191088 +0200
++++ tvtime-1.0.2/src/xmltv.c	2009-07-02 21:50:20.842066085 +0200
+@@ -118,9 +118,9 @@
+ typedef struct {
+     const char *code;
+     const char *name;
+-} locale_t;
++} tvtime_locale_t;
+ 
+-static locale_t locale_table[] = {
++static tvtime_locale_t locale_table[] = {
+     {"AA", "Afar"},           {"AB", "Abkhazian"},      {"AF", "Afrikaans"},
+     {"AM", "Amharic"},        {"AR", "Arabic"},         {"AS", "Assamese"},
+     {"AY", "Aymara"},         {"AZ", "Azerbaijani"},    {"BA", "Bashkir"},
+@@ -168,7 +168,7 @@
+     {"XH", "Xhosa"},          {"YO", "Yoruba"},         {"ZH", "Chinese"},
+     {"ZU", "Zulu"} };
+ 
+-const int num_locales = sizeof( locale_table ) / sizeof( locale_t );
++const int num_locales = sizeof( locale_table ) / sizeof( tvtime_locale_t );
+ 
+ /**
+  * Timezone parsing code based loosely on the algorithm in
diff --git a/pkgs/applications/video/tvtime/tvtime-1.0.2-libsupc++.patch b/pkgs/applications/video/tvtime/tvtime-1.0.2-libsupc++.patch
new file mode 100644
index 000000000000..cc76d2decc62
--- /dev/null
+++ b/pkgs/applications/video/tvtime/tvtime-1.0.2-libsupc++.patch
@@ -0,0 +1,16 @@
+Link to libsupc++ instead of bringing in libstdc++ just because tomsocomp
+is written in C++. It does not use STL so it needs not the whole standard
+library.
+Index: tvtime-1.0.2/src/Makefile.am
+===================================================================
+--- tvtime-1.0.2.orig/src/Makefile.am
++++ tvtime-1.0.2/src/Makefile.am
+@@ -77,7 +77,7 @@ tvtime_CFLAGS = $(TTF_CFLAGS) $(PNG_CFLA
+ 	$(PLUGIN_CFLAGS) $(X11_CFLAGS) $(XML2_FLAG) \
+ 	$(FONT_CFLAGS) $(AM_CFLAGS)
+ tvtime_LDFLAGS  = $(TTF_LIBS) $(ZLIB_LIBS) $(PNG_LIBS) \
+-	$(X11_LIBS) $(XML2_LIBS) -lm -lstdc++
++	$(X11_LIBS) $(XML2_LIBS) -lm -lsupc++
+ 
+ tvtime_command_SOURCES = utils.h utils.c tvtimeconf.h tvtimeconf.c \
+ 	tvtime-command.c
diff --git a/pkgs/applications/video/tvtime/tvtime-1.0.2-xinerama.patch b/pkgs/applications/video/tvtime/tvtime-1.0.2-xinerama.patch
new file mode 100644
index 000000000000..0964d055768d
--- /dev/null
+++ b/pkgs/applications/video/tvtime/tvtime-1.0.2-xinerama.patch
@@ -0,0 +1,32 @@
+Index: tvtime-1.0.2/configure.ac
+===================================================================
+--- tvtime-1.0.2.orig/configure.ac
++++ tvtime-1.0.2/configure.ac
+@@ -99,6 +99,8 @@ dnl ------------------------------------
+ dnl check for X11, Xv and XF86VidModeExtension
+ dnl ---------------------------------------------
+ AC_PATH_XTRA
++AC_ARG_WITH([xinerama],
++    [AS_HELP_STRING([--without-xinerama], [Disable Xinerama extension support (default: check)])])
+ if test x"$no_x" != x"yes"; then
+     dnl check for Xshm
+     AC_CHECK_LIB([Xext],[XShmCreateImage],
+@@ -112,11 +114,13 @@ if test x"$no_x" != x"yes"; then
+ 	    X11_LIBS="$X11_LIBS -lXv"],,
+ 	    [$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS -lXext])
+ 
+-	dnl check for Xinerama
+-	AC_CHECK_LIB([Xinerama],[XineramaQueryScreens],
+-	    [AC_DEFINE([HAVE_XINERAMA],,[Xinerama support])
+-	    X11_LIBS="$X11_LIBS -lXinerama"],,
+-	    [$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS -lXext])
++	if test "x$with_xinerama" != "xno"; then
++		dnl check for Xinerama
++		AC_CHECK_LIB([Xinerama],[XineramaQueryScreens],
++		    [AC_DEFINE([HAVE_XINERAMA],,[Xinerama support])
++		    X11_LIBS="$X11_LIBS -lXinerama"],,
++		    [$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS -lXext])
++	fi
+ 
+ 	dnl check for XTest
+         AC_CHECK_LIB([Xtst],[XTestFakeKeyEvent],
diff --git a/pkgs/applications/video/tvtime/tvtime-libpng-1.5.patch b/pkgs/applications/video/tvtime/tvtime-libpng-1.5.patch
new file mode 100644
index 000000000000..bfa22ed98d02
--- /dev/null
+++ b/pkgs/applications/video/tvtime/tvtime-libpng-1.5.patch
@@ -0,0 +1,14 @@
+Include zlib.h which is no longer implicitly included with libpng-1.5
+Bug 369663
+
+diff -ru tvtime-111b28cca42d.orig/src/pngoutput.c tvtime-111b28cca42d/src/pngoutput.c
+--- tvtime-111b28cca42d.orig/src/pngoutput.c	2011-02-01 02:35:26.000000000 +0100
++++ tvtime-111b28cca42d/src/pngoutput.c	2011-06-02 13:36:55.965999463 +0200
+@@ -18,6 +18,7 @@
+ 
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <zlib.h>
+ #include <png.h>
+ #include "pngoutput.h"
+ 
diff --git a/pkgs/applications/video/tvtime/tvtime-pic.patch b/pkgs/applications/video/tvtime/tvtime-pic.patch
new file mode 100644
index 000000000000..00b040e60af9
--- /dev/null
+++ b/pkgs/applications/video/tvtime/tvtime-pic.patch
@@ -0,0 +1,11 @@
+--- tvtime/src/cpu_accel.c
++++ tvtime/src/cpu_accel.c
+@@ -35,7 +35,7 @@
+     int AMD;
+     uint32_t caps;
+ 
+-#ifndef PIC
++#if !defined(__PIC__) || defined(__x86_64__)
+ #define cpuid(op,eax,ebx,ecx,edx)	\
+     __asm__ ("cpuid"			\
+ 	     : "=a" (eax),		\
diff --git a/pkgs/applications/video/zapping/0.10.nix b/pkgs/applications/video/zapping/0.10.nix
deleted file mode 100644
index 067917abe77b..000000000000
--- a/pkgs/applications/video/zapping/0.10.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ teletextSupport ? true
-, jpegSupport ? true
-, pngSupport ? true
-, recordingSupport ? true
-# !!! libXext shouldn't be necessary (it's in x11); but the builder needs it.
-, stdenv, fetchurl, pkgconfig, perl, python, x11
-, libXv, libXmu, libXext, libgnomeui
-, libglade, scrollkeeper, esound, gettext, perlXMLParser
-, zvbi ? null, libjpeg ? null, libpng ? null, rte ? null }:
-
-assert teletextSupport -> zvbi != null && zvbi.pngSupport
-  /* !!! && pngSupport && zvbi.libpng == libpng */;
-
-assert jpegSupport -> libjpeg != null;
-assert pngSupport -> libpng != null;
-
-assert recordingSupport -> rte != null;
-
-stdenv.mkDerivation {
-  name = "zapping-0.10cvs6";
-
-  builder = ./builder.sh;
-  src = fetchurl {
-    url = http://nixos.org/tarballs/zapping-0.10cvs6.tar.bz2;
-    md5 = "6aa7614ac3fd5d39c89c2198598ad27b";
-  };
-
-  inherit teletextSupport jpegSupport pngSupport libXext;
-
-  buildInputs = [
-    pkgconfig perl perlXMLParser python x11 libXv libXmu libgnomeui
-    libglade scrollkeeper esound gettext
-    (if teletextSupport then zvbi else null)
-    (if jpegSupport then libjpeg else null)
-    (if pngSupport then libpng else null)
-    (if recordingSupport then rte else null)
-  ];
-}
diff --git a/pkgs/applications/video/zapping/builder.sh b/pkgs/applications/video/zapping/builder.sh
deleted file mode 100644
index 51387e5b8a71..000000000000
--- a/pkgs/applications/video/zapping/builder.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-source $stdenv/setup
-
-# !!! hack
-NIX_LDFLAGS="$NIX_LDFLAGS -rpath $libXext/lib"
-
-# !!! hack - `make install' tries to setuid to root
-installFlags="ZSFB_OWNER=`id -u` ZSFB_GROUP=`id -g`"
-
-genericBuild
diff --git a/pkgs/applications/video/zapping/default.nix b/pkgs/applications/video/zapping/default.nix
deleted file mode 100644
index 29fcc31e8b9a..000000000000
--- a/pkgs/applications/video/zapping/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ teletextSupport ? true
-, jpegSupport ? true
-, pngSupport ? true
-, recordingSupport ? true
-# !!! libXext shouldn't be necessary (it's in x11); but the builder needs it.
-, stdenv, fetchurl, pkgconfig, perl, python, x11
-, libXv, libXmu, libXext, libgnomeui
-, libglade, scrollkeeper, esound, gettext, perlXMLParser
-, zvbi ? null, libjpeg ? null, libpng ? null, rte ? null }:
-
-assert teletextSupport -> zvbi != null && zvbi.pngSupport
-  /* !!! && pngSupport && zvbi.libpng == libpng */;
-
-assert jpegSupport -> libjpeg != null;
-assert pngSupport -> libpng != null;
-
-assert recordingSupport -> rte != null;
-
-stdenv.mkDerivation {
-  name = "zapping-0.9.6";
-
-  builder = ./builder.sh;
-
-  src = fetchurl {
-    url = mirror://sourceforge/zapping/zapping-0.9.6.tar.bz2;
-    md5 = "8306775c6a11de4d72345b5eee970ea6";
-  };
-
-  inherit teletextSupport jpegSupport pngSupport libXext;
-
-  buildInputs = [
-    pkgconfig perl perlXMLParser python x11 libXv libXmu libgnomeui
-    libglade scrollkeeper esound gettext
-    (if teletextSupport then zvbi else null)
-    (if jpegSupport then libjpeg else null)
-    (if pngSupport then libpng else null)
-    (if recordingSupport then rte else null)
-  ];
-}
diff --git a/pkgs/applications/virtualization/OVMF/default.nix b/pkgs/applications/virtualization/OVMF/default.nix
new file mode 100644
index 000000000000..7d101aac790b
--- /dev/null
+++ b/pkgs/applications/virtualization/OVMF/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, edk2 }:
+
+let
+
+  targetArch = if stdenv.isi686 then
+    "Ia32"
+  else if stdenv.isx86_64 then
+    "X64"
+  else
+    throw "Unsupported architecture";
+
+in
+
+stdenv.mkDerivation (edk2.setup "OvmfPkg/OvmfPkg${targetArch}.dsc" {
+  name = "OVMF-2012-03-13";
+
+  unpackPhase = ''
+    for file in \
+      "${edk2.src}"/{OvmfPkg,UefiCpuPkg,MdeModulePkg,IntelFrameworkModulePkg,PcAtChipsetPkg,FatBinPkg,EdkShellBinPkg,MdePkg,ShellPkg,OptionRomPkg,IntelFrameworkPkg};
+    do
+      ln -sv "$file" .
+    done
+  '';
+
+  meta = {
+    description = "Sample UEFI firmware for QEMU and KVM";
+    homepage = http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=OVMF;
+    license = "BSD";
+    maintainers = [ stdenv.lib.maintainers.shlevy ];
+    platforms = ["x86_64-linux" "i686-linux"];
+  };
+})
diff --git a/pkgs/build-support/gcc-cross-wrapper/default.nix b/pkgs/build-support/gcc-cross-wrapper/default.nix
index ab879c1841fc..be071607d8bd 100644
--- a/pkgs/build-support/gcc-cross-wrapper/default.nix
+++ b/pkgs/build-support/gcc-cross-wrapper/default.nix
@@ -20,13 +20,20 @@ let
     phases = [ "installPhase" ];
     installPhase = ''
       echo $out
-      mkdir -p $out
-      cp -Rd ${gcc}/${cross.config}/lib $out/lib
-      chmod -R +w $out/lib
-      for a in $out/lib/*.la; do
-          sed -i -e s,${gcc}/${cross.config}/lib,$out/lib,g $a
-      done
-      rm -f $out/lib/*.py
+      mkdir -p "$out"
+
+      if [ -d "${gcc}/${cross.config}/lib" ]
+      then
+          cp -Rd "${gcc}/${cross.config}/lib" "$out/lib"
+          chmod -R +w "$out/lib"
+          for a in "$out/lib/"*.la; do
+              sed -i -e "s,${gcc}/${cross.config}/lib,$out/lib,g" $a
+          done
+          rm -f "$out/lib/"*.py
+      else
+          # The MinGW cross-compiler falls into this category.
+          mkdir "$out/lib"
+      fi
     '';
   };
 in
diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix
index 3ee153953bc1..5c3d66595afe 100644
--- a/pkgs/build-support/vm/default.nix
+++ b/pkgs/build-support/vm/default.nix
@@ -403,6 +403,7 @@ rec {
 
     
   qemuCommandGeneric = ''
+    PATH="${samba}/sbin:$PATH" \
     ${kvm}/bin/qemu-system-x86_64 \
       -nographic -no-reboot \
       -smb $(pwd) -hda $diskImage \
@@ -428,7 +429,6 @@ rec {
      - Power-off or reboot the machine.
   */
   runInGenericVM = drv: lib.overrideDerivation drv (attrs: {
-    system = "i686-linux";
     requiredSystemFeatures = [ "kvm" ];
     builder = "${bash}/bin/sh";
     args = ["-e" (vmRunCommand qemuCommandGeneric)];
@@ -1248,22 +1248,22 @@ rec {
     };
 
     debian50i386 = {
-      name = "debian-5.0.9-lenny-i386";
-      fullName = "Debian 5.0.9 Lenny (i386)";
+      name = "debian-5.0.10-lenny-i386";
+      fullName = "Debian 5.0.10 Lenny (i386)";
       packagesList = fetchurl {
         url = mirror://debian/dists/lenny/main/binary-i386/Packages.bz2;
-        sha256 = "07f54775e2b54e201c7020cd65212fbb44288b1071a73f630f58b68b2d08b2af";
+        sha256 = "fb390cf043a5b6bac50879ce1c0827882abdb560050313a6a326a03a4fc761d6";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
     };
 
     debian50x86_64 = {
-      name = "debian-5.0.9-lenny-amd64";
-      fullName = "Debian 5.0.9 Lenny (amd64)";
+      name = "debian-5.0.10-lenny-amd64";
+      fullName = "Debian 5.0.10 Lenny (amd64)";
       packagesList = fetchurl {
         url = mirror://debian/dists/lenny/main/binary-amd64/Packages.bz2;
-        sha256 = "1jqb3rr5q5y7yyhrymwa51djsydm92zbbmg4vbif65i7sp9ggky0";
+        sha256 = "1y4bb3n770fgwsrw8qiwsgf17k0ws2d6jmcfvqv07lj77dyj53wc";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
diff --git a/pkgs/desktops/gnome-2/default.nix b/pkgs/desktops/gnome-2/default.nix
index 334bd5e7fc2c..ac99c24e308f 100644
--- a/pkgs/desktops/gnome-2/default.nix
+++ b/pkgs/desktops/gnome-2/default.nix
@@ -11,10 +11,6 @@
 
 #### PLATFORM
 
-  audiofile = callPackage ./platform/audiofile { };
-
-  esound = callPackage ./platform/esound { };
-
   libIDL = callPackage ./platform/libIDL {
     gettext = if stdenv.isDarwin then gettext else null;
   };
diff --git a/pkgs/desktops/gnome-2/platform/audiofile/default.nix b/pkgs/desktops/gnome-2/platform/audiofile/default.nix
deleted file mode 100644
index 74007218347d..000000000000
--- a/pkgs/desktops/gnome-2/platform/audiofile/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{stdenv, fetchurl, alsaLib}:
-
-stdenv.mkDerivation {
-  name = "audiofile-0.3.2";
-
-  src = fetchurl {
-    url = mirror://gnome/sources/audiofile/0.3/audiofile-0.3.2.tar.xz;
-    sha256 = "185j69j6b0vp6h6bb4j4ipvcyysxf63ghxnvdhh8kbc7ixm71hgs";
-  };
-
-  buildInputs = [ alsaLib ];
-}
diff --git a/pkgs/desktops/gnome-2/platform/esound/default.nix b/pkgs/desktops/gnome-2/platform/esound/default.nix
deleted file mode 100644
index e273251bfa58..000000000000
--- a/pkgs/desktops/gnome-2/platform/esound/default.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{stdenv, fetchurl, pkgconfig, alsaLib, audiofile}:
-
-stdenv.mkDerivation {
-  name = "esound-0.2.41";
-  
-  src = fetchurl {
-    url = mirror://gnome/sources/esound/0.2/esound-0.2.41.tar.bz2;
-    sha256 = "04a9ldy7hsvry1xmfhzg5is2dabsp8m6a82vkai64d2blqlxvday";
-  };
-  
-  buildInputs = [ pkgconfig ];
-  propagatedBuildInputs = [ alsaLib audiofile ];
-}
diff --git a/pkgs/desktops/kde-4.8/kde-runtime.nix b/pkgs/desktops/kde-4.8/kde-runtime.nix
index 9b25e77b0835..6f2e4cf0e65e 100644
--- a/pkgs/desktops/kde-4.8/kde-runtime.nix
+++ b/pkgs/desktops/kde-4.8/kde-runtime.nix
@@ -1,5 +1,5 @@
 { kde, kdelibs, shared_desktop_ontologies, bzip2, libssh, exiv2, attica
-, libcanberra, virtuoso, samba, ntrack, libjpeg
+, libcanberra, virtuoso, samba, ntrack, libjpeg, fetchurl
 }:
 
 kde {
@@ -10,6 +10,13 @@ kde {
 
   passthru.propagatedUserEnvPackages = [ virtuoso ];
 
+  patches = map fetchurl [{
+    # See https://bugs.kde.org/show_bug.cgi?id=289932
+    url = "http://bugsfiles.kde.org/attachment.cgi?id=69386";
+    name = "resourceidentifier.patch";
+    sha256 = "1fpjg1yc191i6ga9sz6r530q9zwh790m3qahsp0i6kzajwpi7jwz";
+  }];
+
   meta = {
     license = "LGPL";
   };
diff --git a/pkgs/desktops/kde-4.8/kdebindings/smokekde.nix b/pkgs/desktops/kde-4.8/kdebindings/smokekde.nix
deleted file mode 100644
index c49a77a48ed6..000000000000
--- a/pkgs/desktops/kde-4.8/kdebindings/smokekde.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kde, kdelibs, smokeqt }:
-
-kde {
-  propagatedBuildInputs = [ kdelibs smokeqt ];
-
-  meta = {
-    description = "C++ parser used to generate language bindings for Qt/KDE";
-    license = "GPLv2";
-  };
-}
diff --git a/pkgs/desktops/kde-4.8/kdepim-runtime.nix b/pkgs/desktops/kde-4.8/kdepim-runtime.nix
index f9280aad23ac..ef637f3f075b 100644
--- a/pkgs/desktops/kde-4.8/kdepim-runtime.nix
+++ b/pkgs/desktops/kde-4.8/kdepim-runtime.nix
@@ -5,13 +5,6 @@ kde {
   buildInputs = [ kdepimlibs akonadi boost shared_desktop_ontologies libxml2
     libxslt ];
 
-  patches = map fetchurl [ {
-    # See https://bugs.kde.org/show_bug.cgi?id=289932
-    url = "http://bugsfiles.kde.org/attachment.cgi?id=68763";
-    name = "delays-in-nepomuk-indexing.patch";
-    sha256 = "0j3ndqwvi4bg789jb0wqsh2zpwi1gwdyng9gdmng189dx409jf85";
-  } ];
-
   meta = {
     description = "KDE PIM runtime";
     license = "GPL";
diff --git a/pkgs/desktops/kde-4.8/kipi-plugins.nix b/pkgs/desktops/kde-4.8/kipi-plugins.nix
deleted file mode 100644
index ea237a5d718e..000000000000
--- a/pkgs/desktops/kde-4.8/kipi-plugins.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv, fetchurl, cmake, kdelibs, qt4, automoc4, phonon, libkexiv2
-, libkdcraw, libkipi, gettext, libxml2, libxslt, qjson, qca2
-, kdepimlibs }:
-
-stdenv.mkDerivation rec {
-  name = "kipi-plugins-1.9.0";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/kipi/${name}.tar.bz2";
-    sha256 = "0k4k9v1rj7129n0s0i5pvv4rabx0prxqs6sca642fj95cxc6c96m";
-  };
-
-  buildInputs =
-    # Some dependencies are missing because they are very big (OpenCV,
-    # GTK).
-    [ cmake kdelibs qt4 automoc4 phonon libkexiv2 libkdcraw libkipi
-      gettext libxml2 libxslt qjson qca2 kdepimlibs
-    ];
-
-  enableParallelBuilding = true;
-
-  meta = {
-    description = "Photo Management Program";
-    license = "GPL";
-    homepage = http://www.kipi-plugins.org;
-    inherit (kdelibs.meta) platforms;
-    maintainers = with stdenv.lib.maintainers; [ viric urkud ];
-  };
-}
diff --git a/pkgs/desktops/xfce-4.6/applications/xfce4-mixer.nix b/pkgs/desktops/xfce-4.6/applications/xfce4-mixer.nix
index db28274be072..76cc5ea028f0 100644
--- a/pkgs/desktops/xfce-4.6/applications/xfce4-mixer.nix
+++ b/pkgs/desktops/xfce-4.6/applications/xfce4-mixer.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchurl, pkgconfig, intltool, glib, gst_all, gtk
-, libxfce4util, libxfcegui4, xfce4panel, xfconf, makeWrapper }:
+{ stdenv, fetchurl, pkgconfig, intltool, glib, gstreamer, gst_plugins_base
+, gtk, libxfce4util, libxfcegui4, xfce4panel, xfconf, makeWrapper }:
 
 let
 
   # The usual Gstreamer plugins package has a zillion dependencies
   # that we don't need for a simple mixer, so build a minimal package.
-  gstPluginsBase = gst_all.gstPluginsBase.override {
+  gst_plugins_minimal = gst_plugins_base.override {
     minimalDeps = true;
   };
 
@@ -20,14 +20,14 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ pkgconfig intltool glib gst_all.gstreamer gstPluginsBase gtk
+    [ pkgconfig intltool glib gstreamer gst_plugins_minimal gtk
       libxfce4util libxfcegui4 xfce4panel xfconf makeWrapper
     ];
 
   postInstall =
     ''
       mkdir -p $out/nix-support
-      echo ${gstPluginsBase} > $out/nix-support/propagated-user-env-packages
+      echo ${gst_plugins_minimal} > $out/nix-support/propagated-user-env-packages
     '';
 
   meta = {
diff --git a/pkgs/desktops/xfce-4.6/default.nix b/pkgs/desktops/xfce-4.6/default.nix
index 6f2eaf1b4bfe..1769c3f7a041 100644
--- a/pkgs/desktops/xfce-4.6/default.nix
+++ b/pkgs/desktops/xfce-4.6/default.nix
@@ -1,7 +1,7 @@
 { callPackage, pkgs }:
 
 rec {
-  inherit (pkgs.gtkLibs) gtk glib;
+  inherit (pkgs) gtk glib;
 
   #### CORE
 
diff --git a/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix b/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix
index bb50a0610f60..2f1ab8a8e93c 100644
--- a/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix
+++ b/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchurl, pkgconfig, intltool, glib, gst_all, gtk
-, libxfce4util, libxfce4ui, xfce4panel, xfconf }:
+{ stdenv, fetchurl, pkgconfig, intltool, glib, gstreamer, gst_plugins_base
+, gtk, libxfce4util, libxfce4ui, xfce4panel, xfconf }:
 
 let
 
   # The usual Gstreamer plugins package has a zillion dependencies
   # that we don't need for a simple mixer, so build a minimal package.
-  gstPluginsBase = gst_all.gstPluginsBase.override {
+  gst_plugins_minimal = gst_plugins_base.override {
     minimalDeps = true;
   };
 
@@ -20,14 +20,14 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ pkgconfig intltool glib gst_all.gstreamer gstPluginsBase gtk
+    [ pkgconfig intltool glib gstreamer gst_plugins_minimal gtk
       libxfce4util libxfce4ui xfce4panel xfconf
     ];
 
   postInstall =
     ''
       mkdir -p $out/nix-support
-      echo ${gstPluginsBase} > $out/nix-support/propagated-user-env-packages
+      echo ${gst_plugins_minimal} > $out/nix-support/propagated-user-env-packages
     '';
 
   meta = {
diff --git a/pkgs/desktops/xfce-4.8/default.nix b/pkgs/desktops/xfce-4.8/default.nix
index 971071c3accb..8e6f7c10234c 100644
--- a/pkgs/desktops/xfce-4.8/default.nix
+++ b/pkgs/desktops/xfce-4.8/default.nix
@@ -1,7 +1,7 @@
 { callPackage, pkgs }:
 
 rec {
-  inherit (pkgs.gtkLibs) gtk glib;
+  inherit (pkgs) gtk glib;
 
   #### SUPPORT
 
diff --git a/pkgs/development/compilers/Agda-executable/default.nix b/pkgs/development/compilers/Agda-executable/default.nix
index 1b772b8dc717..acf1c0265652 100644
--- a/pkgs/development/compilers/Agda-executable/default.nix
+++ b/pkgs/development/compilers/Agda-executable/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Agda-executable";
-  version = "2.3.0";
-  sha256 = "1n1ak6z2vh356k9mk0zkiv6dqp9dvx97a7r21b0xnhwkmh3f8p5p";
+  version = "2.3.0.1";
+  sha256 = "156nzvpmqi7yizjr4yym2ybc0iv4nqfp84qrpdxcha682k298ib1";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [ Agda ];
diff --git a/pkgs/development/compilers/edk2/default.nix b/pkgs/development/compilers/edk2/default.nix
new file mode 100644
index 000000000000..53517e853e94
--- /dev/null
+++ b/pkgs/development/compilers/edk2/default.nix
@@ -0,0 +1,74 @@
+{ stdenv, fetchsvn, libuuid, pythonFull, iasl }:
+
+let
+
+targetArch = if stdenv.isi686 then
+  "IA32"
+else if stdenv.isx86_64 then
+  "X64"
+else
+  throw "Unsupported architecture";
+
+edk2 = stdenv.mkDerivation {
+  name = "edk2-2012-03-13";
+  
+  src = fetchsvn {
+    url = https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2;
+    rev = "13094";
+    sha256 = "1qfpal0y4sas204ydg3pg3634dm25q1vr94mpgmbdh6yqcviah3h";
+  };
+
+  buildInputs = [ libuuid pythonFull ];
+
+  buildPhase = ''
+    make -C BaseTools
+  '';
+
+  installPhase = ''
+    mkdir -vp $out
+    mv -v BaseTools $out
+    mv -v EdkCompatibilityPkg $out
+    mv -v edksetup.sh $out
+  '';
+
+  meta = {
+    description = "Intel EFI development kit";
+    homepage = http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=EDK2;
+    license = "BSD";
+    maintainers = [ stdenv.lib.maintainers.shlevy ];
+    platforms = ["x86_64-linux" "i686-linux"];
+  };
+
+  passthru = {
+    setup = projectDscPath: attrs: {
+      buildInputs = [ pythonFull ] ++
+        stdenv.lib.optionals (attrs ? buildInputs) attrs.buildInputs;
+
+      configurePhase = ''
+        mkdir -v Conf
+        sed -e 's|Nt32Pkg/Nt32Pkg.dsc|${projectDscPath}|' -e \
+          's|MYTOOLS|GCC46|' -e 's|IA32|${targetArch}|' -e 's|DEBUG|RELEASE|'\
+          < ${edk2}/BaseTools/Conf/target.template > Conf/target.txt
+        sed -e 's|DEFINE GCC46_IA32_PREFIX       = /usr/bin/|DEFINE GCC46_IA32_PREFIX       = ""|' \
+          -e 's|DEFINE GCC46_X64_PREFIX        = /usr/bin/|DEFINE GCC46_X64_PREFIX        = ""|' \
+          -e 's|DEFINE UNIX_IASL_BIN           = /usr/bin/iasl|DEFINE UNIX_IASL_BIN           = ${iasl}/bin/iasl|' \
+          < ${edk2}/BaseTools/Conf/tools_def.template > Conf/tools_def.txt
+        export WORKSPACE="$PWD"
+        export EFI_SOURCE="$PWD/EdkCompatibilityPkg"
+        ln -sv ${edk2}/BaseTools BaseTools
+        ln -sv ${edk2}/EdkCompatibilityPkg EdkCompatibilityPkg
+        . ${edk2}/edksetup.sh BaseTools
+      '';
+
+      buildPhase = "
+        build
+      ";
+
+      installPhase = "mv -v Build/*/* $out";
+    } // (removeAttrs attrs [ "buildInputs" ] );
+  };
+};
+
+in
+
+edk2
diff --git a/pkgs/development/compilers/iasl/default.nix b/pkgs/development/compilers/iasl/default.nix
index ec6384d8cbac..085c599b9692 100644
--- a/pkgs/development/compilers/iasl/default.nix
+++ b/pkgs/development/compilers/iasl/default.nix
@@ -1,14 +1,14 @@
 {stdenv, fetchurl, bison, flex}:
 
 stdenv.mkDerivation {
-  name = "iasl-20090123";
+  name = "iasl-20120215";
   src = fetchurl {
-    url = http://www.acpica.org/download/acpica-unix-20090123.tar.gz;
-    md5 = "4ca6484acbf16cf67fd4ba91d32fd0a0";
+    url = http://www.acpica.org/download/acpica-unix-20120215.tar.gz;
+    sha256 = "13avirbqdnp7whl6ji8ixkhzdwf1cadl5fg8ggzbxp99bx0rgd5j";
   };
 
   buildPhase = "
-    cd compiler
+    cd source/compiler
     make
     cd ..
   ";
diff --git a/pkgs/development/libraries/farsight2/default.nix b/pkgs/development/libraries/farsight2/default.nix
index f504849e2d5f..cbb21073685c 100644
--- a/pkgs/development/libraries/farsight2/default.nix
+++ b/pkgs/development/libraries/farsight2/default.nix
@@ -1,24 +1,19 @@
-{stdenv, fetchurl, libnice, pkgconfig, python, glib, gstreamer, gstPluginsBase,
-  pygobject, gst_python}:
+{ stdenv, fetchurl, libnice, pkgconfig, python, gstreamer, gst_plugins_base
+, pygobject, gst_python, gupnp_igd }:
 
 stdenv.mkDerivation rec {
-  name = "farsight2-0.0.22";
+  name = "farsight2-0.0.31";
   
   src = fetchurl {
     url = "http://farsight.freedesktop.org/releases/farsight2/${name}.tar.gz";
-    sha256 = "07yjndkx1p7ij1ifxsnbqbr8943wmq768x4812khka7dx6ii1sv9";
+    sha256 = "16qz4x14rdycm4nrn5wx6k2y22fzrazsbmihrxdwafx9cyf23kjm";
   };
 
-  buildInputs = [ libnice pkgconfig python glib gstreamer gstPluginsBase 
-    pygobject gst_python ];
+  buildInputs = [ libnice python pygobject gst_python gupnp_igd ];
 
-  preBuild = ''
-    sed -e '/^[[] -z/d' -i python/Makefile
-    find . -name Makefile -execdir sed -e '/^[.]NOEXPORT:/d' -i '{}' ';'
-    find . -name Makefile -execdir sed -r -e 's/^ {8,8}/\t/' -i '{}' ';'
-  '';
+  buildNativeInputs = [ pkgconfig ];
 
-  patches = [./makefile.patch];
+  propagatedBuildInputs = [ gstreamer gst_plugins_base ];
 
   meta = {
     homepage = http://farsight.freedesktop.org/wiki/;
diff --git a/pkgs/development/libraries/farsight2/makefile.patch b/pkgs/development/libraries/farsight2/makefile.patch
deleted file mode 100644
index e464d423df66..000000000000
--- a/pkgs/development/libraries/farsight2/makefile.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-diff -ru farsight2-0.0.16/gst/rtcpfilter/Makefile.am farsight2-0.0.16.new/gst/rtcpfilter/Makefile.am
---- farsight2-0.0.16/gst/rtcpfilter/Makefile.am	2009-05-08 23:34:14.000000000 +0200
-+++ farsight2-0.0.16.new/gst/rtcpfilter/Makefile.am	2009-12-27 16:17:32.000000000 +0100
-@@ -7,12 +7,14 @@
- libfsrtcpfilter_la_CFLAGS = \
- 	$(FS2_CFLAGS) \
- 	$(GST_BASE_CFLAGS) \
-+	$(GST_PLUGINS_BASE_CFLAGS) \
- 	$(GST_CFLAGS)
- libfsrtcpfilter_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
- libfsrtcpfilter_la_LIBADD = \
- 	$(FS2_LIBS) \
- 	-lgstrtp-@GST_MAJORMINOR@ \
- 	$(GST_BASE_LIBS) \
-+	$(GST_PLUGINS_BASE_LIBS) \
- 	$(GST_LIBS)
- 
- 
-diff -ru farsight2-0.0.16/gst/rtcpfilter/Makefile.in farsight2-0.0.16.new/gst/rtcpfilter/Makefile.in
---- farsight2-0.0.16/gst/rtcpfilter/Makefile.in	2009-10-06 20:24:00.000000000 +0200
-+++ farsight2-0.0.16.new/gst/rtcpfilter/Makefile.in	2009-12-27 16:23:36.000000000 +0100
-@@ -314,13 +314,14 @@
- libfsrtcpfilter_la_CFLAGS = \
- 	$(FS2_CFLAGS) \
- 	$(GST_BASE_CFLAGS) \
-+	$(GST_PLUGINS_BASE_CFLAGS) \
- 	$(GST_CFLAGS)
- 
- libfsrtcpfilter_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
- libfsrtcpfilter_la_LIBADD = \
- 	$(FS2_LIBS) \
- 	-lgstrtp-@GST_MAJORMINOR@ \
--	$(GST_BASE_LIBS) \
-+	$(GST_PLUGINS_BASE_LIBS) \
- 	$(GST_LIBS)
- 
- glib_enum_define = FS_RTCP_FILTER
diff --git a/pkgs/development/libraries/gnu-efi/default.nix b/pkgs/development/libraries/gnu-efi/default.nix
new file mode 100644
index 000000000000..c43e9f6b4da6
--- /dev/null
+++ b/pkgs/development/libraries/gnu-efi/default.nix
@@ -0,0 +1,40 @@
+{ stdenv
+, fetchurl
+}:
+
+stdenv.mkDerivation {
+  name = "gnu-efi-3.0p";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/gnu-efi/gnu-efi_3.0p.orig.tar.gz";
+    sha256 = "1pm4wk1gma7mb8z19js7kb5y31a0zk308mkafmq6gb0b2a0i39cn";
+  };
+
+  meta = {
+    description = "GNU EFI development toolchain";
+    homepage = http://sourceforge.net/projects/gnu-efi/;
+    license = "GPL";
+    maintainers = [ stdenv.lib.maintainers.shlevy ];
+    platforms = ["x86_64-linux" "i686-linux"];
+  };
+
+  buildFlags = [
+    "CC=cc"
+    "AS=as"
+    "LD=ld"
+    "AR=ar"
+    "RANLIB=ranlib"
+    "OBJCOPY=objcopy"
+  ];
+
+  buildPhase = ''
+    make $buildFlags
+    make $buildFlags -C apps clean all
+  '';
+
+  installPhase = ''
+    make INSTALLROOT="$out" install
+    mkdir -pv $out/share/gnu-efi
+    install -D -m644 apps/*.efi $out/share/gnu-efi
+  '';
+}
diff --git a/pkgs/development/libraries/gssdp/default.nix b/pkgs/development/libraries/gssdp/default.nix
index 6667e7e87f78..28bad546084a 100644
--- a/pkgs/development/libraries/gssdp/default.nix
+++ b/pkgs/development/libraries/gssdp/default.nix
@@ -1,10 +1,11 @@
 {stdenv, fetchurl, pkgconfig, libsoup, glib, libxml2}:
 
 stdenv.mkDerivation {
-  name = "gssdp-0.6.1";
+  name = "gssdp-0.12.1";
+
   src = fetchurl {
-    url = http://www.gupnp.org/sources/gssdp/gssdp-0.6.1.tar.gz;
-    sha256 = "1mla3s0p4vabrn4m7il02f1d1ily3712fjw4k9l3x89rqyi2qh7f";
+    url = mirror://gnome/sources/gssdp/0.12/gssdp-0.12.1.tar.xz;
+    sha256 = "0irkbzaj9raais6zdnbj3ysjkmdqhmdvfn0p1sz6x0s9ab6b9b0n";
   };
 
   buildInputs = [pkgconfig libsoup glib libxml2];
@@ -13,5 +14,6 @@ stdenv.mkDerivation {
     description = "A GObject-based API for handling resource discovery and announcement over SSDP.";
     homepage = http://www.gupnp.org/;
     license = "LGPL v2";
+    platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/gstreamer/default.nix b/pkgs/development/libraries/gstreamer/default.nix
deleted file mode 100644
index 0394bb5fadb4..000000000000
--- a/pkgs/development/libraries/gstreamer/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{ callPackage }:
-
-rec {
-  gstreamer = callPackage ./gstreamer { };
-
-  gstPluginsBase = callPackage ./gst-plugins-base { };
-
-  gstPluginsGood = callPackage ./gst-plugins-good { };
-
-  gstPluginsUgly = callPackage ./gst-plugins-ugly { };
-
-  gstPluginsBad = callPackage ./gst-plugins-bad { };
-
-  gstFfmpeg = callPackage ./gst-ffmpeg { };
-
-  gnonlin = callPackage ./gnonlin { };
-
-  gst_python = callPackage ./gst-python {};
-
-  # Header files are in include/${prefix}/
-  prefix = "gstreamer-0.10";
-}
diff --git a/pkgs/development/libraries/gstreamer/gnonlin/default.nix b/pkgs/development/libraries/gstreamer/gnonlin/default.nix
index 1ba33f07b1ea..ca386b15f0e1 100644
--- a/pkgs/development/libraries/gstreamer/gnonlin/default.nix
+++ b/pkgs/development/libraries/gstreamer/gnonlin/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, gstPluginsBase, gstreamer }:
+{ stdenv, fetchurl, pkgconfig, gst_plugins_base, gstreamer }:
 
 stdenv.mkDerivation rec {
   name = "gnonlin-0.10.15";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1yz0i3vzpadz5axwdb310bypl4rm1xy2n6mgajja0w2z6afnrfv0";
   };
 
-  buildInputs = [ gstPluginsBase gstreamer pkgconfig ];
+  buildInputs = [ gst_plugins_base gstreamer pkgconfig ];
 
   meta = {
     homepage = "http://gstreamer.freedesktop.org/modules/gnonlin.html";
diff --git a/pkgs/development/libraries/gstreamer/gst-ffmpeg/default.nix b/pkgs/development/libraries/gstreamer/gst-ffmpeg/default.nix
index 0287c5b9135f..e7aaaa46a96a 100644
--- a/pkgs/development/libraries/gstreamer/gst-ffmpeg/default.nix
+++ b/pkgs/development/libraries/gstreamer/gst-ffmpeg/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, pkgconfig, gstPluginsBase, bzip2, yasm
+{ fetchurl, stdenv, pkgconfig, gst_plugins_base, bzip2, yasm
 , useInternalFfmpeg ? false, ffmpeg ? null }:
 
 stdenv.mkDerivation rec {
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   configureFlags = stdenv.lib.optionalString (!useInternalFfmpeg) "--with-system-ffmpeg";
 
   buildInputs =
-    [ pkgconfig bzip2 gstPluginsBase ]
+    [ pkgconfig bzip2 gst_plugins_base ]
     ++ (if useInternalFfmpeg then [ yasm ] else [ ffmpeg ]);
 
   meta = {
diff --git a/pkgs/development/libraries/gstreamer/gst-plugins-bad/default.nix b/pkgs/development/libraries/gstreamer/gst-plugins-bad/default.nix
index 4dec1a86ebf4..2d1309f3a3cf 100644
--- a/pkgs/development/libraries/gstreamer/gst-plugins-bad/default.nix
+++ b/pkgs/development/libraries/gstreamer/gst-plugins-bad/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, pkgconfig, glib, gstreamer, gstPluginsBase
+{ fetchurl, stdenv, pkgconfig, glib, gstreamer, gst_plugins_base
 , libdvdnav, libdvdread }:
 
 stdenv.mkDerivation rec {
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ pkgconfig glib gstreamer gstPluginsBase libdvdnav libdvdread ];
+    [ pkgconfig glib gstreamer gst_plugins_base libdvdnav libdvdread ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/gstreamer/gst-plugins-good/default.nix b/pkgs/development/libraries/gstreamer/gst-plugins-good/default.nix
index e2eb25bfb898..4298a88f65e8 100644
--- a/pkgs/development/libraries/gstreamer/gst-plugins-good/default.nix
+++ b/pkgs/development/libraries/gstreamer/gst-plugins-good/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, pkgconfig, gstPluginsBase, aalib, cairo
+{ fetchurl, stdenv, pkgconfig, gst_plugins_base, aalib, cairo
 , flac, libjpeg, zlib, speex, libpng, libdv, libcaca
 , libiec61883, libavc1394, taglib, pulseaudio
 , glib, gstreamer, bzip2
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   configureFlags = "--disable-oss";
 
   buildInputs =
-    [ pkgconfig glib gstreamer gstPluginsBase libavc1394 libiec61883
+    [ pkgconfig glib gstreamer gst_plugins_base libavc1394 libiec61883
       aalib libcaca cairo libdv flac libjpeg libpng pulseaudio speex
       taglib bzip2
     ];
diff --git a/pkgs/development/libraries/gstreamer/gst-plugins-ugly/default.nix b/pkgs/development/libraries/gstreamer/gst-plugins-ugly/default.nix
index 153ab47fb929..b85fb983880b 100644
--- a/pkgs/development/libraries/gstreamer/gst-plugins-ugly/default.nix
+++ b/pkgs/development/libraries/gstreamer/gst-plugins-ugly/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, pkgconfig, glib, gstreamer, gstPluginsBase
+{ fetchurl, stdenv, pkgconfig, glib, gstreamer, gst_plugins_base
 , libmad, libdvdread, libmpeg2, libcdio, a52dec }:
 
 stdenv.mkDerivation rec {
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ pkgconfig glib gstreamer gstPluginsBase libmad libdvdread a52dec ];
+    [ pkgconfig glib gstreamer gst_plugins_base libmad libdvdread a52dec ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/gstreamer/gst-python/default.nix b/pkgs/development/libraries/gstreamer/gst-python/default.nix
index 98a2a07aa61c..fedb44068eb8 100644
--- a/pkgs/development/libraries/gstreamer/gst-python/default.nix
+++ b/pkgs/development/libraries/gstreamer/gst-python/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, stdenv, pkgconfig, python, gstreamer
-  , gstPluginsBase, pygtk
+  , gst_plugins_base, pygtk
 }:
 
 stdenv.mkDerivation rec {
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ pkgconfig gstPluginsBase pygtk ]
+    [ pkgconfig gst_plugins_base pygtk ]
     ;
 
   propagatedBuildInputs = [ gstreamer python ];
diff --git a/pkgs/development/libraries/gstreamer/qt-gstreamer/boost1.48.patch b/pkgs/development/libraries/gstreamer/qt-gstreamer/boost1.48.patch
new file mode 100644
index 000000000000..c48eec68a640
--- /dev/null
+++ b/pkgs/development/libraries/gstreamer/qt-gstreamer/boost1.48.patch
@@ -0,0 +1,49 @@
+Description: Work around moc limitations
+ Some parts of Boost, introduced in Boost 1.48 are not
+ understood by the limited C++ parser of moc.  This
+ patch defines header guards that prevent the troublesome boost
+ headers from being processed.
+Bug-Debian: #653796
+Author: Tobias Frost <tobi@coldtobi.de>
+Reviewed-By: Steve Robbins <smr@debian.org>
+
+--- a/src/QGlib/connect.h
++++ b/src/QGlib/connect.h
+@@ -19,6 +19,11 @@
+ #ifndef QGLIB_CONNECT_H
+ #define QGLIB_CONNECT_H
+ 
++#ifdef Q_MOC_RUN
++#define BOOST_TT_HAS_OPERATOR_HPP_INCLUDED
++#endif
++
++
+ #include "global.h"
+ #include "quark.h"
+ #include <QtCore/QObject>
+--- a/src/QGst/bin.h
++++ b/src/QGst/bin.h
+@@ -19,6 +19,10 @@
+ #ifndef QGST_BIN_H
+ #define QGST_BIN_H
+ 
++#ifdef Q_MOC_RUN
++#define BOOST_TT_HAS_OPERATOR_HPP_INCLUDED
++#endif
++
+ #include "element.h"
+ #include "childproxy.h"
+ 
+--- a/src/QGst/Ui/videowidget.h
++++ b/src/QGst/Ui/videowidget.h
+@@ -19,6 +19,10 @@
+ #ifndef QGST_UI_VIDEOWIDGET_H
+ #define QGST_UI_VIDEOWIDGET_H
+ 
++#ifdef Q_MOC_RUN
++#define BOOST_TT_HAS_OPERATOR_HPP_INCLUDED
++#endif
++
+ #include "global.h"
+ #include "../element.h"
+ #include <QtGui/QWidget>
diff --git a/pkgs/development/libraries/gstreamer/qt-gstreamer/default.nix b/pkgs/development/libraries/gstreamer/qt-gstreamer/default.nix
new file mode 100644
index 000000000000..e84c16005586
--- /dev/null
+++ b/pkgs/development/libraries/gstreamer/qt-gstreamer/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl, gstreamer, gst_plugins_base, boost, glib, qt4, cmake
+, automoc4, flex, bison, pkgconfig }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-0.10.1";
+  pname = "qt-gstreamer";
+
+  src = fetchurl {
+    url = "http://gstreamer.freedesktop.org/src/${pname}/${name}.tar.bz2";
+    sha256 = "0g377jlzlwgywgk7nbv9fd0aimv8wpzrymwzdiaffczxv5xvip5h";
+  };
+
+  buildInputs = [ gstreamer gst_plugins_base glib qt4 ];
+  propagatedBuildInputs = [ boost ];
+  buildNativeInputs = [ cmake automoc4 flex bison pkgconfig ];
+
+  patches = [ ./boost1.48.patch ];
+}
diff --git a/pkgs/development/libraries/gupnp-igd/default.nix b/pkgs/development/libraries/gupnp-igd/default.nix
new file mode 100644
index 000000000000..bd930e5ecf64
--- /dev/null
+++ b/pkgs/development/libraries/gupnp-igd/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, pkgconfig, glib, gupnp, python, pygobject }:
+ 
+stdenv.mkDerivation rec {
+  name = "gupnp-igd-0.2.1";
+
+  src = fetchurl {
+    url = "http://www.gupnp.org/sites/all/files/sources/${name}.tar.gz";
+    sha256 = "18ia8l24hbylz3dnbg2jf848bmbx0hjkq4fkwzzfn57z021f0fh2";
+  };
+
+  propagatedBuildInputs = [ gupnp ];
+
+  buildInputs = [ glib python pygobject ];
+
+  buildNativeInputs = [ pkgconfig ];
+
+  meta = {
+    homepage = http://www.gupnp.org/;
+  };
+}
+
diff --git a/pkgs/development/libraries/gupnp/default.nix b/pkgs/development/libraries/gupnp/default.nix
index 8df52cf2a271..5679591878a5 100644
--- a/pkgs/development/libraries/gupnp/default.nix
+++ b/pkgs/development/libraries/gupnp/default.nix
@@ -1,12 +1,19 @@
-{ stdenv, fetchurl, pkgconfig, glib, libxml2, gssdp, libsoup, e2fsprogs }:
+{ stdenv, fetchurl, pkgconfig, glib, libxml2, gssdp, libsoup, libuuid }:
  
 stdenv.mkDerivation {
-  name = "gupnp-0.12";
+  name = "gupnp-0.18.1";
 
   src = fetchurl {
-    url = http://www.gupnp.org/sources/gupnp/gupnp-0.12.tar.gz;
-    sha256 = "1sm1rqvx752nb3j1yl7h30kx2ymndkji8m73fxshjssmc6z40ayg";
+    url = mirror://gnome/sources/gupnp/0.18/gupnp-0.18.1.tar.xz;
+    sha256 = "1bn98mw4zicg0a7a2xjr4j93ksnpwkhccii8y8zy08g7x2jg3dhk";
   };
 
-  buildInputs = [ pkgconfig glib libxml2 gssdp libsoup e2fsprogs ];
+  propagatedBuildInputs = [ libxml2 libsoup gssdp ];
+  buildInputs = [ glib libuuid ];
+
+  buildNativeInputs = [ pkgconfig ];
+
+  meta = {
+    homepage = http://www.gupnp.org/;
+  };
 }
diff --git a/pkgs/development/libraries/haskell/Agda/default.nix b/pkgs/development/libraries/haskell/Agda/default.nix
index c40ccaa04f36..1ab394b820ac 100644
--- a/pkgs/development/libraries/haskell/Agda/default.nix
+++ b/pkgs/development/libraries/haskell/Agda/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Agda";
-  version = "2.3.0";
-  sha256 = "1p0cwf3d146z73gp49cm8fmk33hcbjsvyijbakm1871ssc5i73k0";
+  version = "2.3.0.1";
+  sha256 = "0f2kc3by2z01g8bqc446hyzx9sidx6qi0p7h5bcpjf8iryk1dh2w";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/Hipmunk/default.nix b/pkgs/development/libraries/haskell/Hipmunk/default.nix
index 6877e07524d1..7cf502281fbe 100644
--- a/pkgs/development/libraries/haskell/Hipmunk/default.nix
+++ b/pkgs/development/libraries/haskell/Hipmunk/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Hipmunk";
-  version = "5.2.0.6";
-  sha256 = "16yh7v6v05nksspcfz8h054piyhmrfbpaada36562rjxcywyfnfj";
+  version = "5.2.0.7";
+  sha256 = "1cinxhz4qb8xcbygifx85q4zf6pmjwi90v01vqwyvwlfxmbk0j7k";
   buildDepends = [ StateVar transformers ];
   noHaddock = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/cairo/default.nix b/pkgs/development/libraries/haskell/cairo/default.nix
index 32d62dad8d0e..b485a27c4ad5 100644
--- a/pkgs/development/libraries/haskell/cairo/default.nix
+++ b/pkgs/development/libraries/haskell/cairo/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cairo";
-  version = "0.12.2";
-  sha256 = "1sa0xfx14y4imq3bd9l0rqrmxls3l9yga249a31zfhcinnr1j9db";
+  version = "0.12.3";
+  sha256 = "0kgy6907vs41ws51dwqv6lwvfnvmgd1mns12cxzsifmli1jglswd";
   buildDepends = [ mtl ];
   buildTools = [ gtk2hsBuildtools ];
   extraLibraries = [ cairo libc pkgconfig zlib ];
diff --git a/pkgs/development/libraries/haskell/digest/default.nix b/pkgs/development/libraries/haskell/digest/default.nix
index b313da931f92..50bce7090b36 100644
--- a/pkgs/development/libraries/haskell/digest/default.nix
+++ b/pkgs/development/libraries/haskell/digest/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "digest";
-  version = "0.0.1.0";
-  sha256 = "1p2fk950ivdj7pvc624y0fx48rdh0ax3rw9606926n60mxi9fca0";
+  version = "0.0.1.1";
+  sha256 = "1m04szf9yabmm6mkjq2x7a57bjdf2i611wm2k99wdcygb5cvif3v";
   extraLibraries = [ zlib ];
   meta = {
     description = "Various cryptographic hashes for bytestrings; CRC32 and Adler32 for now";
diff --git a/pkgs/development/libraries/haskell/gio/default.nix b/pkgs/development/libraries/haskell/gio/default.nix
new file mode 100644
index 000000000000..b9d6f906af4c
--- /dev/null
+++ b/pkgs/development/libraries/haskell/gio/default.nix
@@ -0,0 +1,20 @@
+{ cabal, glib, gtk2hsBuildtools, mtl }:
+
+cabal.mkDerivation (self: {
+  pname = "gio";
+  version = "0.12.3";
+  sha256 = "0kmqldlgxwj8sh0b5k5gicc5z2n6mc9h3fmdby4wx1l4ska7rajn";
+  buildDepends = [ glib mtl ];
+  buildTools = [ gtk2hsBuildtools ];
+  pkgconfigDepends = [ glib ];
+  meta = {
+    homepage = "http://projects.haskell.org/gtk2hs/";
+    description = "Binding to the GIO";
+    license = self.stdenv.lib.licenses.lgpl21;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/glib/default.nix b/pkgs/development/libraries/haskell/glib/default.nix
index c60c776e60f4..8dedf471a9f8 100644
--- a/pkgs/development/libraries/haskell/glib/default.nix
+++ b/pkgs/development/libraries/haskell/glib/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "glib";
-  version = "0.12.2";
-  sha256 = "0p1d6j23yf30824q5gn7pw7s47hs4rnaqs69d2hn2pnzpc1ml3c6";
+  version = "0.12.3";
+  sha256 = "1hv7wnxsjzlr2bchl8ir967iv9qjzlv9lnlyvrilagzafr7nximb";
   buildTools = [ gtk2hsBuildtools ];
   extraLibraries = [ libc pkgconfig ];
   pkgconfigDepends = [ glib ];
diff --git a/pkgs/development/libraries/haskell/gloss/default.nix b/pkgs/development/libraries/haskell/gloss/default.nix
index 8d9c42c12433..46921fcba9ea 100644
--- a/pkgs/development/libraries/haskell/gloss/default.nix
+++ b/pkgs/development/libraries/haskell/gloss/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "gloss";
-  version = "1.6.1.1";
-  sha256 = "0y0npw27ic23zx7fq7dmvwbz2r62wblw9nbyai9kxgff4m2p3j4m";
+  version = "1.6.2.1";
+  sha256 = "0lczr3lm0i19cznkyxx6dhrlg08698mq84wjn7b0im32par1qjj5";
   buildDepends = [ bmp GLUT OpenGL ];
   meta = {
     homepage = "http://gloss.ouroborus.net";
diff --git a/pkgs/development/libraries/haskell/gtk/default.nix b/pkgs/development/libraries/haskell/gtk/default.nix
index 346caa1b72ef..4bf8c3b7359f 100644
--- a/pkgs/development/libraries/haskell/gtk/default.nix
+++ b/pkgs/development/libraries/haskell/gtk/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "gtk";
-  version = "0.12.2";
-  sha256 = "0qjhy2adbqv03qbmh6ydga4axvj263n5srwpfrw4v5gk34fvyj9w";
+  version = "0.12.3";
+  sha256 = "0a5bb1qkxpkmm69b31jpqy7njnsk9bhhhp6z0h971zsxsrxpi04q";
   buildDepends = [ cairo glib mtl pango ];
   buildTools = [ gtk2hsBuildtools ];
   extraLibraries = [ libc pkgconfig ];
diff --git a/pkgs/development/libraries/haskell/hamlet/default.nix b/pkgs/development/libraries/haskell/hamlet/default.nix
index c3cdf3612178..5f03e1c7003c 100644
--- a/pkgs/development/libraries/haskell/hamlet/default.nix
+++ b/pkgs/development/libraries/haskell/hamlet/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hamlet";
-  version = "0.10.8";
-  sha256 = "1vlp8vwaipz757vnd95gcdi9dkrpbgfdlsb3kgjivsj7rqbmxf7z";
+  version = "0.10.9.1";
+  sha256 = "1z2g7ymb8ihx13dkfq0k0s2fn1k6nig8h306i8p4q76wy7ybw3g0";
   buildDepends = [
     blazeBuilder blazeHtml failure parsec shakespeare text
   ];
diff --git a/pkgs/development/libraries/haskell/hashtables/default.nix b/pkgs/development/libraries/haskell/hashtables/default.nix
index 56b2316a5f9f..990a998a689e 100644
--- a/pkgs/development/libraries/haskell/hashtables/default.nix
+++ b/pkgs/development/libraries/haskell/hashtables/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hashtables";
-  version = "1.0.1.2";
-  sha256 = "09lviwxwlhvhrgm7v66w0vd7j02s0191w1izsvwh1a3dj2vc7vw7";
+  version = "1.0.1.3";
+  sha256 = "1ad8psza13ff15sd4s862sryw6z8msiys1f7frnp4sibgr6bwdca";
   buildDepends = [ hashable primitive vector ];
   meta = {
     homepage = "http://github.com/gregorycollins/hashtables";
diff --git a/pkgs/development/libraries/haskell/language-javascript/default.nix b/pkgs/development/libraries/haskell/language-javascript/default.nix
index b03f3b0f1da5..bb79a262b947 100644
--- a/pkgs/development/libraries/haskell/language-javascript/default.nix
+++ b/pkgs/development/libraries/haskell/language-javascript/default.nix
@@ -1,13 +1,13 @@
-{ cabal, alex, happy, mtl, utf8Light }:
+{ cabal, happy, mtl, utf8Light }:
 
 cabal.mkDerivation (self: {
   pname = "language-javascript";
-  version = "0.4.9";
-  sha256 = "19a8c8bq4s533iyb6h3vl59dnya6d7inaqk1hbhnlil1w2d0n5b5";
+  version = "0.4.10";
+  sha256 = "1bk5xrhj5cpacz2bcfjz28sldizdadg05daalppxq8vs830sdx5h";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ mtl utf8Light ];
-  buildTools = [ alex happy ];
+  buildTools = [ happy ];
   meta = {
     homepage = "http://github.com/alanz/language-javascript";
     description = "Parser for JavaScript";
diff --git a/pkgs/development/libraries/haskell/leksah/leksah-server.nix b/pkgs/development/libraries/haskell/leksah/leksah-server.nix
index c9e07c053418..44c82a282e10 100644
--- a/pkgs/development/libraries/haskell/leksah/leksah-server.nix
+++ b/pkgs/development/libraries/haskell/leksah/leksah-server.nix
@@ -1,16 +1,18 @@
-{ cabal, binary, binaryShared, Cabal, deepseq, filepath, haddock
-, hslogger, ltk, mtl, network, parsec, processLeksah, time
+{ cabal, attoparsec, attoparsecEnumerator, binary, binaryShared
+, Cabal, deepseq, enumerator, filepath, haddock, hslogger, ltk
+, network, parsec, processLeksah, time, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "leksah-server";
-  version = "0.10.0.4";
-  sha256 = "0g523dkiaclk5ym16vzqiabh7mwksjqp0kbx17a899k5gzfwfjp6";
+  version = "0.12.0.4";
+  sha256 = "0lv6z2b79cxvcz5mldyicx87lp3a0xfmv0wjd0cjf954cdizccg2";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    binary binaryShared Cabal deepseq filepath haddock hslogger ltk mtl
-    network parsec processLeksah time
+    attoparsec attoparsecEnumerator binary binaryShared Cabal deepseq
+    enumerator filepath haddock hslogger ltk network parsec
+    processLeksah time transformers
   ];
   meta = {
     homepage = "http://leksah.org";
diff --git a/pkgs/development/libraries/haskell/ltk/default.nix b/pkgs/development/libraries/haskell/ltk/default.nix
index 3f86a7922e97..9d0a32c54df0 100644
--- a/pkgs/development/libraries/haskell/ltk/default.nix
+++ b/pkgs/development/libraries/haskell/ltk/default.nix
@@ -1,10 +1,10 @@
-{ cabal, Cabal, filepath, glib, gtk, haddock, mtl, parsec }:
+{ cabal, Cabal, filepath, glib, gtk, mtl, parsec, transformers }:
 
 cabal.mkDerivation (self: {
   pname = "ltk";
-  version = "0.10.0.4";
-  sha256 = "1dp6dl8a0pfj6lx8n8a2y1j3c2z57k9pf81yr45qsp7wg53d6qhf";
-  buildDepends = [ Cabal filepath glib gtk haddock mtl parsec ];
+  version = "0.12.0.0";
+  sha256 = "1hlsfi77yypfnvh1alr3rflbffby9pbmc71m507davr6b09v9w9f";
+  buildDepends = [ Cabal filepath glib gtk mtl parsec transformers ];
   meta = {
     homepage = "http://www.leksah.org";
     description = "Leksah tool kit";
diff --git a/pkgs/development/libraries/haskell/pandoc/default.nix b/pkgs/development/libraries/haskell/pandoc/default.nix
index 4da060b35176..e905bb237d8e 100644
--- a/pkgs/development/libraries/haskell/pandoc/default.nix
+++ b/pkgs/development/libraries/haskell/pandoc/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pandoc";
-  version = "1.9.1.1";
-  sha256 = "1npyc99f90fhbfddr6x5dlnwdc3i1pnhg4xiv12fmf1cl8xlcpyl";
+  version = "1.9.1.2";
+  sha256 = "0sjdcmf3k64y9q0x1g2y3p7km73ir7gk4xxrvvx37aqwk3v9yraj";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/pango/default.nix b/pkgs/development/libraries/haskell/pango/default.nix
index 99e4d04f774e..46dedc24d434 100644
--- a/pkgs/development/libraries/haskell/pango/default.nix
+++ b/pkgs/development/libraries/haskell/pango/default.nix
@@ -3,8 +3,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pango";
-  version = "0.12.2";
-  sha256 = "0kf9sw2ajqlvv9n685fbif7c8x1qnz4w3y3xqql3a1rv6s3kmqba";
+  version = "0.12.3";
+  sha256 = "0203z59c9dsqp6mgb12h2iwjs52m2cqdxa7arwi1sccc3cz86cai";
   buildDepends = [ cairo glib mtl ];
   buildTools = [ gtk2hsBuildtools ];
   extraLibraries = [ libc pkgconfig ];
diff --git a/pkgs/development/libraries/haskell/polyparse/default.nix b/pkgs/development/libraries/haskell/polyparse/1.7.nix
index b27dc9cc6952..b27dc9cc6952 100644
--- a/pkgs/development/libraries/haskell/polyparse/default.nix
+++ b/pkgs/development/libraries/haskell/polyparse/1.7.nix
diff --git a/pkgs/development/libraries/haskell/polyparse/1.8.nix b/pkgs/development/libraries/haskell/polyparse/1.8.nix
new file mode 100644
index 000000000000..a0ee0e199bb9
--- /dev/null
+++ b/pkgs/development/libraries/haskell/polyparse/1.8.nix
@@ -0,0 +1,18 @@
+{ cabal, text }:
+
+cabal.mkDerivation (self: {
+  pname = "polyparse";
+  version = "1.8";
+  sha256 = "08nr22r87q2yxxlcpvf35pkq56b4k3f1fzj3cvjnr7137k7c7ywn";
+  buildDepends = [ text ];
+  meta = {
+    homepage = "http://code.haskell.org/~malcolm/polyparse/";
+    description = "A variety of alternative parser combinator libraries";
+    license = "LGPL";
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/sendfile/default.nix b/pkgs/development/libraries/haskell/sendfile/default.nix
index b2c24da5b1b4..74f49b56a912 100644
--- a/pkgs/development/libraries/haskell/sendfile/default.nix
+++ b/pkgs/development/libraries/haskell/sendfile/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "sendfile";
-  version = "0.7.4";
-  sha256 = "1h02fjdivsb3divdn3wg2skmw3jcd0n4axhlpgmrrbf92c3m35rq";
+  version = "0.7.5";
+  sha256 = "0gkkxlbl3ci1b973jyksk03400pm8npmsqv81iqs0lwbzc7nxs28";
   buildDepends = [ network ];
   meta = {
     homepage = "http://patch-tag.com/r/mae/sendfile";
diff --git a/pkgs/development/libraries/haskell/shakespeare-css/default.nix b/pkgs/development/libraries/haskell/shakespeare-css/default.nix
index 20e4650d05b7..4507fde8a43b 100644
--- a/pkgs/development/libraries/haskell/shakespeare-css/default.nix
+++ b/pkgs/development/libraries/haskell/shakespeare-css/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shakespeare-css";
-  version = "0.10.7.1";
-  sha256 = "0yi04ap2pl916ycs1wzaxrhjyx81lpmdad5in3qf1s4flfmi1h2k";
+  version = "0.10.8";
+  sha256 = "1c3a48rfrr5ifarr15zkcwg74zkqw08lhfk5fpkr5z6gxhwnbkas";
   buildDepends = [ parsec shakespeare text ];
   meta = {
     homepage = "http://www.yesodweb.com/book/templates";
diff --git a/pkgs/development/libraries/haskell/shakespeare-i18n/default.nix b/pkgs/development/libraries/haskell/shakespeare-i18n/default.nix
index fc7025e64da1..72ee7216739d 100644
--- a/pkgs/development/libraries/haskell/shakespeare-i18n/default.nix
+++ b/pkgs/development/libraries/haskell/shakespeare-i18n/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shakespeare-i18n";
-  version = "0.0.2";
-  sha256 = "1hb144n3fa5qiy3skrmab0qv63fa5vf4vg4ar9hrybmwdksqa410";
+  version = "0.0.2.1";
+  sha256 = "1gaxngqihz6wi5d6hyb9mdlhgcxnr4bvmm1si919zgjndwnms8z8";
   buildDepends = [ parsec shakespeare text ];
   meta = {
     homepage = "http://www.yesodweb.com/book/i18n";
diff --git a/pkgs/development/libraries/haskell/shakespeare-js/default.nix b/pkgs/development/libraries/haskell/shakespeare-js/default.nix
index fc651a692824..314e4345685b 100644
--- a/pkgs/development/libraries/haskell/shakespeare-js/default.nix
+++ b/pkgs/development/libraries/haskell/shakespeare-js/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shakespeare-js";
-  version = "0.11.1";
-  sha256 = "1sqkfl6pwwmn72xz5qf1bh58jr95w59ry6zmy939x73g9jgpzn6x";
+  version = "0.11.2";
+  sha256 = "1ck39bgl4wswd88w42b1fx5dlsd7r31d60ssv1lk11x6s4cjihgz";
   buildDepends = [ shakespeare text ];
   meta = {
     homepage = "http://www.yesodweb.com/book/templates";
diff --git a/pkgs/development/libraries/haskell/shakespeare-text/default.nix b/pkgs/development/libraries/haskell/shakespeare-text/default.nix
index 01fff9ff9988..d40fee7155fc 100644
--- a/pkgs/development/libraries/haskell/shakespeare-text/default.nix
+++ b/pkgs/development/libraries/haskell/shakespeare-text/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shakespeare-text";
-  version = "0.10.5";
-  sha256 = "13nhasfbza73kv3iin16iidwyz71b8d75vq0ym37zygpxb5izkvw";
+  version = "0.11";
+  sha256 = "02h8vi28kzvv44hy1ix9jc01x4jx302cp71bdj8blsjxzqyr6aq8";
   buildDepends = [ shakespeare text ];
   meta = {
     homepage = "http://www.yesodweb.com/book/templates";
diff --git a/pkgs/development/libraries/haskell/shakespeare/default.nix b/pkgs/development/libraries/haskell/shakespeare/default.nix
index 44fcbb277b7b..daf3dc22929b 100644
--- a/pkgs/development/libraries/haskell/shakespeare/default.nix
+++ b/pkgs/development/libraries/haskell/shakespeare/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shakespeare";
-  version = "0.10.3.1";
-  sha256 = "1wfw5qbgl4jl1r4gaw55mnsmn70vpzn7ykz3gbqzrf91wc6s3zj4";
+  version = "0.11";
+  sha256 = "0ksjgl2x97n5ci346vlmc2kd8plvsg6kn5cncbxkd8c6w4h28a4b";
   buildDepends = [ parsec text ];
   meta = {
     homepage = "http://www.yesodweb.com/book/templates";
diff --git a/pkgs/development/libraries/haskell/tls/default.nix b/pkgs/development/libraries/haskell/tls/default.nix
index f88b752e68c8..55626e3bae1d 100644
--- a/pkgs/development/libraries/haskell/tls/default.nix
+++ b/pkgs/development/libraries/haskell/tls/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tls";
-  version = "0.9.0";
-  sha256 = "1lv4ihds9b253i79cc7fcp27s3jlh10vrbnrhbicrrmcgaqklg82";
+  version = "0.9.1";
+  sha256 = "0724xwk3mchb2hd6sq4zhrs7pyd18banr0ndxc6bhim75vci53sl";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/unordered-containers/0.2.0.0.nix b/pkgs/development/libraries/haskell/unordered-containers/0.2.1.0.nix
index 098e265bf735..8682fcd2f6a6 100644
--- a/pkgs/development/libraries/haskell/unordered-containers/0.2.0.0.nix
+++ b/pkgs/development/libraries/haskell/unordered-containers/0.2.1.0.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "unordered-containers";
-  version = "0.2.0.0";
-  sha256 = "1fan2qrfzdg1a5xnqncy4vs5xab2v3v4v1gvk50vjfj87valxnx4";
+  version = "0.2.1.0";
+  sha256 = "0zk2ip32h6faqa1pfmiw242fdarr63lds4j828ix7qhrjifwiw4p";
   buildDepends = [ deepseq hashable ];
   meta = {
     description = "Efficient hashing-based container types";
diff --git a/pkgs/development/libraries/haskell/xml-conduit/default.nix b/pkgs/development/libraries/haskell/xml-conduit/default.nix
index 778986d6a96d..8c654ca90465 100644
--- a/pkgs/development/libraries/haskell/xml-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/xml-conduit/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "xml-conduit";
-  version = "0.5.3.1";
-  sha256 = "124c88x3ww1414c7s3wx7z1kqy37m9mwihiwyamgz25lg502n8gb";
+  version = "0.5.4";
+  sha256 = "1apvh2xlh4wkrfak0yqycsadsnkybfwjb86zqalm8ni9w2p9lwr6";
   buildDepends = [
     attoparsec attoparsecConduit blazeBuilder blazeBuilderConduit
     conduit dataDefault failure monadControl systemFilepath text
diff --git a/pkgs/development/libraries/haskell/yesod-core/default.nix b/pkgs/development/libraries/haskell/yesod-core/default.nix
index 208f4e82b0e8..84c578786c6a 100644
--- a/pkgs/development/libraries/haskell/yesod-core/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-core/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-core";
-  version = "0.10.2.1";
-  sha256 = "00cw31k6fkffryiqji33x56hqxivwg2c3rgaqmplph9zjpndvgb2";
+  version = "0.10.2.2";
+  sha256 = "1aghra5pmmykl9fvsb18mbpawvwqwv3iwls33m166b0czzdwlrlv";
   buildDepends = [
     aeson blazeBuilder blazeHtml caseInsensitive cereal clientsession
     conduit cookie failure fastLogger hamlet httpTypes liftedBase
diff --git a/pkgs/development/libraries/haskell/yesod-form/default.nix b/pkgs/development/libraries/haskell/yesod-form/default.nix
index 981f5500f499..663a14f7e776 100644
--- a/pkgs/development/libraries/haskell/yesod-form/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-form/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-form";
-  version = "0.4.2";
-  sha256 = "0vl938ngf8lbpylra9wmywgcdffi9prhbz45d6cl1hra9hlsavj6";
+  version = "0.4.2.1";
+  sha256 = "0zpmyqxbknz8pdib1gdf410jv4xndn4pphdigagqxl5m5c2hi1v2";
   buildDepends = [
     blazeBuilder blazeHtml dataDefault emailValidate hamlet network
     persistent shakespeareCss shakespeareJs text time transformers wai
diff --git a/pkgs/development/libraries/haskell/yesod/default.nix b/pkgs/development/libraries/haskell/yesod/default.nix
index c8e719b90e8b..8547f9fdf070 100644
--- a/pkgs/development/libraries/haskell/yesod/default.nix
+++ b/pkgs/development/libraries/haskell/yesod/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod";
-  version = "0.10.1.3";
-  sha256 = "01r9b88gsj7f1mn56nm5dyzj2s46l9pg9p7fjwkf0l8zdfmrbflw";
+  version = "0.10.1.4";
+  sha256 = "0glyl1q5szwk1r2l2amq7w42kjl5wda33bvz64rvav1hngkpvii0";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/zeromq-haskell/default.nix b/pkgs/development/libraries/haskell/zeromq-haskell/default.nix
index ef2eb97063aa..8f09178a7c2b 100644
--- a/pkgs/development/libraries/haskell/zeromq-haskell/default.nix
+++ b/pkgs/development/libraries/haskell/zeromq-haskell/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "zeromq-haskell";
-  version = "0.8.3";
-  sha256 = "1gp85fbgylsqkxacgdxv4ifvgvwca03gy88raphqhrnk59bmjgzd";
+  version = "0.8.4";
+  sha256 = "0lvjszi08r5wm5ch03153y7lir6cdgqr2gnhq45j4b0kid6gkpv3";
   extraLibraries = [ zeromq ];
   meta = {
     homepage = "http://github.com/twittner/zeromq-haskell/";
diff --git a/pkgs/development/libraries/java/swt/default.nix b/pkgs/development/libraries/java/swt/default.nix
index 311d05d1aad8..59f31ac3139a 100644
--- a/pkgs/development/libraries/java/swt/default.nix
+++ b/pkgs/development/libraries/java/swt/default.nix
@@ -2,20 +2,22 @@
 , libXtst
 , libXi
 , mesa
+, webkit
+, libsoup
 }:
 
 stdenv.mkDerivation {
-  name = "swt-3.6.1";
+  name = "swt-3.7.2-201202080800";
   builder = ./builder.sh;
 
   # Alas, the Eclipse Project apparently doesn't produce source-only
   # releases of SWT.  So we just grab a binary release and extract
   # "src.zip" from that.
   src = fetchurl {
-    url = http://eclipse.ialto.com/eclipse/downloads/drops/R-3.6.1-201009090800/swt-3.6.1-gtk-linux-x86.zip;
-    sha1 = "e629e0b65296b67931f1fce8ab72419818c9747f";
+    url = "http://eclipse.ialto.com/eclipse/downloads/drops/R-3.7.2-201202080800/swt-3.7.2-gtk-linux-x86.zip";
+    sha256 = "10si8kmc7c9qmbpzs76609wkfb784pln3qpmra73gb3fbk7z8caf";
   };
 
-  buildInputs = [unzip jdk pkgconfig gtk libXtst libXi mesa];
+  buildInputs = [unzip jdk pkgconfig gtk libXtst libXi mesa webkit libsoup];
   inherit jdk;
 }
diff --git a/pkgs/development/libraries/libnice/default.nix b/pkgs/development/libraries/libnice/default.nix
index 1f3134b3cfb2..5a3cb9d041b5 100644
--- a/pkgs/development/libraries/libnice/default.nix
+++ b/pkgs/development/libraries/libnice/default.nix
@@ -1,14 +1,14 @@
-{stdenv, fetchurl, pkgconfig, glib}:
+{ stdenv, fetchurl, pkgconfig, glib, gupnp_igd, gstreamer, gst_plugins_base }:
 
-stdenv.mkDerivation {
-  name = "libnice-0.0.10";
+stdenv.mkDerivation rec {
+  name = "libnice-0.1.1";
   
   src = fetchurl {
-    url = http://nice.freedesktop.org/releases/libnice-0.0.10.tar.gz;
-    sha256 = "04r7syk67ihw8gzy83f603kmwvqv2dpd1mrfzpk4p72vjqrqidl6";
+    url = "http://nice.freedesktop.org/releases/${name}.tar.gz";
+    sha256 = "0jcpb953jn7c3ng2vbkljybzh63x6mg4m6rjxj1s1iccm3fi6qki";
   };
 
-  buildInputs = [ pkgconfig glib ];
+  buildInputs = [ pkgconfig glib gupnp_igd gstreamer gst_plugins_base ];
 
   meta = {
     homepage = http://nice.freedesktop.org/wiki/;
diff --git a/pkgs/development/libraries/libpcap/default.nix b/pkgs/development/libraries/libpcap/default.nix
index c6446ab27a54..8f786469a555 100644
--- a/pkgs/development/libraries/libpcap/default.nix
+++ b/pkgs/development/libraries/libpcap/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, flex, bison }:
 
 stdenv.mkDerivation rec {
-  name = "libpcap-1.1.1";
+  name = "libpcap-1.2.1";
   
   src = fetchurl {
     url = "http://www.tcpdump.org/release/${name}.tar.gz";
-    sha256 = "11asds0r0vd9skbwfbgb1d2hqxr1d92kif4qhhqx2mbyahawm32h";
+    sha256 = "1gfy00zv6blplw3405q46khmjhdnp6ylblvygjjjk5skgvpscdd1";
   };
   
   buildNativeInputs = [ flex bison ];
@@ -14,8 +14,6 @@ stdenv.mkDerivation rec {
 
   preInstall = ''mkdir -p $out/bin'';
   
-  patches = [ ./libpcap_amd64.patch ];
-
   crossAttrs = {
     # Stripping hurts in static libraries
     dontStrip = true;
diff --git a/pkgs/development/libraries/libpcap/libpcap_amd64.patch b/pkgs/development/libraries/libpcap/libpcap_amd64.patch
deleted file mode 100644
index 6b563e15d2d5..000000000000
--- a/pkgs/development/libraries/libpcap/libpcap_amd64.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/pcap.c b/pcap.c
-index 010ef74..0bfb191 100644
---- a/pcap.c
-+++ b/pcap.c
-@@ -211,7 +211,7 @@ pcap_set_buffer_size(pcap_t *p, int buffer_size)
- 	return 0;
- }
- 
--int
-+pcap_t *
- pcap_activate(pcap_t *p)
- {
- 	int status;
-diff --git a/pcap/pcap.h b/pcap/pcap.h
-index ea18edc..3910a2d 100644
---- a/pcap/pcap.h
-+++ b/pcap/pcap.h
-@@ -263,7 +263,7 @@ int	pcap_can_set_rfmon(pcap_t *);
- int	pcap_set_rfmon(pcap_t *, int);
- int	pcap_set_timeout(pcap_t *, int);
- int	pcap_set_buffer_size(pcap_t *, int);
--int	pcap_activate(pcap_t *);
-+pcap_t	*pcap_activate(pcap_t *);
- 
- pcap_t	*pcap_open_live(const char *, int, int, int, char *);
- pcap_t	*pcap_open_dead(int, int);
diff --git a/pkgs/development/libraries/loudmouth/default.nix b/pkgs/development/libraries/loudmouth/default.nix
index 1de9e485f105..ffa3ebdef926 100644
--- a/pkgs/development/libraries/loudmouth/default.nix
+++ b/pkgs/development/libraries/loudmouth/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "loudmouth-1.4.3";
     
   src = fetchurl {
-    url = http://ftp.gnome.org/pub/GNOME/sources/loudmouth/1.4/loudmouth-1.4.3.tar.bz2;
+    url = mirror://gnome/sources/loudmouth/1.4/loudmouth-1.4.3.tar.bz2;
     md5 = "55339ca42494690c3942ee1465a96937";
   };
     
diff --git a/pkgs/development/libraries/phonon-backend-gstreamer/default.nix b/pkgs/development/libraries/phonon-backend-gstreamer/default.nix
index d4fb593ca80c..b2677eb1e7a5 100644
--- a/pkgs/development/libraries/phonon-backend-gstreamer/default.nix
+++ b/pkgs/development/libraries/phonon-backend-gstreamer/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, cmake, automoc4, qt4, pkgconfig, phonon, gst_all, xz }:
+{ stdenv, fetchurl, cmake, automoc4, qt4, pkgconfig, phonon, gstreamer
+, gst_plugins_base }:
 
 let
   version = "4.6.0";
@@ -13,9 +14,9 @@ stdenv.mkDerivation rec {
     sha256 = "0bwkd1dmj8p4m5xindh6ixfvifq36qmvfn246vx22syqfl6f1m2v";
   };
 
-  buildInputs = [ phonon qt4 gst_all.gstreamer gst_all.gstPluginsBase ];
+  buildInputs = [ phonon qt4 gstreamer gst_plugins_base ];
 
-  buildNativeInputs = [ cmake automoc4 xz pkgconfig ];
+  buildNativeInputs = [ cmake automoc4 pkgconfig ];
 
   meta = {
     homepage = http://phonon.kde.org/;
diff --git a/pkgs/development/libraries/qt-4.x/4.8/default.nix b/pkgs/development/libraries/qt-4.x/4.8/default.nix
index dfaf63e67257..2c5a7814bc18 100644
--- a/pkgs/development/libraries/qt-4.x/4.8/default.nix
+++ b/pkgs/development/libraries/qt-4.x/4.8/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, substituteAll
-, alsaLib, gstreamer, gstPluginsBase
+, alsaLib, gstreamer, gst_plugins_base
 , libXrender, libXinerama, libXcursor, libXmu , libXv, libXext
 , libXfixes, libXrandr, libSM, freetype, fontconfig
 , zlib, libjpeg, libpng, libmng, which, mesa, openssl, dbus, cups, pkgconfig
@@ -80,7 +80,7 @@ stdenv.mkDerivation rec {
     [ libXrender libXrandr libXinerama libXcursor libXext libXfixes
       libXv libXi libSM mesa
       alsaLib zlib libpng openssl dbus.libs freetype fontconfig glib
-      gstreamer gstPluginsBase
+      gstreamer gst_plugins_base
     ];
 
   # The following libraries are only used in plugins
diff --git a/pkgs/development/libraries/rte/default.nix b/pkgs/development/libraries/rte/default.nix
deleted file mode 100644
index 1862bad3947c..000000000000
--- a/pkgs/development/libraries/rte/default.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{stdenv, fetchurl}:
-
-stdenv.mkDerivation {
-  name = "rte-0.5.6";
-  src = fetchurl {
-    url = mirror://sourceforge/zapping/rte-0.5.6.tar.bz2;
-    md5 = "6259cdff255af71c23a4576e7c5664a0";
-  };
-}
diff --git a/pkgs/development/libraries/telepathy-gabble/default.nix b/pkgs/development/libraries/telepathy-gabble/default.nix
deleted file mode 100644
index c188f271742c..000000000000
--- a/pkgs/development/libraries/telepathy-gabble/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, libxslt, telepathy_glib, loudmouth }:
-
-stdenv.mkDerivation rec {
-  name = "telepathy-gabble-0.7.2";
-
-  src = fetchurl {
-    url = "${meta.homepage}/releases/telepathy-gabble/${name}.tar.gz";
-    sha256 = "0r1j475a5s2a4f10hybmavf4kf6nrnjnv091dpic5nl2asdilb7i";
-  };
-
-  propagatedBuildInputs = [telepathy_glib loudmouth];
-  
-  buildInputs = [pkgconfig libxslt];
-  
-  meta = {
-    homepage = http://telepathy.freedesktop.org;
-  };
-}
diff --git a/pkgs/development/libraries/telepathy-qt/default.nix b/pkgs/development/libraries/telepathy-qt/default.nix
deleted file mode 100644
index bf7acaef76a5..000000000000
--- a/pkgs/development/libraries/telepathy-qt/default.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{stdenv, fetchurl, cmake, qt4}:
-
-stdenv.mkDerivation {
-  name = "telepathy-qt-0.14.1";
-  src = fetchurl {
-    url = mirror://sourceforge/tapioca-voip/telepathy-qt-0.14.1.tar.gz;
-    md5 = "476e3fbd68b3eaf5354559be7de99333";
-  };
-  buildInputs = [ cmake qt4 ];
-}
diff --git a/pkgs/development/libraries/telepathy/farsight/default.nix b/pkgs/development/libraries/telepathy/farsight/default.nix
new file mode 100644
index 000000000000..0f5b8b5d82c7
--- /dev/null
+++ b/pkgs/development/libraries/telepathy/farsight/default.nix
@@ -0,0 +1,16 @@
+{ stdenv, fetchurl, telepathy_glib, farsight2, gst_plugins_base, dbus_glib
+, pkgconfig, libxslt, python, gstreamer, gst_python, pygobject }:
+
+stdenv.mkDerivation rec {
+  name = "telepathy-farsight-0.0.19";
+
+  src = fetchurl {
+    url = "http://telepathy.freedesktop.org/releases/telepathy-farsight/${name}.tar.gz";
+    sha256 = "0sajy2w109zc6assqby3cfqr7cckwhfsngkhjczz67grb6rbi29c";
+  };
+
+  buildInputs = [ gst_plugins_base gst_python pygobject ];
+
+  propagatedBuildInputs = [ dbus_glib farsight2 telepathy_glib gstreamer ];
+  buildNativeInputs = [ pkgconfig python libxslt];
+}
diff --git a/pkgs/development/libraries/telepathy-glib/default.nix b/pkgs/development/libraries/telepathy/glib/default.nix
index 5864253bbb41..31301d44f49a 100644
--- a/pkgs/development/libraries/telepathy-glib/default.nix
+++ b/pkgs/development/libraries/telepathy/glib/default.nix
@@ -1,16 +1,18 @@
 { stdenv, fetchurl, dbus_glib, glib, python, pkgconfig, libxslt }:
 
 stdenv.mkDerivation rec {
-  name = "telepathy-glib-0.7.0";
+  name = "telepathy-glib-0.17.5";
 
   src = fetchurl {
     url = "${meta.homepage}/releases/telepathy-glib/${name}.tar.gz";
-    sha256 = "0hf1jrgisr7skrji7djh66q0ic351vlsm65xqy982p5d0axzxkz5";
+    sha256 = "13gylgwgjp29zakzj5kb4h0j5zh30dsl8ch7hp3dp4nmy4vdj6h1";
   };
 
   propagatedBuildInputs = [dbus_glib glib python];
   
   buildInputs = [pkgconfig libxslt];
+
+  patches = [ ./fix-pkgconfig.patch ];
   
   meta = {
     homepage = http://telepathy.freedesktop.org;
diff --git a/pkgs/development/libraries/telepathy/glib/fix-pkgconfig.patch b/pkgs/development/libraries/telepathy/glib/fix-pkgconfig.patch
new file mode 100644
index 000000000000..78c3e6af0414
--- /dev/null
+++ b/pkgs/development/libraries/telepathy/glib/fix-pkgconfig.patch
@@ -0,0 +1,14 @@
+Adjust telepathy-glib.pc to our version of pkg-config
+diff --git a/telepathy-glib/telepathy-glib.pc.in b/telepathy-glib/telepathy-glib.pc.in
+index e2ddf03..6038011 100644
+--- a/telepathy-glib/telepathy-glib.pc.in
++++ b/telepathy-glib/telepathy-glib.pc.in
+@@ -6,7 +6,6 @@ includedir=@includedir@
+ Name: Telepathy-GLib
+ Description: GLib utility library for the Telepathy framework
+ Version: @VERSION@
+-Requires: pkg-config >= 0.21
+-Requires.private: dbus-glib-1 >= 0.82, glib-2.0 >= 2.24, gobject-2.0 >= 2.24, gio-2.0 >= 2.24
++Requires: pkg-config >= 0.21 dbus-glib-1 >= 0.82, glib-2.0 >= 2.24, gobject-2.0 >= 2.24, gio-2.0 >= 2.24
+ Libs: -L${libdir} -ltelepathy-glib
+ Cflags: -I${includedir}/telepathy-1.0
diff --git a/pkgs/development/libraries/telepathy/qt/default.nix b/pkgs/development/libraries/telepathy/qt/default.nix
new file mode 100644
index 000000000000..c23e351b4ff7
--- /dev/null
+++ b/pkgs/development/libraries/telepathy/qt/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, cmake, qt4, pkgconfig, python, libxslt, dbus_glib
+, telepathy_farsight, telepathy_glib }:
+
+stdenv.mkDerivation rec {
+  name = "telepathy-qt-0.9.0";
+
+  src = fetchurl {
+    url = "http://telepathy.freedesktop.org/releases/telepathy-qt/${name}.tar.gz";
+    sha256 = "0v3hnvzm3k2z99rc1znxgriqvf1n7wyjdzzsld0czhbmrz9fhang";
+  };
+
+  buildNativeInputs = [ cmake pkgconfig python libxslt ];
+  propagatedBuildInputs = [ qt4 dbus_glib telepathy_farsight telepathy_glib ];
+
+  patches = [ ./missing-include.patch ];
+
+  preBuild = ''
+    NIX_CFLAGS_COMPILE+=" `pkg-config --cflags farsight2-0.10 dbus-glib-1`"
+    '';
+}
diff --git a/pkgs/development/libraries/telepathy/qt/missing-include.patch b/pkgs/development/libraries/telepathy/qt/missing-include.patch
new file mode 100644
index 000000000000..c5e3e259aa2e
--- /dev/null
+++ b/pkgs/development/libraries/telepathy/qt/missing-include.patch
@@ -0,0 +1,11 @@
+diff --git a/TelepathyQt/Farsight/CMakeLists.txt b/TelepathyQt/Farsight/CMakeLists.txt
+index 89ec354..376f3cc 100644
+--- a/TelepathyQt/Farsight/CMakeLists.txt
++++ b/TelepathyQt/Farsight/CMakeLists.txt
+@@ -1,5 +1,6 @@
+ if(FARSIGHT_COMPONENTS_FOUND)
+     include_directories(${TELEPATHY_FARSIGHT_INCLUDE_DIR}
++                        ${TELEPATHY_GLIB_INCLUDE_DIR}
+                         ${GSTREAMER_INCLUDE_DIR}
+                         ${GLIB2_INCLUDE_DIR}
+                         ${LIBXML2_INCLUDE_DIR}
diff --git a/pkgs/development/libraries/webkit/default.nix b/pkgs/development/libraries/webkit/default.nix
index 2daa1796318f..7ad894215df3 100644
--- a/pkgs/development/libraries/webkit/default.nix
+++ b/pkgs/development/libraries/webkit/default.nix
@@ -17,7 +17,7 @@ rec {
     ];
 
   propagatedBuildInputs = [
-    gstreamer gstPluginsBase gstFfmpeg gstPluginsGood
+    gstreamer gst_plugins_base gst_ffmpeg gst_plugins_good
     ];
 
   configureFlags = [
@@ -85,6 +85,6 @@ rec {
     maintainers = [stdenv.lib.maintainers.raskin];
   };
   passthru = {
-    inherit gstreamer gstPluginsBase gstPluginsGood gstFfmpeg;
+    inherit gstreamer gst_plugins_base gst_plugins_good gst_ffmpeg;
   };
 }
diff --git a/pkgs/development/libraries/webkit/svn.nix b/pkgs/development/libraries/webkit/svn.nix
index d41d4683d6e9..db6fe1ba55c8 100644
--- a/pkgs/development/libraries/webkit/svn.nix
+++ b/pkgs/development/libraries/webkit/svn.nix
@@ -17,7 +17,7 @@ rec {
     ];
 
   propagatedBuildInputs = [
-    gstreamer gstPluginsBase gstFfmpeg gstPluginsGood
+    gstreamer gst_plugins_base gst_ffmpeg gst_plugins_good
     ];
 
   configureCommand = "./autogen.sh ";
@@ -86,6 +86,6 @@ rec {
     maintainers = [stdenv.lib.maintainers.raskin];
   };
   passthru = {
-    inherit gstreamer gstPluginsBase gstPluginsGood gstFfmpeg;
+    inherit gstreamer gst_plugins_base gst_plugins_good gst_ffmpeg;
   };
 }
diff --git a/pkgs/development/libraries/wxGTK-2.8/default.nix b/pkgs/development/libraries/wxGTK-2.8/default.nix
index 824c35876551..43bcfea4f2e3 100644
--- a/pkgs/development/libraries/wxGTK-2.8/default.nix
+++ b/pkgs/development/libraries/wxGTK-2.8/default.nix
@@ -1,8 +1,12 @@
 { stdenv, fetchurl, pkgconfig, gtk, libXinerama, libSM, libXxf86vm, xf86vidmodeproto
-, gstreamer, gstPluginsBase, GConf
-, mesa, compat24 ? false, compat26 ? true, unicode ? true,
+, gstreamer, gst_plugins_base, GConf
+, withMesa ? true, mesa ? null, compat24 ? false, compat26 ? true, unicode ? true,
 }:
 
+assert withMesa -> mesa != null;
+
+with stdenv.lib;
+
 stdenv.mkDerivation {
   name = "wxGTK-2.8.12";
 
@@ -11,7 +15,8 @@ stdenv.mkDerivation {
     sha256 = "1gjs9vfga60mk4j4ngiwsk9h6c7j22pw26m3asxr1jwvqbr8kkqk";
   };
 
-  buildInputs = [ gtk libXinerama libSM libXxf86vm xf86vidmodeproto mesa gstreamer gstPluginsBase GConf ];
+  buildInputs = [ gtk libXinerama libSM libXxf86vm xf86vidmodeproto gstreamer gst_plugins_base GConf ]
+    ++ optional withMesa mesa;
 
   buildNativeInputs = [ pkgconfig ];
 
@@ -21,15 +26,14 @@ stdenv.mkDerivation {
     (if compat26 then "--enable-compat26" else "--disable-compat26")
     "--disable-precomp-headers"
     (if unicode then "--enable-unicode" else "")
-    "--with-opengl"
     "--enable-mediactrl"
-  ];
+  ] ++ optional withMesa "--with-opengl";
 
   # This variable is used by configure to find some dependencies.
   SEARCH_INCLUDE =
     "${libXinerama}/include ${libSM}/include ${libXxf86vm}/include";
 
-  SEARCH_LIB = "${mesa}/lib";
+  SEARCH_LIB = optionalString withMesa "${mesa}/lib";
 
   # Work around a bug in configure.
   NIX_CFLAGS_COMPILE = "-DHAVE_X11_XLIB_H=1";
diff --git a/pkgs/development/libraries/wxGTK-2.9/2.9.0.nix b/pkgs/development/libraries/wxGTK-2.9/2.9.0.nix
index 1a614fada906..619806fb7b27 100644
--- a/pkgs/development/libraries/wxGTK-2.9/2.9.0.nix
+++ b/pkgs/development/libraries/wxGTK-2.9/2.9.0.nix
@@ -1,8 +1,12 @@
 { stdenv, fetchurl, pkgconfig, gtk, libXinerama, libSM, libXxf86vm, xf86vidmodeproto
-, gstreamer, gstPluginsBase, GConf
-, mesa, compat24 ? false, compat26 ? true, unicode ? true,
+, gstreamer, gst_plugins_base, GConf
+, withMesa ? true, mesa ? null, compat24 ? false, compat26 ? true, unicode ? true,
 }:
 
+assert withMesa -> mesa != null;
+
+with stdenv.lib;
+
 stdenv.mkDerivation {
   name = "wxwidgets-2.9.0";
 
@@ -11,7 +15,8 @@ stdenv.mkDerivation {
     sha256 = "10n75mpypd9411b29gxmi0g2s7dgbfwkgiyhxwkjsyrmyvfc3xcc";
   };
 
-  buildInputs = [ gtk libXinerama libSM libXxf86vm xf86vidmodeproto mesa gstreamer gstPluginsBase GConf ];
+  buildInputs = [ gtk libXinerama libSM libXxf86vm xf86vidmodeproto gstreamer gst_plugins_base GConf ]
+    ++ optional withMesa mesa;
 
   buildNativeInputs = [ pkgconfig ];
 
@@ -21,11 +26,10 @@ stdenv.mkDerivation {
     (if compat26 then "--enable-compat26" else "--disable-compat26")
     "--disable-precomp-headers"
     (if unicode then "--enable-unicode" else "")
-    "--with-opengl"
     "--enable-mediactrl"
-  ];
+  ] ++ optional withMesa "--with-opengl";
 
-  SEARCH_LIB = "${mesa}/lib";
+  SEARCH_LIB = optionalString withMesa "${mesa}/lib";
 
   preConfigure = "
     substituteInPlace configure --replace 'SEARCH_INCLUDE=' 'DUMMY_SEARCH_INCLUDE='
diff --git a/pkgs/development/libraries/wxGTK-2.9/2.9.1.nix b/pkgs/development/libraries/wxGTK-2.9/2.9.1.nix
index c1056bb9ef1d..d59ab4880c33 100644
--- a/pkgs/development/libraries/wxGTK-2.9/2.9.1.nix
+++ b/pkgs/development/libraries/wxGTK-2.9/2.9.1.nix
@@ -1,8 +1,12 @@
 { stdenv, fetchurl, pkgconfig, gtk, libXinerama, libSM, libXxf86vm, xf86vidmodeproto
-, gstreamer, gstPluginsBase, GConf
-, mesa, compat24 ? false, compat26 ? true, unicode ? true,
+, gstreamer, gst_plugins_base, GConf
+, withMesa ? true, mesa ? null, compat24 ? false, compat26 ? true, unicode ? true,
 }:
 
+assert withMesa -> mesa != null;
+
+with stdenv.lib;
+
 stdenv.mkDerivation {
   name = "wxwidgets-2.9.1";
 
@@ -11,7 +15,8 @@ stdenv.mkDerivation {
     sha256 = "1f6pdlzjawhhs17hmimk0l1n3g4g48n2iqrgl181xqfrbxyz75b8";
   };
 
-  buildInputs = [ gtk libXinerama libSM libXxf86vm xf86vidmodeproto mesa gstreamer gstPluginsBase GConf ];
+  buildInputs = [ gtk libXinerama libSM libXxf86vm xf86vidmodeproto gstreamer gst_plugins_base GConf ]
+    ++ optional withMesa mesa;
 
   buildNativeInputs = [ pkgconfig ];
 
@@ -21,11 +26,10 @@ stdenv.mkDerivation {
     (if compat26 then "--enable-compat26" else "--disable-compat26")
     "--disable-precomp-headers"
     (if unicode then "--enable-unicode" else "")
-    "--with-opengl"
     "--enable-mediactrl"
-  ];
+  ] ++ optional withMesa "--with-opengl";
 
-  SEARCH_LIB = "${mesa}/lib";
+  SEARCH_LIB = optionalString withMesa "${mesa}/lib";
 
   preConfigure = "
     substituteInPlace configure --replace 'SEARCH_INCLUDE=' 'DUMMY_SEARCH_INCLUDE='
diff --git a/pkgs/development/libraries/zvbi/default.nix b/pkgs/development/libraries/zvbi/default.nix
deleted file mode 100644
index a0e111c482c1..000000000000
--- a/pkgs/development/libraries/zvbi/default.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ pngSupport ? true
-, stdenv, fetchurl, x11, libpng ? null}:
-
-assert x11 != null;
-assert pngSupport -> libpng != null;
-
-stdenv.mkDerivation {
-  name = "zvbi-0.2.12";
-  src = fetchurl {
-    url = mirror://sourceforge/zapping/zvbi-0.2.22.tar.bz2;
-    md5 = "a01cbe39a48579ba92582ff75a5e37c2";
-  };
-  buildInputs = [x11 (if pngSupport then libpng else null)];
-  inherit pngSupport;
-}
diff --git a/pkgs/development/tools/build-managers/scons/default.nix b/pkgs/development/tools/build-managers/scons/default.nix
index 9d6ab6ba8159..ddd8927a9a4c 100644
--- a/pkgs/development/tools/build-managers/scons/default.nix
+++ b/pkgs/development/tools/build-managers/scons/default.nix
@@ -2,7 +2,7 @@
 
 let
   name = "scons";
-  version = "2.0.1";
+  version = "2.1.0";
 in
 
 stdenv.mkDerivation {
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/scons/${name}-${version}.tar.gz";
-    sha256 = "0qk74nrnm9qlijrq6gmy8cyhjgp0gis4zx44divnr8n487d5308a";
+    sha256 = "4139ed14f60dd2ebcd47c59984d14705636180eb27b3d1b2949489e514b1921d";
   };
 
   buildInputs = [python makeWrapper];
@@ -27,13 +27,13 @@ stdenv.mkDerivation {
     homepage = "http://scons.org/";
     description = "An improved, cross-platform substitute for Make";
     license = "MIT";
-    longDescription =
-    '' SCons is an Open Source software construction tool. Think of
-       SCons as an improved, cross-platform substitute for the classic
-       Make utility with integrated functionality similar to
-       autoconf/automake and compiler caches such as ccache. In short,
-       SCons is an easier, more reliable and faster way to build
-       software.
+    longDescription = ''
+      SCons is an Open Source software construction tool. Think of
+      SCons as an improved, cross-platform substitute for the classic
+      Make utility with integrated functionality similar to
+      autoconf/automake and compiler caches such as ccache. In short,
+      SCons is an easier, more reliable and faster way to build
+      software.
     '';
     platforms = stdenv.lib.platforms.all;
     maintainers = [ stdenv.lib.maintainers.simons ];
diff --git a/pkgs/development/tools/haskell/BNFC-meta/default.nix b/pkgs/development/tools/haskell/BNFC-meta/default.nix
index b269ebb4a88c..4f2e4b0968b6 100644
--- a/pkgs/development/tools/haskell/BNFC-meta/default.nix
+++ b/pkgs/development/tools/haskell/BNFC-meta/default.nix
@@ -1,10 +1,10 @@
-{ cabal, alexMeta, happyMeta, haskellSrcMeta }:
+{ cabal, alexMeta, happyMeta, haskellSrcMeta, syb }:
 
 cabal.mkDerivation (self: {
   pname = "BNFC-meta";
-  version = "0.2.2";
-  sha256 = "07jfc0dcrcckibbw0xca1h7x3lnc9jfylfkcs23f0hyg31irf8dx";
-  buildDepends = [ alexMeta happyMeta haskellSrcMeta ];
+  version = "0.3";
+  sha256 = "17vmszgq9cyayqlykjbwzvm8mim641vhpzcrdr3l6zb84hr29xgs";
+  buildDepends = [ alexMeta happyMeta haskellSrcMeta syb ];
   meta = {
     description = "Deriving Quasi-Quoters from BNF Grammars";
     license = self.stdenv.lib.licenses.gpl2;
diff --git a/pkgs/development/tools/haskell/alex-meta/default.nix b/pkgs/development/tools/haskell/alex-meta/default.nix
index 5ec29160bb42..f9c700824cbd 100644
--- a/pkgs/development/tools/haskell/alex-meta/default.nix
+++ b/pkgs/development/tools/haskell/alex-meta/default.nix
@@ -1,10 +1,10 @@
-{ cabal, haskellSrcMeta }:
+{ cabal, haskellSrcMeta, QuickCheck }:
 
 cabal.mkDerivation (self: {
   pname = "alex-meta";
-  version = "0.2.0.2";
-  sha256 = "1v47p1nrx2nb92aasq7ml6i0sy1nfyybgm9n4r1sw1g86dg1y8z1";
-  buildDepends = [ haskellSrcMeta ];
+  version = "0.3.0.2";
+  sha256 = "0kbscnax236qhr18ix9rnfl70z5rgl9zysx5mzd2vrp7h2dymigg";
+  buildDepends = [ haskellSrcMeta QuickCheck ];
   meta = {
     description = "Quasi-quoter for Alex lexers";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/tools/haskell/cabal2nix/default.nix b/pkgs/development/tools/haskell/cabal2nix/default.nix
index a81b8fd7891c..83909d0ff80b 100644
--- a/pkgs/development/tools/haskell/cabal2nix/default.nix
+++ b/pkgs/development/tools/haskell/cabal2nix/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cabal2nix";
-  version = "1.27";
-  sha256 = "1s9gbnzx2wcrp9gg0vdpcv61jmv44hmilb5rj4ighnbfv7kv365z";
+  version = "1.28";
+  sha256 = "04996v4b0767qzyi2g42anl30h1abaip77hvdj6hhfrvyrgdfsaw";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [ Cabal filepath hackageDb HTTP mtl regexPosix ];
diff --git a/pkgs/development/tools/haskell/uuagc/default.nix b/pkgs/development/tools/haskell/uuagc/default.nix
index 81178166c76e..158d48689f6c 100644
--- a/pkgs/development/tools/haskell/uuagc/default.nix
+++ b/pkgs/development/tools/haskell/uuagc/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "uuagc";
-  version = "0.9.40.2";
-  sha256 = "1qc5sqm2lqysm5rplzc229rfw5750w4z8b7cgxaid7jjv4csrbf8";
+  version = "0.9.40.3";
+  sha256 = "053p7cbis843zn0qg8imc77xnfj4kna8wwfanxbj8kcapcqvwihl";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/games/dwarf-fortress/default.nix b/pkgs/games/dwarf-fortress/default.nix
index 9d363851148d..24c0b40edb3c 100644
--- a/pkgs/games/dwarf-fortress/default.nix
+++ b/pkgs/games/dwarf-fortress/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, SDL, SDL_image, SDL_ttf, gnomegtk, glib, mesa, openal, glibc, libsndfile}:
+{stdenv, fetchurl, SDL, SDL_image, SDL_ttf, gtk, glib, mesa, openal, glibc, libsndfile}:
 
 assert stdenv.system == "i686-linux";
 
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
     ln -s \$DF_DIR/save \$DF_DIR/data/
 
     # now run Dwarf Fortress! 
-    export LD_LIBRARY_PATH=\$DF_DIR/df_linux/libs/:${SDL}/lib:${SDL_image}/lib/:${SDL_ttf}/lib/:${gnomegtk}/lib/:${glib}/lib/:${mesa}/lib/:${openal}/lib/
+    export LD_LIBRARY_PATH=\$DF_DIR/df_linux/libs/:${SDL}/lib:${SDL_image}/lib/:${SDL_ttf}/lib/:${gtk}/lib/:${glib}/lib/:${mesa}/lib/:${openal}/lib/
     \$DF_DIR/df "\$@"
     EOF
 
diff --git a/pkgs/games/spring/default.nix b/pkgs/games/spring/default.nix
index da07f14b6738..99b0c35aedb4 100644
--- a/pkgs/games/spring/default.nix
+++ b/pkgs/games/spring/default.nix
@@ -6,11 +6,11 @@
 stdenv.mkDerivation rec {
 
   name = "spring-${version}";
-  version = "0.86.0";
+  version = "0.87.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/springrts/spring_86.0_src.tar.lzma";
-    sha256 = "728bc95ac551d2199539f9ec9a79254ebd4414e6aa81e03a6c4534cec61f7bca";
+    url = "mirror://sourceforge/springrts/spring_87.0_src.tar.lzma";
+    sha256 = "4c8528966b62e3fede63a4acb3cd5f13ecfed195688e135293bdc747980738b2";
   };
 
   buildInputs = [ cmake lzma boost libdevil zlib p7zip openal libvorbis freetype SDL
@@ -23,15 +23,13 @@ stdenv.mkDerivation rec {
       --replace "which" "type -p"
   '';
 
-  #patches = [ ./gcc44.patch];
-
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     homepage = http://springrts.com/;
     description = "A powerful real-time strategy(RTS) game engine";
     license = licenses.gpl2;
-    maintainers = [ maintainers.phreedom ];
+    maintainers = [ maintainers.phreedom maintainers.qknight ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/games/spring/gcc44.patch b/pkgs/games/spring/gcc44.patch
deleted file mode 100644
index 4df1e6e825ff..000000000000
--- a/pkgs/games/spring/gcc44.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- spring_0.82.6.1-orig/rts/lib/lobby/Connection.h     2010-10-15 23:08:24.000000000 +0300
-+++ spring_0.82.6.1/rts/lib/lobby/Connection.h  2010-11-11 14:48:55.000000000 +0200
-@@ -7,6 +7,7 @@
- #include <boost/asio/deadline_timer.hpp>
- #include <boost/asio/ip/tcp.hpp>
- #include <string>
-+#include <list>
- 
- struct ClientStatus
- {
diff --git a/pkgs/games/spring/springlobby.nix b/pkgs/games/spring/springlobby.nix
index 29ef95588193..06c98411f5b4 100644
--- a/pkgs/games/spring/springlobby.nix
+++ b/pkgs/games/spring/springlobby.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, cmake, wxGTK, openal, pkgconfig, curl, libtorrentRasterbar
-, gettext, bash, gawk, boost }:
+, gettext, bash, gawk, boost}:
 stdenv.mkDerivation rec {
 
   name = "springlobby-${version}";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "37cf3aa1ed78a0ded782cc5c692301619dbb2cf4749bccbf059c51707daaf734";
   };
 
-  buildInputs = [ cmake wxGTK openal pkgconfig curl gettext libtorrentRasterbar boost ];
+  buildInputs = [ cmake wxGTK openal pkgconfig curl gettext libtorrentRasterbar boost];
 
   prePatch = ''
     substituteInPlace tools/regen_config_header.sh --replace "#!/usr/bin/env bash" "#!${bash}/bin/bash"
@@ -18,8 +18,13 @@ stdenv.mkDerivation rec {
     substituteInPlace CMakeLists.txt --replace "boost_system-mt" "boost_system"
   '';
 
+  # for now sound is disabled as it causes a linker error with alure i can't resolve (qknight)
+  cmakeFlags = "-DOPTION_SOUND:BOOL=OFF"; 
+
   enableParallelBuilding = true;
 
+  #buildPhase = "make VERBOSE=1";
+
   meta = with stdenv.lib; {
     homepage = http://springlobby.info/;
     description = "A free cross-platform lobby client for the Spring RTS project.";
diff --git a/pkgs/games/xmoto/default.nix b/pkgs/games/xmoto/default.nix
index af2e1e94bdc7..229d58029dea 100644
--- a/pkgs/games/xmoto/default.nix
+++ b/pkgs/games/xmoto/default.nix
@@ -25,7 +25,6 @@ rec {
       a.lib.maintainers.raskin
       a.lib.maintainers.viric
     ];
-    platforms = with a.lib.platforms; 
-      linux ++ freebsd;
+    platforms = a.lib.platforms.linux;
   };
 }
diff --git a/pkgs/misc/busybox/default.nix b/pkgs/misc/busybox/default.nix
index 6ca30ddd96ba..b5bf9e038c94 100644
--- a/pkgs/misc/busybox/default.nix
+++ b/pkgs/misc/busybox/default.nix
@@ -3,7 +3,6 @@
 let
   configParser = ''
     function parseconfig {
-        set -x
         while read LINE; do
             NAME=`echo "$LINE" | cut -d \  -f 1`
             OPTION=`echo "$LINE" | cut -d \  -f 2`
@@ -18,12 +17,11 @@ let
             fi
 
             echo "parseconfig: removing $NAME"
-            sed -i /^$NAME=/d .config
+            sed -i /$NAME'\(=\| \)'/d .config
 
             echo "parseconfig: setting $NAME=$OPTION"
             echo "$NAME=$OPTION" >> .config
         done
-        set +x
     }
   '';
 
@@ -39,11 +37,11 @@ let
 in
 
 stdenv.mkDerivation rec {
-  name = "busybox-1.19.0";
+  name = "busybox-1.19.4";
 
   src = fetchurl {
     url = "http://busybox.net/downloads/${name}.tar.bz2";
-    sha256 = "0332yxvlfv2hbix9n70dyp4xlm2hrk248qqdg006hyfpjsh49kqr";
+    sha256 = "1vhh6xa71w4wzby0f4x357fv6zxvkklmyjc8njgbbzv1v83391cv";
   };
 
   configurePhase = ''
diff --git a/pkgs/misc/cups/pdf-filter.nix b/pkgs/misc/cups/pdf-filter.nix
index 50f117a65341..8a08eadc6a48 100644
--- a/pkgs/misc/cups/pdf-filter.nix
+++ b/pkgs/misc/cups/pdf-filter.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
 
   preConfigure = ''
     sed -e 's@\.\./cups/$(LIBCUPS)@@' -e 's@$(LIBCUPSIMAGE)@@' -i filter/Makefile
-    ''; 
+    '';
 
   NIX_LDFLAGS="-L${cups}/lib";
 
@@ -23,8 +23,9 @@ stdenv.mkDerivation {
     '';
 
   installPhase = ''
-    mkdir -pv $out/lib/cups/filter
+    mkdir -pv $out/lib/cups/filter $out/share/cups/mime
     cp -v pdftops $out/lib/cups/filter
+    echo >$out/share/cups/mime/pdftops.convs 'application/pdf application/vnd.cups-postscript 66 pdftops'
     '';
 
 
diff --git a/pkgs/misc/emulators/gens-gs/default.nix b/pkgs/misc/emulators/gens-gs/default.nix
index a6f457b52109..217468c5bd2a 100644
--- a/pkgs/misc/emulators/gens-gs/default.nix
+++ b/pkgs/misc/emulators/gens-gs/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, gtkLibs, SDL, nasm, zlib, libpng, mesa }:
+{ stdenv, fetchurl, pkgconfig, gtk, SDL, nasm, zlib, libpng, mesa }:
 
 stdenv.mkDerivation { 
   name = "gens-gs-7";
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
     sha256 = "1ha5s6d3y7s9aq9f4zmn9p88109c3mrj36z2w68jhiw5xrxws833";
   };
 
-  buildInputs = [ pkgconfig gtkLibs.gtk SDL nasm zlib libpng mesa ];
+  buildInputs = [ pkgconfig gtk SDL nasm zlib libpng mesa ];
 
   # Work around build failures on recent GTK+.
   # See http://ubuntuforums.org/showthread.php?p=10535837
diff --git a/pkgs/misc/emulators/mess/default.nix b/pkgs/misc/emulators/mess/default.nix
index 150042ad7963..990f1e7106e1 100644
--- a/pkgs/misc/emulators/mess/default.nix
+++ b/pkgs/misc/emulators/mess/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, unzip, pkgconfig, SDL, gtkLibs, gnome, mesa
+{ stdenv, fetchurl, unzip, pkgconfig, SDL, gtk, GConf, mesa
 , expat, zlib }:
 
 let
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
   makeFlags = "TARGET=mess BUILD_EXPAT= BUILD_ZLIB= NOWERROR=1";
 
   buildInputs =
-    [ unzip pkgconfig SDL gtkLibs.gtk gnome.GConf mesa expat zlib ];
+    [ unzip pkgconfig SDL gtk GConf mesa expat zlib ];
 
   installPhase =
     ''
diff --git a/pkgs/misc/ghostscript/default.nix b/pkgs/misc/ghostscript/default.nix
index 8df46dd66d4f..cc278d6abe57 100644
--- a/pkgs/misc/ghostscript/default.nix
+++ b/pkgs/misc/ghostscript/default.nix
@@ -48,6 +48,10 @@ let
       homepage = http://www.ghostscript.com/;
       description = "GPL Ghostscript, a PostScript interpreter";
     };
+
+    preConfigure = ''
+      rm -R libpng jpeg lcms tiff freetype
+    '';
     patches = [ ./purity-9.05.patch ];
   };
 
@@ -85,7 +89,7 @@ stdenv.mkDerivation rec {
 
     # Don't install stuff in the Cups store path.
     makeFlagsArray=(CUPSSERVERBIN=$out/lib/cups CUPSSERVERROOT=$out/etc/cups CUPSDATA=$out/share/cups)
-  '';
+  '' + stdenv.lib.optionalString (variant ? preConfigure) variant.preConfigure;
 
   configureFlags =
     (if x11Support then [ "--with-x" ] else [ "--without-x" ]) ++
diff --git a/pkgs/misc/my-env/default.nix b/pkgs/misc/my-env/default.nix
index eb319b1c9b34..200485eea63a 100644
--- a/pkgs/misc/my-env/default.nix
+++ b/pkgs/misc/my-env/default.nix
@@ -1,18 +1,34 @@
-# idea: provide nix environment for your developement actions
-# experimental
-
+# idea: provide a build environments for your developement of preference
 /*
-  # example:
-  # add postgresql to environment and create ctags (tagfiles can be extracted from TAG_FILES)
-  # add this to your ~/.nixpkgs/config.nix
+  #### examples of use: ####
+  # Add this to your ~/.nixpkgs/config.nix:
+  {
+    packageOverrides = pkgs : with pkgs; {
+      sdlEnv = pkgs.myEnvFun {
+          name = "sdl";
+          buildInputs = [ stdenv SDL SDL_image SDL_ttf SDL_gfx cmake SDL_net  pkgconfig];
+      };
+    };
+  }
 
+  # Then you can install it by:   nix-env -i sdl-env
+  # And you can load it simply calling:  load-sdl-env
+  # and this will update your env vars to have 'make' and 'gcc' finding the SDL
+  # headers and libs.
+
+
+  ##### Another example, more complicated but achieving more: #######
+  # Make an environment to build nix from source and create ctags (tagfiles can
+  # be extracted from TAG_FILES) from every source package. Here would be a
+  # full ~/.nixpkgs/config.nix
   {
     packageOverrides = pkgs : with pkgs; with sourceAndTags;
-    let simple = { name, buildInputs ? [], cTags ? [], extraCmds ? ""}:
+    let complicatedMyEnv = { name, buildInputs ? [], cTags ? [], extraCmds ? ""}:
             pkgs.myEnvFun {
               inherit name;
             buildInputs = buildInputs 
-                  ++ map (x : sourceWithTagsDerivation ( (addCTaggingInfo x ).passthru.sourceWithTags ) ) cTags;
+                  ++ map (x : sourceWithTagsDerivation
+                    ( (addCTaggingInfo x ).passthru.sourceWithTags ) ) cTags;
             extraCmds = ''
               ${extraCmds}
               HOME=${builtins.getEnv "HOME"}
@@ -20,23 +36,21 @@
             '';
           };
     in rec {
-      nixEnv = simple {
-       name = "nix";
-       buildInputs = [ libtool stdenv perl curl bzip2 openssl aterm242fixes db45 autoconf automake zlib ];
-       cTags = [ aterm242fixes];
+      # this is the example we will be using
+      nixEnv = complicatedMyEnv {
+        name = "nix";
+        buildInputs = [ libtool stdenv perl curl bzip2 openssl db45 autoconf automake zlib ];
       };
-      [...]
     };
   }
 
+  Now we should build our newly defined custom environment using this command on a shell, so type:
+    $ nix-env -i env-nix
 
-  Put this into your .bashrc
-    loadEnv(){ . "${HOME}/.nix-profile/dev-envs/${1}" }
-
-  then nix-env -iA ...nixEnv
-  and
-  $ loadEnv postgresql
-
+  You can load the environment simply typing a "load-${name}-env" command.
+    $ load-nix-env
+  The result using that command should be:
+    env-nix loaded
 */
 
 { mkDerivation, substituteAll, pkgs } : { stdenv ? pkgs.stdenv, name, buildInputs ? [], cTags ? [], extraCmds ? ""} :
diff --git a/pkgs/misc/themes/gtk2/oxygen-gtk/default.nix b/pkgs/misc/themes/gtk2/oxygen-gtk/default.nix
index c6aa7baea2fe..9910768b5470 100644
--- a/pkgs/misc/themes/gtk2/oxygen-gtk/default.nix
+++ b/pkgs/misc/themes/gtk2/oxygen-gtk/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl,
-  cmake, dbus_glib, glib, gtk, gtkLibs, pkgconfig, xorg }:
+  cmake, dbus_glib, glib, gtk, gdk_pixbuf, pkgconfig, xorg }:
 
 stdenv.mkDerivation rec {
   version = "1.1.1";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "66d571f08ec999f56de412f42a0395c9dc60b73adaaece96c6da6e98353fe379";
   };
 
-  buildInputs = [ cmake dbus_glib glib gtk gtkLibs.gdk_pixbuf
+  buildInputs = [ cmake dbus_glib glib gtk gdk_pixbuf
    pkgconfig xorg.libXau xorg.libXdmcp xorg.libpthreadstubs
    xorg.libxcb xorg.pixman ];
 
diff --git a/pkgs/os-specific/gnu/default.nix b/pkgs/os-specific/gnu/default.nix
index 326918dd55ef..a16aeb1c06c8 100644
--- a/pkgs/os-specific/gnu/default.nix
+++ b/pkgs/os-specific/gnu/default.nix
@@ -91,4 +91,8 @@ rec {
     samba = samba_light;
     hurd = hurdCross;
   };
+
+  unionfs = callPackage ./unionfs {
+    hurd = hurdCross;
+  };
 }
diff --git a/pkgs/os-specific/gnu/smbfs/default.nix b/pkgs/os-specific/gnu/smbfs/default.nix
index 44e346594bbb..99b9b77adaab 100644
--- a/pkgs/os-specific/gnu/smbfs/default.nix
+++ b/pkgs/os-specific/gnu/smbfs/default.nix
@@ -1,7 +1,7 @@
 { fetchcvs, stdenv, hurd, machHeaders, samba }:
 
 let
-  date = "2011-11-14";
+  date = "2012-03-08";
   samba_patched = stdenv.lib.overrideDerivation samba (attrs: {
     patches = attrs.patches ++ [ ./samba-without-byte-range-locks.patch ];
   });
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   src = fetchcvs {
     cvsRoot = ":pserver:anonymous@cvs.savannah.nongnu.org:/sources/hurdextras";
     module = "smbfs";
-    sha256 = "b36765fde77c6cafb04ab1ff44b19bb00b490064b5a02b9ced7828170ab47a70";
+    sha256 = "526475771e145a43752a9a6b9ff60cbed24cb6c098cafc490ab42684936fd685";
     inherit date;
   };
 
diff --git a/pkgs/os-specific/gnu/unionfs/default.nix b/pkgs/os-specific/gnu/unionfs/default.nix
new file mode 100644
index 000000000000..5b42e7fdf2bb
--- /dev/null
+++ b/pkgs/os-specific/gnu/unionfs/default.nix
@@ -0,0 +1,42 @@
+{ fetchgit, stdenv, hurd, machHeaders, mig }:
+
+let
+  date = "20120313";
+  rev  = "64dfa4e12d93c13b676d1cd7d86f4f4004ebfafa";
+in
+stdenv.mkDerivation rec {
+  name = "unionfs-${date}";
+
+  src = fetchgit {
+    url = "git://git.sv.gnu.org/hurd/unionfs.git";
+    sha256 = "1c3d71112cb25f8f82719a16df936e43abcb1adb77af96c1bb100a8ad0889d65";
+    inherit rev;
+  };
+
+  patchPhase =
+    '' sed -i "Makefile" \
+           -e 's|gcc|i586-pc-gnu-gcc|g ;
+               s|-std=gnu99|-std=gnu99 -fgnu89-inline|g'
+    '';
+
+  makeFlags = [ "CC=i586-pc-gnu-gcc" ];
+  buildInputs = [ hurd machHeaders mig ];
+
+  installPhase =
+    '' mkdir -p "$out/hurd"
+       cp -v unionfs "$out/hurd"
+
+       mkdir -p "$out/share/doc/${name}"
+       cp -v [A-Z]* "$out/share/doc/${name}"
+    '';
+
+  meta = {
+    description = "Union file system translator for GNU/Hurd";
+
+    homepage = http://www.gnu.org/software/hurd/hurd/translator/unionfs.html;
+
+    license = "GPLv2+";
+
+    maintainers = [ stdenv.lib.maintainers.ludo ];
+  };
+}
diff --git a/pkgs/os-specific/linux/aufs/3.nix b/pkgs/os-specific/linux/aufs/3.nix
index 731098134b58..83de1faa8fe5 100644
--- a/pkgs/os-specific/linux/aufs/3.nix
+++ b/pkgs/os-specific/linux/aufs/3.nix
@@ -20,6 +20,8 @@ stdenv.mkDerivation {
 
   makeFlags = "KDIR=${kernel}/lib/modules/${kernel.modDirVersion}/build";
 
+  NIX_CFLAGS_COMPILE="-I${kernel}/lib/modules/${kernel.modDirVersion}/build/include/generated";
+
   installPhase =
     ''
       mkdir -p $out/lib/modules/${kernel.modDirVersion}/misc
diff --git a/pkgs/os-specific/linux/bluez/default.nix b/pkgs/os-specific/linux/bluez/default.nix
index 731a52fb1e58..101879861117 100644
--- a/pkgs/os-specific/linux/bluez/default.nix
+++ b/pkgs/os-specific/linux/bluez/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, dbus, glib, libusb, alsaLib, python, makeWrapper
-, pythonDBus, pygobject, gst_all, readline, libsndfile }:
+, pythonDBus, pygobject, readline, libsndfile }:
 
 assert stdenv.isLinux;
 
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
       readline libsndfile
       # Disables GStreamer; not clear what it gains us other than a
       # zillion extra dependencies.
-      # gst_all.gstreamer gst_all.gstPluginsBase 
+      # gstreamer gst_plugins_base 
     ];
 
   configureFlags = "--localstatedir=/var --enable-cups";
diff --git a/pkgs/os-specific/linux/firmware/iwlwifi-5000-ucode/default.nix b/pkgs/os-specific/linux/firmware/iwlwifi-5000-ucode/default.nix
index b8ee5f388d19..49269fffe477 100644
--- a/pkgs/os-specific/linux/firmware/iwlwifi-5000-ucode/default.nix
+++ b/pkgs/os-specific/linux/firmware/iwlwifi-5000-ucode/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "iwlwifi-5000-ucode-8.24.2.12";
+  name = "iwlwifi-5000-ucode-8.83.5.1-1";
   
   src = fetchurl {
-    url = "http://intellinuxwireless.org/iwlwifi/downloads/${name}.tgz";
-    sha256 = "0h47cmpxa9cmysz0g42ga9da8qjfzqdf0w43fqx1cbnr8yg12ac1";
+    url = "http://www.intellinuxwireless.org/iwlwifi/downloads/${name}.tar.gz";
+    sha256 = "0n4f6wsppspvvdpcab52n2piczhgfq7a4y7gazxzzlj5halchnx3";
   };
   
   buildPhase = "true";
@@ -20,9 +20,8 @@ stdenv.mkDerivation rec {
     description = "Firmware for the Intel 5000 wireless card";
 
     longDescription = ''
-      This package provides version 1 of the Intel wireless card
-      firmware, for Linux up to 2.6.26.  It contains the
-      `iwlwifi-5000-1.ucode' file.
+      This package provides version 5 of the Intel wireless card
+      firmware. It contains the `iwlwifi-5000-5.ucode' file.
     '';
 
     homepage = http://intellinuxwireless.org/;
diff --git a/pkgs/os-specific/linux/gw6c/default.nix b/pkgs/os-specific/linux/gw6c/default.nix
deleted file mode 100644
index 5c8c6d8c9535..000000000000
--- a/pkgs/os-specific/linux/gw6c/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-args : with args; 
-let version = "6.0"; in
-rec {
-  src = fetchurl {
-    url = http://go6.net/4105/file.asp?file_id=166;
-    sha256 = "e6b345f11398026c8be17e0c26fc22632a6a1053bbf18b5303e514cf44b52c4a";
-    name = "gateway6-client-${version}.tar";
-  };
-
-  buildInputs = [nettools openssl procps];
-  configureFlags = [];
-  makeFlags = ["target=linux"];
-  installFlags = ["installdir=$out"];
-
-  /* doConfigure should be specified separately */
-  phaseNames = ["preBuild" "doMakeInstall"];
-
-  goSrcDir = "cd tspc-advanced";
-
-  preBuild = fullDepEntry (''
-    sed -e 's@/dev/net/tun@/dev/tun@' -i platform/linux/tsp_tun.c;
-    sed -e 's@/sbin/ifconfig@${nettools}/sbin/ifconfig@' -i template/linux.sh
-    sed -e 's@/sbin/route@${nettools}/sbin/route@' -i template/linux.sh
-    sed -e 's@/sbin/ip@${iproute}/sbin/ip@' -i template/linux.sh
-    sed -e 's@/sbin/sysctl@${procps}/sbin/sysctl@' -i template/linux.sh
-  '') ["minInit" "addInputs" "doUnpack"];
-      
-  name = "gateway6-client-" + version;
-  meta = {
-    description = "Gateway6 client - provides IPv6 tunnel";
-    longDescription = "
-      This package provides Gateway6 client (gw6c) daemon,
-      which connects to so called tunnel broker via IPv4 
-      network, and tunnels IPv6 packets through broker,
-      thus giving global IPv6 connectivity. You may need 
-      tun, ipv6 and sit modules.
-    ";
-    homepage = http://go6.net ;
-    maintainers = [stdenv.lib.maintainers.raskin];
-  };
-}
diff --git a/pkgs/os-specific/linux/hdparm/default.nix b/pkgs/os-specific/linux/hdparm/default.nix
index bb6874336da1..b627d664aef1 100644
--- a/pkgs/os-specific/linux/hdparm/default.nix
+++ b/pkgs/os-specific/linux/hdparm/default.nix
@@ -1,19 +1,20 @@
-{stdenv, fetchurl}:
+{ stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "hdparm-8.7";
+stdenv.mkDerivation rec {
+  name = "hdparm-9.39";
 
   src = fetchurl {
-    url = mirror://sourceforge/hdparm/hdparm-8.7.tar.gz;
-    sha256 = "1gbyywsam769fdsgcy2clkfik9h2drad78h1xnh55b9c6fjlacmq";
+    url = "mirror://sourceforge/hdparm/${name}.tar.gz";
+    sha256 = "1siw9c2hrsck47jr9wpip9n677g31qd34y8whkq9dai68npm1mbj";
   };
 
-  preBuild = "
+  preBuild = ''
     makeFlagsArray=(sbindir=$out/sbin manprefix=$out)
-  ";
+  '';
 
   meta = {
     description = "A tool to get/set ATA/SATA drive parameters under Linux";
     homepage = http://sourceforge.net/projects/hdparm/;
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/os-specific/linux/kernel/linux-3.3.nix b/pkgs/os-specific/linux/kernel/linux-3.3.nix
new file mode 100644
index 000000000000..82ca7b0b6bb5
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/linux-3.3.nix
@@ -0,0 +1,249 @@
+args @ { stdenv, fetchurl, userModeLinux ? false, extraConfig ? ""
+, perl, mktemp, module_init_tools
+, ... }:
+
+let
+  configWithPlatform = kernelPlatform :
+    ''
+      # powermanagement and debugging for powertop
+      DEBUG_KERNEL y
+      PM_ADVANCED_DEBUG y
+      PM_RUNTIME y
+      TIMER_STATS y
+      USB_SUSPEND y
+      BACKTRACE_SELF_TEST n
+      CPU_NOTIFIER_ERROR_INJECT n
+      DEBUG_DEVRES n
+      DEBUG_NX_TEST n
+      DEBUG_STACK_USAGE n
+      DEBUG_STACKOVERFLOW n
+      RCU_TORTURE_TEST n
+      SCHEDSTATS n
+
+      # Support drivers that need external firmware.
+      STANDALONE n
+
+      # Make /proc/config.gz available.
+      IKCONFIG_PROC y
+
+      # Optimize with -O2, not -Os.
+      CC_OPTIMIZE_FOR_SIZE n
+
+      # Enable the kernel's built-in memory tester.
+      MEMTEST y
+
+      # Include the CFQ I/O scheduler in the kernel, rather than as a
+      # module, so that the initrd gets a good I/O scheduler.
+      IOSCHED_CFQ y
+      BLK_CGROUP y # required by CFQ
+
+      # Disable some expensive (?) features.
+      FTRACE n
+      KPROBES n
+      NUMA? n
+      PM_TRACE_RTC n
+
+      # Enable various subsystems.
+      ACCESSIBILITY y # Accessibility support
+      AUXDISPLAY y # Auxiliary Display support
+      DONGLE y # Serial dongle support
+      HIPPI? y
+      MTD_COMPLEX_MAPPINGS y # needed for many devices
+      SCSI_LOWLEVEL y # enable lots of SCSI devices
+      SCSI_LOWLEVEL_PCMCIA y
+      SPI y # needed for many devices
+      SPI_MASTER y
+      WAN y
+
+      # Networking options.
+      IP_PNP n
+      IPV6_PRIVACY y
+      NETFILTER_ADVANCED y
+      IP_VS_PROTO_TCP y
+      IP_VS_PROTO_UDP y
+      IP_VS_PROTO_ESP y
+      IP_VS_PROTO_AH y
+      IP_DCCP_CCID3 n # experimental
+      CLS_U32_PERF y
+      CLS_U32_MARK y
+
+      # Wireless networking.
+      IPW2100_MONITOR y # support promiscuous mode
+      IPW2200_MONITOR y # support promiscuous mode
+      HOSTAP_FIRMWARE y # Support downloading firmware images with Host AP driver
+      HOSTAP_FIRMWARE_NVRAM y
+      ATH9K_PCI y # Detect Atheros AR9xxx cards on PCI(e) bus
+      ATH9K_AHB y # Ditto, AHB bus
+
+      # Some settings to make sure that fbcondecor works - in particular,
+      # disable tileblitting and the drivers that need it.
+
+      # Enable various FB devices.
+      FB y
+      FB_EFI y
+      FB_NVIDIA_I2C y # Enable DDC Support
+      FB_RIVA_I2C y
+      FB_ATY_CT y # Mach64 CT/VT/GT/LT (incl. 3D RAGE) support
+      FB_ATY_GX y # Mach64 GX support
+      FB_SAVAGE_I2C y
+      FB_SAVAGE_ACCEL y
+      FB_SIS_300 y
+      FB_SIS_315 y
+      FB_3DFX_ACCEL y
+      FB_GEODE y
+
+      # Video configuration
+      # Enable KMS for devices whose X.org driver supports it.
+      DRM_I915_KMS y
+      DRM_RADEON_KMS y
+      # Hybrid graphics support
+      VGA_SWITCHEROO y
+
+      # Sound.
+      SND_AC97_POWER_SAVE y # AC97 Power-Saving Mode
+      SND_HDA_INPUT_BEEP y # Support digital beep via input layer
+      SND_USB_CAIAQ_INPUT y
+      PSS_MIXER y # Enable PSS mixer (Beethoven ADSP-16 and other compatible)
+
+      # USB serial devices.
+      USB_SERIAL_GENERIC y # USB Generic Serial Driver
+      USB_SERIAL_KEYSPAN_MPR y # include firmware for various USB serial devices
+      USB_SERIAL_KEYSPAN_USA28 y
+      USB_SERIAL_KEYSPAN_USA28X y
+      USB_SERIAL_KEYSPAN_USA28XA y
+      USB_SERIAL_KEYSPAN_USA28XB y
+      USB_SERIAL_KEYSPAN_USA19 y
+      USB_SERIAL_KEYSPAN_USA18X y
+      USB_SERIAL_KEYSPAN_USA19W y
+      USB_SERIAL_KEYSPAN_USA19QW y
+      USB_SERIAL_KEYSPAN_USA19QI y
+      USB_SERIAL_KEYSPAN_USA49W y
+      USB_SERIAL_KEYSPAN_USA49WLC y
+
+      # Filesystem options - in particular, enable extended attributes and
+      # ACLs for all filesystems that support them.
+      EXT2_FS_XATTR y # Ext2 extended attributes
+      EXT2_FS_POSIX_ACL y # Ext2 POSIX Access Control Lists
+      EXT2_FS_SECURITY y # Ext2 Security Labels
+      EXT2_FS_XIP y # Ext2 execute in place support
+      EXT4_FS_POSIX_ACL y
+      EXT4_FS_SECURITY y
+      REISERFS_FS_XATTR y
+      REISERFS_FS_POSIX_ACL y
+      REISERFS_FS_SECURITY y
+      JFS_POSIX_ACL y
+      JFS_SECURITY y
+      XFS_QUOTA y
+      XFS_POSIX_ACL y
+      XFS_RT y # XFS Realtime subvolume support
+      OCFS2_DEBUG_MASKLOG n
+      BTRFS_FS_POSIX_ACL y
+      UBIFS_FS_XATTR y
+      UBIFS_FS_ADVANCED_COMPR y
+      NFSD_V2_ACL y
+      NFSD_V3 y
+      NFSD_V3_ACL y
+      NFSD_V4 y
+      CIFS_XATTR y
+      CIFS_POSIX y
+
+      # Security related features.
+      STRICT_DEVMEM y # Filter access to /dev/mem
+      SECURITY_SELINUX_BOOTPARAM_VALUE 0 # disable SELinux by default
+
+      # Misc. options.
+      8139TOO_8129 y
+      8139TOO_PIO n # PIO is slower
+      AIC79XX_DEBUG_ENABLE n
+      AIC7XXX_DEBUG_ENABLE n
+      AIC94XX_DEBUG n
+      B43_PCMCIA y
+      BLK_DEV_CMD640_ENHANCED y # CMD640 enhanced support
+      BLK_DEV_IDEACPI y # IDE ACPI support
+      BLK_DEV_INTEGRITY y
+      BSD_PROCESS_ACCT_V3 y
+      BT_HCIUART_BCSP y
+      BT_HCIUART_H4 y # UART (H4) protocol support
+      BT_HCIUART_LL y
+      BT_RFCOMM m
+      BT_RFCOMM_TTY y # RFCOMM TTY support
+      CRASH_DUMP n
+      DMAR? n # experimental
+      DVB_DYNAMIC_MINORS y # we use udev
+      EFI_STUB y # EFI bootloader in the bzImage itself
+      FUSION y # Fusion MPT device support
+      IDE_GD_ATAPI y # ATAPI floppy support
+      IRDA_ULTRA y # Ultra (connectionless) protocol
+      JOYSTICK_IFORCE_232 y # I-Force Serial joysticks and wheels
+      JOYSTICK_IFORCE_USB y # I-Force USB joysticks and wheels
+      JOYSTICK_XPAD_FF y # X-Box gamepad rumble support
+      JOYSTICK_XPAD_LEDS y # LED Support for Xbox360 controller 'BigX' LED
+      LDM_PARTITION y # Windows Logical Disk Manager (Dynamic Disk) support
+      LEDS_TRIGGER_IDE_DISK y # LED IDE Disk Trigger
+      LOGIRUMBLEPAD2_FF y # Logitech Rumblepad 2 force feedback
+      LOGO n # not needed
+      MEDIA_ATTACH y
+      MEGARAID_NEWGEN y
+      MICROCODE_AMD y
+      MODVERSIONS y
+      MOUSE_PS2_ELANTECH y # Elantech PS/2 protocol extension
+      MTRR_SANITIZER y
+      NET_FC y # Fibre Channel driver support
+      PPP_MULTILINK y # PPP multilink support
+      REGULATOR y # Voltage and Current Regulator Support
+      SCSI_LOGGING y # SCSI logging facility
+      SERIAL_8250 y # 8250/16550 and compatible serial support
+      SLIP_COMPRESSED y # CSLIP compressed headers
+      SLIP_SMART y
+      THERMAL_HWMON y # Hardware monitoring support
+      USB_DEBUG n
+      USB_EHCI_ROOT_HUB_TT y # Root Hub Transaction Translators
+      X86_CHECK_BIOS_CORRUPTION y
+      X86_MCE y
+
+      # Linux Containers
+      RT_GROUP_SCHED? y
+      CGROUP_DEVICE? y
+      CGROUP_MEM_RES_CTLR? y
+      CGROUP_MEM_RES_CTLR_SWAP? y
+      DEVPTS_MULTIPLE_INSTANCES? y
+
+      # Enable staging drivers.  These are somewhat experimental, but
+      # they generally don't hurt.
+      STAGING y
+
+      # PROC_EVENTS requires that the netlink connector is not built
+      # as a module.  This is required by libcgroup's cgrulesengd.
+      CONNECTOR y
+      PROC_EVENTS y
+
+      ${if kernelPlatform ? kernelExtraConfig then kernelPlatform.kernelExtraConfig else ""}
+      ${extraConfig}
+    '';
+in
+
+import ./generic.nix (
+
+  rec {
+    version = "3.3-rc7";
+    testing = true;
+
+    modDirVersion = "3.3.0-rc7";
+
+    preConfigure = ''
+      substituteInPlace scripts/depmod.sh --replace '-b "$INSTALL_MOD_PATH"' ""
+    '';
+
+    src = fetchurl {
+      url = "mirror://kernel/linux/kernel/v3.0/${if testing then "testing/" else ""}linux-${version}.tar.bz2";
+      sha256 = "1wfdkryfi9mxjd2n0bysg737579ydqjarczln5wsjzp5w80c3g64";
+    };
+
+    config = configWithPlatform stdenv.platform;
+    configCross = configWithPlatform stdenv.cross.platform;
+
+    features.iwlwifi = true;
+  }
+
+  // removeAttrs args ["extraConfig"]
+)
diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index 42c99f0d56cd..df153d015487 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -266,6 +266,20 @@ rec {
     features.aufs3 = true;
   };
 
+  aufs3_3 = rec {
+    name = "aufs3.x-rcN-20120312";
+    version = "3.3";
+    utilRev = "8f8b22d8b29c8f7ccc10b212f2deec8848c020a1";
+    utilHash = "0a54efeeb17d5d7542ebee3f10bb4b82364a600858893e34c0e4221e4307ccd0";
+    patch = makeAufs3StandalonePatch {
+      inherit version;
+      rev = "187f3c592873b1d30efd2c9b5073aa7fe728620b";
+      sha256 = "d22b75165cbc8cb0417c114a9f3e3306bb9288b3557f57a1d20481e8cd339b8f";
+    };
+    features.aufsBase = true;
+    features.aufs3 = true;
+  };
+
   # Increase the timeout on CIFS requests from 15 to 120 seconds to
   # make CIFS more resilient to high load on the CIFS server.
   cifs_timeout_2_6_15 =
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix
index 23d1062cc398..0243dcb88d41 100644
--- a/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, kernel ? null, xlibs, gtkLibs, zlib, perl
+{ stdenv, fetchurl, kernel ? null, xlibs, zlib, perl
+, gtk, atk, pango, glib, gdk_pixbuf
 , # Whether to build the libraries only (i.e. not the kernel module or
   # nvidia-settings).  Used to support 32-bit binaries on 64-bit
   # Linux.
@@ -38,7 +39,7 @@ stdenv.mkDerivation {
   cudaPath = stdenv.lib.makeLibraryPath [zlib stdenv.gcc.gcc];
 
   programPath = optionalString (!libsOnly) (stdenv.lib.makeLibraryPath
-    [ gtkLibs.gtk gtkLibs.atk gtkLibs.pango gtkLibs.glib gtkLibs.gdk_pixbuf xlibs.libXv ] );
+    [ gtk atk pango glib gdk_pixbuf xlibs.libXv ] );
 
   buildInputs = [ perl ];
 
diff --git a/pkgs/os-specific/linux/nvidia-x11/legacy173.nix b/pkgs/os-specific/linux/nvidia-x11/legacy173.nix
index 541e442f6b17..4b30137f5b64 100644
--- a/pkgs/os-specific/linux/nvidia-x11/legacy173.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/legacy173.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, kernel, xlibs, gtkLibs, zlib}:
+{stdenv, fetchurl, kernel, xlibs, zlib, gtk, atk, pango, glib}:
 
 let 
 
@@ -32,10 +32,7 @@ stdenv.mkDerivation {
 
   cudaPath = stdenv.lib.makeLibraryPath [zlib stdenv.gcc.gcc];
 
-  programPath = stdenv.lib.makeLibraryPath [
-    gtkLibs.gtk gtkLibs.atk gtkLibs.pango gtkLibs.glib
-    xlibs.libXv
-  ];
+  programPath = stdenv.lib.makeLibraryPath [ gtk atk pango glib xlibs.libXv ];
 
   meta = {
     homepage = http://www.nvidia.com/object/unix.html;
diff --git a/pkgs/os-specific/linux/nvidia-x11/legacy96.nix b/pkgs/os-specific/linux/nvidia-x11/legacy96.nix
index a7ba4d5ca956..156484f53e1f 100644
--- a/pkgs/os-specific/linux/nvidia-x11/legacy96.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/legacy96.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, kernel, xlibs, gtkLibs, zlib}:
+{stdenv, fetchurl, kernel, xlibs, zlib, gtk, atk, pango, glib}:
 
 let 
 
@@ -32,10 +32,7 @@ stdenv.mkDerivation {
 
   cudaPath = stdenv.lib.makeLibraryPath [zlib stdenv.gcc.gcc];
 
-  programPath = stdenv.lib.makeLibraryPath [
-    gtkLibs.gtk gtkLibs.atk gtkLibs.pango gtkLibs.glib
-    xlibs.libXv
-  ];
+  programPath = stdenv.lib.makeLibraryPath [ gtk atk pango glib xlibs.libXv ];
 
   meta = {
     homepage = http://www.nvidia.com/object/unix.html;
diff --git a/pkgs/os-specific/linux/util-linux/default.nix b/pkgs/os-specific/linux/util-linux/default.nix
index 124b95ee04c5..ae5727568f2d 100644
--- a/pkgs/os-specific/linux/util-linux/default.nix
+++ b/pkgs/os-specific/linux/util-linux/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   configureFlags = ''
     --disable-use-tty-group
     --enable-write
-    --enable-fs-paths-default=/var/run/current-system/sw/sbin:/sbin
+    --enable-fs-paths-default=/var/setuid-wrappers:/var/run/current-system/sw/sbin:/sbin
     ${if ncurses == null then "--without-ncurses" else ""}
   '';
 
diff --git a/pkgs/tools/X11/bumblebee/default.nix b/pkgs/tools/X11/bumblebee/default.nix
index 2e0c700641f7..74e3e7b1f82d 100644
--- a/pkgs/tools/X11/bumblebee/default.nix
+++ b/pkgs/tools/X11/bumblebee/default.nix
@@ -28,7 +28,7 @@
 # package, and parameterize the two wrappers as well)
 
 { stdenv, fetchurl, pkgconfig, help2man
-, libX11, glibc, gtkLibs, libbsd
+, libX11, glibc, glib, libbsd
 , makeWrapper, buildEnv, module_init_tools
 , linuxPackages, virtualgl, xorg, xkeyboard_config
 }:
@@ -98,7 +98,7 @@ in stdenv.mkDerivation {
 
   # Build-time dependencies of bumblebeed and optirun.
   # Note that it has several runtime dependencies.
-  buildInputs = [ stdenv makeWrapper pkgconfig help2man libX11 gtkLibs.glib libbsd ];
+  buildInputs = [ stdenv makeWrapper pkgconfig help2man libX11 glib libbsd ];
 
   # create a wrapper environment for bumblebeed and optirun
   postInstall = ''
diff --git a/pkgs/tools/admin/gtk-vnc/default.nix b/pkgs/tools/admin/gtk-vnc/default.nix
index 036389babe23..1fda870d5fbb 100644
--- a/pkgs/tools/admin/gtk-vnc/default.nix
+++ b/pkgs/tools/admin/gtk-vnc/default.nix
@@ -7,7 +7,7 @@ builderDefsPackage
 (a :  
 let 
   helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    ["perlPackages" "firefox36Pkgs" "gtkLibs"];
+    ["perlPackages" "firefox36Pkgs"];
 
   buildInputs = (map (n: builtins.getAttr n x)
     (builtins.attrNames (builtins.removeAttrs x helperArgNames)))
diff --git a/pkgs/tools/cd-dvd/cdrkit/cdrkit-1.1.9-efi-boot.patch b/pkgs/tools/cd-dvd/cdrkit/cdrkit-1.1.9-efi-boot.patch
new file mode 100644
index 000000000000..45f910b03e66
--- /dev/null
+++ b/pkgs/tools/cd-dvd/cdrkit/cdrkit-1.1.9-efi-boot.patch
@@ -0,0 +1,204 @@
+diff --git a/doc/icedax/tracknames.pl b/doc/icedax/tracknames.pl
+old mode 100755
+new mode 100644
+index 09f0fcf..801b89e
+--- a/doc/icedax/tracknames.pl
++++ b/doc/icedax/tracknames.pl
+@@ -1,4 +1,4 @@
+-#!/usr/local/bin/perl 
++#!/usr/bin/perl 
+ # A quick perl hack to get rename files pulled in with icedax.
+ # by billo@billo.com
+ #
+diff --git a/genisoimage/eltorito.c b/genisoimage/eltorito.c
+index b97bdf1..5d7c2d1 100644
+--- a/genisoimage/eltorito.c
++++ b/genisoimage/eltorito.c
+@@ -59,7 +59,7 @@ static	void	get_torito_desc(struct eltorito_boot_descriptor *boot_desc);
+ static	void	fill_boot_desc(struct eltorito_defaultboot_entry *boot_desc_entry,
+ 										struct eltorito_boot_entry_info *boot_entry);
+ void	get_boot_entry(void);
+-void	new_boot_entry(void);
++void	new_boot_entry();
+ static	int	tvd_write(FILE *outfile);
+ 
+ 
+@@ -283,6 +283,7 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
+ 	int			i;
+ 	int			offset;
+ 	struct eltorito_defaultboot_entry boot_desc_record;
++	struct eltorito_sectionheader_entry section_header;
+ 
+ 	memset(boot_desc, 0, sizeof (*boot_desc));
+ 	boot_desc->type[0] = 0;
+@@ -317,7 +318,7 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
+ 	 */
+ 	memset(&valid_desc, 0, sizeof (valid_desc));
+ 	valid_desc.headerid[0] = 1;
+-	valid_desc.arch[0] = EL_TORITO_ARCH_x86;
++	valid_desc.arch[0] = first_boot_entry->arch;
+ 
+ 	/*
+ 	 * we'll shove start of publisher id into id field,
+@@ -347,10 +348,53 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
+ 	/* now write it to the virtual boot catalog */
+ 	memcpy(de2->table, &valid_desc, 32);
+ 
+-	for (current_boot_entry = first_boot_entry, offset = sizeof (valid_desc);
+-		current_boot_entry != NULL;
+-		current_boot_entry = current_boot_entry->next,
+-		offset += sizeof (boot_desc_record)) {
++	/* Fill the first entry, since it's special and already has the
++	 * matching header via the validation header... */
++	offset = sizeof (valid_desc);
++	current_boot_entry = first_boot_entry;
++
++	if (offset >= SECTOR_SIZE) {
++#ifdef	USE_LIBSCHILY
++		comerrno(EX_BAD, "Too many El Torito boot entries\n");
++#else
++		fprintf(stderr,	"Too many El Torito boot entries\n");
++		exit(1);
++#endif
++	}
++	fill_boot_desc(&boot_desc_record, current_boot_entry);
++	memcpy(de2->table + offset, &boot_desc_record,
++				sizeof (boot_desc_record));
++
++	offset += sizeof(boot_desc_record);
++
++	for (current_boot_entry = current_boot_entry->next;
++			current_boot_entry != NULL;
++			current_boot_entry = current_boot_entry->next) {
++		struct eltorito_sectionheader_entry section_header;
++
++		if (offset >= SECTOR_SIZE) {
++#ifdef	USE_LIBSCHILY
++			comerrno(EX_BAD,
++			"Too many El Torito boot entries\n");
++#else
++			fprintf(stderr,
++			"Too many El Torito boot entries\n");
++			exit(1);
++#endif
++		}
++
++		memset(&section_header, '\0', sizeof(section_header));
++		if (current_boot_entry->next)
++			section_header.headerid[0] = EL_TORITO_SECTION_HEADER;
++		else
++			section_header.headerid[0] = EL_TORITO_LAST_SECTION_HEADER;
++
++		section_header.arch[0] = current_boot_entry->arch;
++		set_721(section_header.num_entries, 1);
++
++		memcpy(de2->table + offset, &section_header,
++					sizeof(section_header));
++		offset += sizeof(section_header);
+ 
+ 		if (offset >= SECTOR_SIZE) {
+ #ifdef	USE_LIBSCHILY
+@@ -365,6 +409,8 @@ get_torito_desc(struct eltorito_boot_descriptor *boot_desc)
+ 		fill_boot_desc(&boot_desc_record, current_boot_entry);
+ 		memcpy(de2->table + offset, &boot_desc_record,
+ 					sizeof (boot_desc_record));
++		offset += sizeof (boot_desc_record);
++
+ 	}
+ }/* get_torito_desc(... */
+ 
+diff --git a/genisoimage/genisoimage.c b/genisoimage/genisoimage.c
+index a5b0b46..8add1ac 100644
+--- a/genisoimage/genisoimage.c
++++ b/genisoimage/genisoimage.c
+@@ -47,6 +47,7 @@
+ 
+ #include <mconfig.h>
+ #include "genisoimage.h"
++#include "iso9660.h"
+ #include <errno.h>
+ #include <timedefs.h>
+ #include <fctldefs.h>
+@@ -523,6 +524,8 @@ static const struct ld_option ld_options[] =
+ 	'\0', NULL, "Set debug flag", ONE_DASH},
+ 	{{"eltorito-boot", required_argument, NULL, 'b'},
+ 	'b', "FILE", "Set El Torito boot image name", ONE_DASH},
++	{{"efi-boot", required_argument, NULL, 'e'},
++	'e', "FILE", "Set EFI boot image name", ONE_DASH},
+ 	{{"eltorito-alt-boot", no_argument, NULL, OPTION_ALT_BOOT},
+ 	'\0', NULL, "Start specifying alternative El Torito boot parameters", ONE_DASH},
+ 	{{"sparc-boot", required_argument, NULL, 'B'},
+@@ -1502,6 +1505,7 @@ int main(int argc, char *argv[])
+ 			all_files = 0;
+ 			break;
+ 		case 'b':
++		case 'e':
+ 			do_sort++;		/* We sort bootcat/botimage */
+ 			use_eltorito++;
+ 			boot_image = optarg;	/* pathname of the boot image */
+@@ -1517,6 +1521,10 @@ int main(int argc, char *argv[])
+ #endif
+ 			}
+ 			get_boot_entry();
++			if (c == 'e')
++				current_boot_entry->arch = EL_TORITO_ARCH_EFI;
++			else
++				current_boot_entry->arch = EL_TORITO_ARCH_x86;
+ 			current_boot_entry->boot_image = boot_image;
+ 			break;
+ 		case OPTION_ALT_BOOT:
+diff --git a/genisoimage/genisoimage.h b/genisoimage/genisoimage.h
+index bbedfb0..76e5e21 100644
+--- a/genisoimage/genisoimage.h
++++ b/genisoimage/genisoimage.h
+@@ -293,6 +293,7 @@ struct deferred_write {
+ struct eltorito_boot_entry_info {
+ 	struct eltorito_boot_entry_info *next;
+ 	char		*boot_image;
++	char		arch;
+ 	int		not_bootable;
+ 	int		no_emul_boot;
+ 	int		hard_disk_boot;
+diff --git a/genisoimage/iso9660.h b/genisoimage/iso9660.h
+index c74c2a9..c8b7a05 100644
+--- a/genisoimage/iso9660.h
++++ b/genisoimage/iso9660.h
+@@ -62,10 +62,14 @@ struct iso_volume_descriptor {
+ #define	EL_TORITO_ARCH_x86	0
+ #define	EL_TORITO_ARCH_PPC	1
+ #define	EL_TORITO_ARCH_MAC	2
++#define	EL_TORITO_ARCH_EFI	0xef
+ 
+ #define	EL_TORITO_BOOTABLE	0x88
+ #define	EL_TORITO_NOT_BOOTABLE	0
+ 
++#define	EL_TORITO_SECTION_HEADER	0x90
++#define	EL_TORITO_LAST_SECTION_HEADER	0x91
++
+ #define	EL_TORITO_MEDIA_NOEMUL	0
+ #define	EL_TORITO_MEDIA_12FLOP	1
+ #define	EL_TORITO_MEDIA_144FLOP	2
+@@ -173,7 +177,7 @@ struct eltorito_validation_entry {
+ struct eltorito_defaultboot_entry {
+ 	char boot_id			[ISODCL(1,    1)]; /* 711 */
+ 	char boot_media			[ISODCL(2,    2)];
+-	char loadseg			[ISODCL(3,    4)]; /* 711 */
++	char loadseg			[ISODCL(3,    4)]; /* 712 */
+ 	char sys_type			[ISODCL(5,    5)];
+ 	char pad1			[ISODCL(6,    6)];
+ 	char nsect			[ISODCL(7,    8)];
+@@ -181,6 +185,14 @@ struct eltorito_defaultboot_entry {
+ 	char pad2			[ISODCL(13,  32)];
+ };
+ 
++/* El Torito Section Header Entry in boot catalog */
++struct eltorito_sectionheader_entry {
++	char headerid			[ISODCL(1,    1)]; /* 711 */
++	char arch			[ISODCL(2,    2)];
++	char num_entries		[ISODCL(3,    4)]; /* 711 */
++	char id				[ISODCL(5,   32)];
++};
++
+ /*
+  * XXX JS: The next two structures have odd lengths!
+  * Some compilers (e.g. on Sun3/mc68020) padd the structures to even length.
diff --git a/pkgs/tools/cd-dvd/cdrkit/default.nix b/pkgs/tools/cd-dvd/cdrkit/default.nix
index ddde6452b2d7..0d44624786b6 100644
--- a/pkgs/tools/cd-dvd/cdrkit/default.nix
+++ b/pkgs/tools/cd-dvd/cdrkit/default.nix
@@ -1,16 +1,17 @@
 {stdenv, fetchurl, cmake, libcap, zlib, bzip2}:
 
 stdenv.mkDerivation rec {
-  name = "cdrkit-1.1.10";
+  name = "cdrkit-1.1.11";
 
   src = fetchurl {
     url = "http://cdrkit.org/releases/${name}.tar.gz";
-    sha256 = "1r87n4293lk2xgik9x1lvjr86rdsbaldf0d5flx6zb4c0ss90vlb";
+    sha256 = "1nj7iv3xrq600i37na9a5idd718piiiqbs4zxvpjs66cdrsk1h6i";
   };
 
   buildInputs = [cmake libcap zlib bzip2];
 
-  patches = [ ./include-path.patch ];
+  # efi-boot-patch extracted from http://arm.koji.fedoraproject.org/koji/rpminfo?rpmID=174244
+  patches = [ ./include-path.patch ./cdrkit-1.1.9-efi-boot.patch ];
 
   postInstall = ''
     # file name compatibility with the old cdrecord (growisofs wants this name)
diff --git a/pkgs/tools/misc/xburst-tools/default.nix b/pkgs/tools/misc/xburst-tools/default.nix
index 7bd5ccddee0e..563406e430b8 100644
--- a/pkgs/tools/misc/xburst-tools/default.nix
+++ b/pkgs/tools/misc/xburst-tools/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, libusb, autoconf, automake, confuse, pkgconfig
+{ stdenv, fetchgit, libusb, libusb1, autoconf, automake, confuse, pkgconfig
 , gccCross ? null }:
 
 let
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
   dontCrossStrip = true;
 
   buildNativeInputs = [ pkgconfig ];
-  buildInputs = [ libusb autoconf automake confuse ] ++
+  buildInputs = [ libusb libusb1 autoconf automake confuse ] ++
     stdenv.lib.optional (gccCross != null) gccCross;
 
   meta = {
diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix
index 49aacaa4ef9a..00f37bd61e38 100644
--- a/pkgs/tools/networking/network-manager/default.nix
+++ b/pkgs/tools/networking/network-manager/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, intltool, wirelesstools, pkgconfig, dbus_glib, xz
 , udev, libnl1, libuuid, polkit, gnutls, ppp, dhcp, dhcpcd, iptables
-, libgcrypt, dnsmasq, avahi }:
+, libgcrypt, dnsmasq, avahi, substituteAll }:
 
 stdenv.mkDerivation rec {
   name = "network-manager-${version}";
@@ -33,31 +33,24 @@ stdenv.mkDerivation rec {
 
   buildNativeInputs = [ intltool pkgconfig ];
 
-  patches = [ ./nixos-purity.patch ];
+  patches =
+    [ ( substituteAll {
+        src = ./nixos-purity.patch;
+        inherit avahi dnsmasq ppp;
+        glibc = stdenv.gcc.libc;
+      })
+    ];
 
   preInstall =
     ''
       installFlagsArray=( "sysconfdir=$out/etc" "localstatedir=$out/var" )
     '';
 
-  inherit avahi dnsmasq ppp;
-  glibc = stdenv.gcc.libc;
-
-  # Substitute full paths, check if there any not substituted path
-  postPatch =
-    ''
-      for i in src/backends/NetworkManagerExherbo.c src/dns-manager/nm-dns-dnsmasq.c \
-        src/dnsmasq-manager/nm-dnsmasq-manager.c src/nm-device.c src/ppp-manager/nm-ppp-manager.c; do
-        substituteAll "$i" "$i"
-      done
-      find . -name \*.c | xargs grep '@[a-zA-Z]*@' && exit 1 || true
-    '';
-
   meta = with stdenv.lib; {
     homepage = http://projects.gnome.org/NetworkManager/;
     description = "Network configuration and management in an easy way. Desktop environment independent.";
     license = licenses.gpl2Plus;
-    maintainers = [ maintainers.phreedom ];
+    maintainers = [ maintainers.phreedom maintainers.urkud ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/networking/network-manager/nixos-purity.patch b/pkgs/tools/networking/network-manager/nixos-purity.patch
index 93e651ea096e..41f7d3b73516 100644
--- a/pkgs/tools/networking/network-manager/nixos-purity.patch
+++ b/pkgs/tools/networking/network-manager/nixos-purity.patch
@@ -55,7 +55,7 @@ index 2767208..6562015 100644
 -		"/usr/local/sbin/dnsmasq",
 -		"/usr/sbin/dnsmasq",
 -		"/sbin/dnsmasq",
-+		"@dnsmasq@/sbin/dnsmasq",
++		"@dnsmasq@/bin/dnsmasq",
  		NULL
  	};
  	const char **binary = paths;
@@ -70,7 +70,7 @@ index ca2f9dc..7afb118 100644
 -		"/usr/local/sbin/dnsmasq",
 -		"/usr/sbin/dnsmasq",
 -		"/sbin/dnsmasq",
-+		"@dnsmasq@/sbin/dnsmasq",
++		"@dnsmasq@/bin/dnsmasq",
  		NULL
  	};
  
@@ -84,7 +84,7 @@ index 3522ea4..75b2db3 100644
  	static const char *aipd_paths[] = {
 -		"/usr/sbin/avahi-autoipd",
 -		"/usr/local/sbin/avahi-autoipd",
-+		"@avahi@/sbin/autoipd",
++		"@avahi@/sbin/avahi-autoipd",
  		NULL
  	};
  	int i = 0;
diff --git a/pkgs/tools/networking/network-manager/pptp.nix b/pkgs/tools/networking/network-manager/pptp.nix
index 3abea68366dc..dc3c1643ebcc 100644
--- a/pkgs/tools/networking/network-manager/pptp.nix
+++ b/pkgs/tools/networking/network-manager/pptp.nix
@@ -1,24 +1,26 @@
-{ stdenv, fetchurl, networkmanager, pptp, ppp, intltool, pkgconfig }:
-
-let
-  pn = "networkmanager-pptp";
-  gnome_pn = "NetworkManager-pptp";
-  major = "0.9";
-  version = "0.9.0";
-  src = fetchurl {
-    url = "mirror://gnome/sources/${gnome_pn}/${major}/${gnome_pn}-${version}.tar.xz";
-    sha256 = "1mfbavcnc871sxkisisnic472am0qmkgw7caj0b86sdir2q83nlp";
-  };
-in
+{ stdenv, fetchurl, networkmanager, pptp, ppp, intltool, pkgconfig
+, withGnome ? false, gtk, libgnome_keyring }:
 
 stdenv.mkDerivation rec {
-  name = "${pn}-${version}";
+  name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
+  pname = "NetworkManager-pptp";
+  version = "0.9.2.0";
 
-  inherit src;
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/0.9/${pname}-${version}.tar.xz";
+    sha256 = "1fj2v8pjc17m9calckgc2jm8wbimwga8if4r21walf9xysvhsd1b";
+  };
 
-  buildInputs = [ networkmanager pptp ppp ];
+  buildInputs = [ networkmanager pptp ppp ]
+    ++ stdenv.lib.optionals withGnome [ gtk libgnome_keyring ];
 
   buildNativeInputs = [ intltool pkgconfig ];
 
-  configureFlags = "--without-gnome --disable-nls";
+  configureFlags =
+    if withGnome then "--with-gnome --with-gtkver=2" else "--without-gnome";
+
+  meta = {
+    description = "PPtP plugin for NetworkManager";
+    inherit (networkmanager.meta) maintainers platforms;
+  };
 }
diff --git a/pkgs/tools/networking/networkmanagement/default.nix b/pkgs/tools/networking/networkmanagement/default.nix
index 960462e6ba93..682b78f2bae3 100644
--- a/pkgs/tools/networking/networkmanagement/default.nix
+++ b/pkgs/tools/networking/networkmanagement/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "networkmanagement";
-  version = "0.8.98";
+  version = "0.9.0";
   name = "${pname}-${version}";
 in
 stdenv.mkDerivation {
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://kde/unstable/${pname}/${version}/src/${name}.tar.bz2";
-    sha256 = "0bb8096q6yx4657jc20f50mfsjyfd1wz0npa6in030ydzm5jk3ax";
+    sha256 = "0bxb5hzygf4szv01903zirzxjb3r2nzza9ya3rag4lkxxpwaynpd";
   };
 
   buildInputs = [ kdelibs kde_workspace networkmanager ];
diff --git a/pkgs/tools/networking/tcpdump/default.nix b/pkgs/tools/networking/tcpdump/default.nix
index e9e55f48beec..b4b96a549e14 100644
--- a/pkgs/tools/networking/tcpdump/default.nix
+++ b/pkgs/tools/networking/tcpdump/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libpcap, enableStatic ? false }:
 
 stdenv.mkDerivation rec {
-  name = "tcpdump-4.1.1";
+  name = "tcpdump-4.2.1";
 
   src = fetchurl {
     url = "http://www.tcpdump.org/release/${name}.tar.gz";
-    sha256 = "02kz3sghpg16p26dhid8ma67pxil8x5jqdd83fvdnypcc6ylpkg6";
+    sha256 = "1zwv9zp169dwqwwwi6lfd3fhiayiq81ijqmwi0pfdvw63skfjmsl";
   };
 
   buildInputs = [ libpcap ];
diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix
index 235f85dc51a4..f3ef69dd03d9 100644
--- a/pkgs/tools/package-management/nix/unstable.nix
+++ b/pkgs/tools/package-management/nix/unstable.nix
@@ -5,11 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nix-1.0pre2606_8afd28a";
+  name = "nix-1.0pre2614_005d1e4";
 
   src = fetchurl {
-    url = "http://hydra.nixos.org/build/2183656/download/4/${name}.tar.bz2";
-    sha256 = "4f21d01563ab9e949e09997ddaa89066c40a13b27e028a6fdffc67b97dd90dcb";
+    url = "http://hydra.nixos.org/build/2230618/download/4/${name}.tar.bz2";
+    sha256 = "47a4ff811f0d23d1c0176bc1fbb828edf16906568b0cbf5942b912ed2d2c1b44";
   };
 
   buildNativeInputs = [ perl pkgconfig ];
diff --git a/pkgs/tools/system/efibootmgr/arbitrary-filenames.patch b/pkgs/tools/system/efibootmgr/arbitrary-filenames.patch
new file mode 100644
index 000000000000..ae542ac87952
--- /dev/null
+++ b/pkgs/tools/system/efibootmgr/arbitrary-filenames.patch
@@ -0,0 +1,24 @@
+diff -Naur efibootmgr-0.5.4-orig/src/lib/efi.c efibootmgr-0.5.4/src/lib/efi.c
+--- efibootmgr-0.5.4-orig/src/lib/efi.c	2008-01-03 15:34:01.000000000 +0100
++++ efibootmgr-0.5.4/src/lib/efi.c	2012-03-13 22:25:51.000000000 +0100
+@@ -495,7 +495,8 @@
+     int rc, edd_version=0;
+     uint8_t mbr_type=0, signature_type=0;
+     uint64_t start=0, size=0;
+-    efi_char16_t os_loader_path[40];
++    efi_char16_t *os_loader_path;
++    size_t os_loader_path_size;
+ 
+     memset(signature, 0, sizeof(signature));
+ 
+@@ -535,7 +536,9 @@
+ 				     signature,
+ 				     mbr_type, signature_type);
+ 
+-    efichar_from_char(os_loader_path, opts.loader, sizeof(os_loader_path));
++    os_loader_path_size = sizeof(efi_char16_t) * (1 + strlen(opts.loader) / sizeof(char));
++    os_loader_path = malloc(os_loader_path_size);
++    efichar_from_char(os_loader_path, opts.loader, os_loader_path_size);
+     p += make_file_path_device_path (p, os_loader_path);
+     p += make_end_device_path       (p);
+ 
diff --git a/pkgs/tools/system/efibootmgr/default.nix b/pkgs/tools/system/efibootmgr/default.nix
index bf4c429808b2..618454d87a46 100644
--- a/pkgs/tools/system/efibootmgr/default.nix
+++ b/pkgs/tools/system/efibootmgr/default.nix
@@ -7,13 +7,14 @@ stdenv.mkDerivation {
 
   buildInputs = [ pciutils zlib perl ];
 
+  patches = [ ./arbitrary-filenames.patch ];
   
   src = fetchurl {
     url = "http://linux.dell.com/efibootmgr/permalink/efibootmgr-${version}.tar.gz";
     sha256 = "0wcfgf8x4p4xfh38m9x3njwsxibm9bhnmvpjj94lj9sk9xxa8qmm";
   };
 
-  patchPhase = ''
+  postPatch = ''
     substituteInPlace "./tools/install.pl" \
       --replace "/usr/bin/perl" "${perl}/bin/perl"
   '';
diff --git a/pkgs/tools/typesetting/tex/pgfplots/default.nix b/pkgs/tools/typesetting/tex/pgfplots/default.nix
new file mode 100644
index 000000000000..bc47244a5fa8
--- /dev/null
+++ b/pkgs/tools/typesetting/tex/pgfplots/default.nix
@@ -0,0 +1,20 @@
+{stdenv, fetchurl, unzip}:
+
+stdenv.mkDerivation {
+  name = "pgfplots-1.5.1";
+  src = fetchurl {
+    url = mirror://sourceforge/pgfplots/pgfplots_1.5.1.tds.zip;
+    sha256 = "1xajrmq35i0qlsfwydy5zzg6f1jg88hqqh5b3xsmglzrarnllbdi";
+  };
+  
+  buildInputs = [ unzip ];
+  
+  unpackPhase = "unzip $src";
+  
+  buildPhase = "true";
+  
+  installPhase = "
+    ensureDir $out/share/texmf-nix
+    cp -prd * $out/share/texmf-nix
+  ";
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 5a62e30ab4a2..6522c66c00f6 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -132,7 +132,7 @@ let
 
   # We use `callPackage' to be able to omit function arguments that
   # can be obtained from `pkgs' or `pkgs.xorg' (i.e. `defaultScope').
-  # Use `newScope' for sets of packages in `pkgs' (see e.g. `gtkLibs'
+  # Use `newScope' for sets of packages in `pkgs' (see e.g. `gnome'
   # below).
   callPackage = newScope {};
 
@@ -634,6 +634,9 @@ let
 
   ecryptfs = callPackage ../tools/security/ecryptfs { };
 
+  edk2 = callPackage ../development/compilers/edk2 {
+  };
+
   efibootmgr = callPackage ../tools/system/efibootmgr { };
 
   enblendenfuse = callPackage ../tools/graphics/enblend-enfuse { };
@@ -714,9 +717,7 @@ let
 
   gawk = callPackage ../tools/text/gawk { };
 
-  gdmap = callPackage ../tools/system/gdmap {
-    inherit (pkgs.gtkLibs) gtk;
-  };
+  gdmap = callPackage ../tools/system/gdmap { };
 
   genext2fs = callPackage ../tools/filesystems/genext2fs { };
 
@@ -738,8 +739,7 @@ let
 
   gnokii = builderDefsPackage (import ../tools/misc/gnokii) {
     inherit intltool perl gettext libusb pkgconfig bluez readline pcsclite
-      libical;
-    inherit (gtkLibs) gtk glib;
+      libical gtk glib;
     inherit (xorg) libXpm;
   };
 
@@ -765,7 +765,6 @@ let
   gnupg = callPackage ../tools/security/gnupg { };
 
   gnuplot = callPackage ../tools/graphics/gnuplot {
-    inherit (gtkLibs) pango;
     texLive = null;
     lua = null;
   };
@@ -780,17 +779,13 @@ let
 
   gptfdisk = callPackage ../tools/system/gptfdisk { };
 
-  graphviz = callPackage ../tools/graphics/graphviz {
-    inherit (gtkLibs) pango;
-  };
+  graphviz = callPackage ../tools/graphics/graphviz { };
 
   /* Readded by Michael Raskin. There are programs in the wild
    * that do want 2.0 but not 2.22. Please give a day's notice for
    * objections before removal.
    */
-  graphviz_2_0 = callPackage ../tools/graphics/graphviz/2.0.nix {
-    inherit (gtkLibs) pango;
-  };
+  graphviz_2_0 = callPackage ../tools/graphics/graphviz/2.0.nix { };
 
   groff = callPackage ../tools/text/groff {
     ghostscript = null;
@@ -822,6 +817,8 @@ let
     inherit (gnome) libsoup;
   };
 
+  gupnp_igd = callPackage ../development/libraries/gupnp-igd {};
+
   gupnptools = callPackage ../tools/networking/gupnp-tools {
     inherit (gnome) libsoup libglade gnomeicontheme;
   };
@@ -911,9 +908,7 @@ let
 
   jing_tools = callPackage ../tools/text/xml/jing/jing-script.nix { };
 
-  jnettop = callPackage ../tools/networking/jnettop {
-    inherit (gnome) glib;
-  };
+  jnettop = callPackage ../tools/networking/jnettop { };
 
   jscoverage = callPackage ../development/tools/misc/jscoverage { };
 
@@ -1075,6 +1070,8 @@ let
 
   networkmanager_pptp = callPackage ../tools/networking/network-manager/pptp.nix { };
 
+  networkmanager_pptp_gnome = networkmanager_pptp.override { withGnome = true; };
+
   networkmanagerapplet = newScope gnome ../tools/networking/network-manager-applet { };
 
   nilfs_utils = callPackage ../tools/filesystems/nilfs-utils {};
@@ -1200,9 +1197,7 @@ let
 
   philter = callPackage ../tools/networking/philter { };
 
-  pinentry = callPackage ../tools/security/pinentry {
-    inherit (gnome) glib gtk;
-  };
+  pinentry = callPackage ../tools/security/pinentry { };
 
   pius = callPackage ../tools/security/pius { };
 
@@ -1259,8 +1254,7 @@ let
   };
 
   pythonSexy = builderDefsPackage (import ../development/python-modules/libsexy) {
-    inherit python libsexy pkgconfig libxml2 pygtk;
-    inherit (gtkLibs) pango gtk glib;
+    inherit python libsexy pkgconfig libxml2 pygtk pango gtk glib;
   };
 
   openmpi = callPackage ../development/libraries/openmpi { };
@@ -1315,9 +1309,7 @@ let
     db4 = db45;
   };
 
-  rrdtool = callPackage ../tools/misc/rrdtool {
-    inherit (gtkLibs) pango;
-  };
+  rrdtool = callPackage ../tools/misc/rrdtool { };
 
   rtorrent = callPackage ../tools/networking/p2p/rtorrent { };
 
@@ -1444,9 +1436,7 @@ let
 
   udftools = callPackage ../tools/filesystems/udftools {};
 
-  ufraw = callPackage ../applications/graphics/ufraw {
-    inherit (gnome) gtk;
-  };
+  ufraw = callPackage ../applications/graphics/ufraw { };
 
   unetbootin = callPackage ../tools/cd-dvd/unetbootin { };
 
@@ -1580,7 +1570,7 @@ let
   x11_ssh_askpass = callPackage ../tools/networking/x11-ssh-askpass { };
 
   xbursttools = assert stdenv ? glibc; import ../tools/misc/xburst-tools {
-    inherit stdenv fetchgit autoconf automake libusb confuse pkgconfig;
+    inherit stdenv fetchgit autoconf automake confuse pkgconfig libusb libusb1;
     # It needs a cross compiler for mipsel to build the firmware it will
     # load into the Ben Nanonote
     gccCross =
@@ -1619,7 +1609,6 @@ let
   xfsprogs = callPackage ../tools/filesystems/xfsprogs { };
 
   xmlroff = callPackage ../tools/typesetting/xmlroff {
-    inherit (gtkLibs) glib pango gtk;
     inherit (gnome) libgnomeprint;
   };
 
@@ -1941,7 +1930,8 @@ let
 
     configureFlags = a.configureFlags
       # This flag replaces `no-sys-dirs.patch'.
-      + " --with-native-system-header-dir=${stdenv.glibc}/include";
+      + (lib.optionalString (stdenv ? glibc)
+          " --with-native-system-header-dir=${stdenv.glibc}/include");
 
     patches = [];
   })));
@@ -2023,7 +2013,7 @@ let
     langC = false;
     profiledCompiler = false;
     inherit zip unzip zlib boehmgc gettext pkgconfig;
-    inherit (gtkLibs) gtk;
+    inherit gtk;
     inherit (gnome) libart_lgpl;
     inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender
       libXrandr xproto renderproto xextproto inputproto randrproto;
@@ -2037,7 +2027,7 @@ let
     langC = false;
     profiledCompiler = false;
     inherit zip unzip zlib boehmgc gettext pkgconfig perl;
-    inherit (gtkLibs) gtk;
+    inherit gtk;
     inherit (gnome) libart_lgpl;
     inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender
       libXrandr xproto renderproto xextproto inputproto randrproto;
@@ -2051,7 +2041,7 @@ let
     langC = false;
     profiledCompiler = false;
     inherit zip unzip zlib boehmgc gettext pkgconfig perl;
-    inherit (gtkLibs) gtk;
+    inherit gtk;
     inherit (gnome) libart_lgpl;
     inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender
       libXrandr xproto renderproto xextproto inputproto randrproto;
@@ -2311,7 +2301,6 @@ let
   gprolog = callPackage ../development/compilers/gprolog { };
 
   gwt = callPackage ../development/compilers/gwt {
-    inherit (gtkLibs) glib gtk pango atk;
     libstdcpp5 = gcc33.gcc;
   };
   gwt240 = callPackage ../development/compilers/gwt/2.4.0.nix { };
@@ -2363,8 +2352,7 @@ let
   jikes = callPackage ../development/compilers/jikes { };
 
   lazarus = builderDefsPackage (import ../development/compilers/fpc/lazarus.nix) {
-    inherit makeWrapper;
-    inherit (gtkLibs) gtk glib pango atk gdk_pixbuf;
+    inherit makeWrapper gtk glib pango atk gdk_pixbuf;
     inherit (xlibs) libXi inputproto libX11 xproto libXext xextproto;
     fpc = fpc;
   };
@@ -2754,9 +2742,7 @@ let
 
   qi = callPackage ../development/compilers/qi { };
 
-  racket = callPackage ../development/interpreters/racket {
-    inherit (gtkLibs) pango glib gtk;
-  };
+  racket = callPackage ../development/interpreters/racket { };
 
   regina = callPackage ../development/interpreters/regina {};
 
@@ -2825,8 +2811,7 @@ let
 
   guileGnome = callPackage ../development/guile-modules/guile-gnome {
     gconf = gnome.GConf;
-    inherit (gnome) glib gnome_vfs gtk libglade libgnome libgnomecanvas
-      libgnomeui pango;
+    inherit (gnome) gnome_vfs libglade libgnome libgnomecanvas libgnomeui;
   };
 
   guile_lib = callPackage ../development/guile-modules/guile-lib { };
@@ -3320,13 +3305,9 @@ let
 
   cluceneCore = clucene_core; # !!! remove this
 
-  clutter = callPackage ../development/libraries/clutter {
-    inherit (gnome) glib pango gtk;
-  };
+  clutter = callPackage ../development/libraries/clutter { };
 
-  clutter_gtk = callPackage ../development/libraries/clutter-gtk {
-    inherit (gnome) gtk;
-  };
+  clutter_gtk = callPackage ../development/libraries/clutter-gtk { };
 
   cminpack = callPackage ../development/libraries/cminpack { };
 
@@ -3396,9 +3377,7 @@ let
 
   eigen = callPackage ../development/libraries/eigen {};
 
-  enchant = callPackage ../development/libraries/enchant {
-    inherit (gnome) glib;
-  };
+  enchant = callPackage ../development/libraries/enchant { };
 
   enet = callPackage ../development/libraries/enet { };
 
@@ -3425,10 +3404,7 @@ let
 
   faad2 = callPackage ../development/libraries/faad2 { };
 
-  farsight2 = callPackage ../development/libraries/farsight2 {
-    inherit (gnome) glib;
-    inherit (gst_all) gstreamer gstPluginsBase gst_python;
-  };
+  farsight2 = callPackage ../development/libraries/farsight2 { };
 
   fcgi = callPackage ../development/libraries/fcgi { };
 
@@ -3495,7 +3471,6 @@ let
 
   gegl = callPackage ../development/libraries/gegl {
     #  avocodec avformat librsvg
-    inherit (gtkLibs) pango glib gtk;
   };
 
   geoclue = callPackage ../development/libraries/geoclue {};
@@ -3658,27 +3633,51 @@ let
   gobjectIntrospection = callPackage ../development/libraries/gobject-introspection { };
 
   goffice = callPackage ../development/libraries/goffice {
-    inherit (gnome) glib gtk libglade libgnomeui pango;
+    inherit (gnome) libglade libgnomeui;
     gconf = gnome.GConf;
     libart = gnome.libart_lgpl;
   };
 
-  goocanvas = callPackage ../development/libraries/goocanvas {
-    inherit (gnome) gtk glib;
-  };
+  goocanvas = callPackage ../development/libraries/goocanvas { };
 
   google_perftools = callPackage ../development/libraries/google-perftools { };
 
   #GMP ex-satellite, so better keep it near gmp
   mpfr = callPackage ../development/libraries/mpfr { };
 
-  gst_all = recurseIntoAttrs
-    (let callPackage = newScope pkgs.gst_all; in
-     import ../development/libraries/gstreamer { inherit callPackage; }
-    );
+  gst_all = {
+    inherit (pkgs) gstreamer gnonlin gst_python qt_gstreamer;
+    gstPluginsBase = pkgs.gst_plugins_base;
+    gstPluginsBad = pkgs.gst_plugins_bad;
+    gstPluginsGood = pkgs.gst_plugins_good;
+    gstPluginsUgly = pkgs.gst_plugins_ugly;
+    gstFfmpeg = pkgs.gst_ffmpeg;
+  };
+
+  gstreamer = callPackage ../development/libraries/gstreamer/gstreamer {};
+
+  gst_plugins_base = callPackage ../development/libraries/gstreamer/gst-plugins-base {};
+
+  gst_plugins_good = callPackage ../development/libraries/gstreamer/gst-plugins-good {};
+
+  gst_plugins_bad = callPackage ../development/libraries/gstreamer/gst-plugins-bad {};
+
+  gst_plugins_ugly = callPackage ../development/libraries/gstreamer/gst-plugins-ugly {};
+
+  gst_ffmpeg = callPackage ../development/libraries/gstreamer/gst-ffmpeg {};
+
+  gst_python = callPackage ../development/libraries/gstreamer/gst-python {};
+
+  gnonlin = callPackage ../development/libraries/gstreamer/gnonlin {};
+
+  qt_gstreamer = callPackage ../development/libraries/gstreamer/qt-gstreamer {};
 
   gnet = callPackage ../development/libraries/gnet { };
 
+  gnu_efi = callPackage ../development/libraries/gnu-efi {
+    stdenv = overrideInStdenv stdenv [gnumake381];
+  };
+
   gnutls = callPackage ../development/libraries/gnutls {
     guileBindings = getConfig ["gnutls" "guile"] true;
   };
@@ -3704,9 +3703,7 @@ let
 
   gss = callPackage ../development/libraries/gss { };
 
-  gtkimageview = callPackage ../development/libraries/gtkimageview {
-    inherit (gnome) gtk;
-  };
+  gtkimageview = callPackage ../development/libraries/gtkimageview { };
 
   gtkmathview = callPackage ../development/libraries/gtkmathview { };
 
@@ -3742,18 +3739,17 @@ let
   gtk3 = lowPrio (callPackage ../development/libraries/gtk+/3.2.x.nix { });
 
   gtkmozembedsharp = callPackage ../development/libraries/gtkmozembed-sharp {
-    inherit (gnome) gtk;
     gtksharp = gtksharp2;
   };
 
   gtksharp1 = callPackage ../development/libraries/gtk-sharp-1 {
-    inherit (gnome) gtk glib pango libglade libgtkhtml gtkhtml
+    inherit (gnome) libglade libgtkhtml gtkhtml
               libgnomecanvas libgnomeui libgnomeprint
               libgnomeprintui GConf;
   };
 
   gtksharp2 = callPackage ../development/libraries/gtk-sharp-2 {
-    inherit (gnome) gtk glib pango libglade libgtkhtml gtkhtml
+    inherit (gnome) libglade libgtkhtml gtkhtml
               libgnomecanvas libgnomeui libgnomeprint
               libgnomeprintui GConf gnomepanel;
   };
@@ -3858,9 +3854,7 @@ let
 
   lcms2 = callPackage ../development/libraries/lcms2 { };
 
-  lensfun = callPackage ../development/libraries/lensfun {
-    inherit (gnome) glib;
-  };
+  lensfun = callPackage ../development/libraries/lensfun { };
 
   lesstif = callPackage ../development/libraries/lesstif { };
 
@@ -3898,9 +3892,7 @@ let
 
   libcaca = callPackage ../development/libraries/libcaca { };
 
-  libcanberra = callPackage ../development/libraries/libcanberra {
-    # gstreamer = gst_all.gstreamer;
-  };
+  libcanberra = callPackage ../development/libraries/libcanberra { };
 
   libcdaudio = callPackage ../development/libraries/libcdaudio { };
 
@@ -3909,7 +3901,7 @@ let
   libcdio = callPackage ../development/libraries/libcdio { };
 
   libchamplain = callPackage ../development/libraries/libchamplain {
-    inherit (gnome) gtk glib libsoup;
+    inherit (gnome) libsoup;
   };
 
   libchop = callPackage ../development/libraries/libchop { };
@@ -3991,7 +3983,6 @@ let
   libexosip = callPackage ../development/libraries/exosip {};
 
   libextractor = callPackage ../development/libraries/libextractor {
-    inherit (gnome) gtk;
     libmpeg2 = mpeg2dec;
   };
 
@@ -4033,9 +4024,7 @@ let
 
   liblastfm = callPackage ../development/libraries/liblastfm { };
 
-  liblqr1 = callPackage ../development/libraries/liblqr-1 {
-    inherit (gnome) glib;
-  };
+  liblqr1 = callPackage ../development/libraries/liblqr-1 { };
 
   libmhash = callPackage ../development/libraries/libmhash {};
 
@@ -4043,9 +4032,7 @@ let
 
   libnatspec = callPackage ../development/libraries/libnatspec { };
 
-  libnice = callPackage ../development/libraries/libnice {
-    inherit (gnome) glib;
-  };
+  libnice = callPackage ../development/libraries/libnice { };
 
   libplist = callPackage ../development/libraries/libplist { };
 
@@ -4056,7 +4043,7 @@ let
   libspectre = callPackage ../development/libraries/libspectre { };
 
   libgsf = callPackage ../development/libraries/libgsf {
-    inherit (gnome) glib gnome_vfs libbonobo;
+    inherit (gnome) gnome_vfs libbonobo;
   };
 
   libiconv = callPackage ../development/libraries/libiconv { };
@@ -4093,9 +4080,7 @@ let
 
   libmad = callPackage ../development/libraries/libmad { };
 
-  libmatchbox = callPackage ../development/libraries/libmatchbox {
-    inherit (gtkLibs) pango;
-  };
+  libmatchbox = callPackage ../development/libraries/libmatchbox { };
 
   libmatthew_java = callPackage ../development/libraries/java/libmatthew-java { };
 
@@ -4249,13 +4234,9 @@ let
 
   libwmf = callPackage ../development/libraries/libwmf { };
 
-  libwpd = callPackage ../development/libraries/libwpd {
-    inherit (gnome) glib;
-  };
+  libwpd = callPackage ../development/libraries/libwpd { };
 
-  libwpd_08 = callPackage ../development/libraries/libwpd/0.8.nix {
-    inherit (gnome) glib;
-  };
+  libwpd_08 = callPackage ../development/libraries/libwpd/0.8.nix { };
 
   libwpg = callPackage ../development/libraries/libwpg { };
 
@@ -4277,9 +4258,7 @@ let
     pythonSupport = true;
   };
 
-  libxmlxx = callPackage ../development/libraries/libxmlxx {
-    inherit (gtkLibs) glibmm;
-  };
+  libxmlxx = callPackage ../development/libraries/libxmlxx { };
 
   libxslt = callPackage ../development/libraries/libxslt { };
 
@@ -4441,13 +4420,11 @@ let
 
   opencv = callPackage ../development/libraries/opencv {
     ffmpeg = ffmpeg_0_6_90;
-    inherit (gst_all) gstreamer;
   };
 
   opencv_2_1 = callPackage ../development/libraries/opencv/2.1.nix {
     ffmpeg = ffmpeg_0_6_90;
     libpng = libpng12;
-    inherit (gst_all) gstreamer;
   };
 
   # this ctl version is needed by openexr_viewers
@@ -4483,9 +4460,7 @@ let
 
   p11_kit = callPackage ../development/libraries/p11-kit { };
 
-  pangoxsl = callPackage ../development/libraries/pangoxsl {
-    inherit (gtkLibs) glib pango;
-  };
+  pangoxsl = callPackage ../development/libraries/pangoxsl { };
 
   pcre = callPackage ../development/libraries/pcre {
     unicodeSupport = getConfig ["pcre" "unicode"] true;
@@ -4555,15 +4530,11 @@ let
 
   qt4 = pkgs.kde4.qt4;
 
-  qt47 = callPackage ../development/libraries/qt-4.x/4.7 {
-    inherit (pkgs.gnome) glib;
-  };
+  qt47 = callPackage ../development/libraries/qt-4.x/4.7 { };
 
   qt48 = callPackage ../development/libraries/qt-4.x/4.8 {
     # GNOME dependencies are not used unless gtkStyle == true
-    inherit (pkgs.gnome) gtk libgnomeui GConf gnome_vfs;
-    # GStreamer is required for HTML5 video in QtWebKit
-    inherit (pkgs.gst_all) gstreamer gstPluginsBase;
+    inherit (pkgs.gnome) libgnomeui GConf gnome_vfs;
   };
 
   qtscriptgenerator = callPackage ../development/libraries/qtscriptgenerator { };
@@ -4602,8 +4573,6 @@ let
 
   rlog = callPackage ../development/libraries/rlog { };
 
-  rte = callPackage ../development/libraries/rte { };
-
   rubberband = callPackage ../development/libraries/rubberband {
     fftw = fftwSinglePrec;
     inherit (vamp) vampSDK;
@@ -4692,10 +4661,6 @@ let
 
   talloc = callPackage ../development/libraries/talloc { };
 
-##  tapioca_qt = import ../development/libraries/tapioca-qt {
-##    inherit stdenv fetchurl cmake qt4 telepathy_qt;
-##  };
-
   tclap = callPackage ../development/libraries/tclap {};
 
   tcp_wrappers = callPackage ../development/libraries/tcp-wrappers {};
@@ -4704,11 +4669,11 @@ let
 
   tecla = callPackage ../development/libraries/tecla { };
 
-  telepathy_gabble = callPackage ../development/libraries/telepathy-gabble { };
+  telepathy_glib = callPackage ../development/libraries/telepathy/glib { };
 
-  telepathy_glib = callPackage ../development/libraries/telepathy-glib { };
+  telepathy_farsight = callPackage ../development/libraries/telepathy/farsight { };
 
-  telepathy_qt = callPackage ../development/libraries/telepathy-qt { };
+  telepathy_qt = callPackage ../development/libraries/telepathy/qt { };
 
   tk = callPackage ../development/libraries/tk { };
 
@@ -4753,14 +4718,14 @@ let
   webkit =
     builderDefsPackage ../development/libraries/webkit {
       inherit (gnome) gtkdoc libsoup;
-      inherit (gtkLibs) gtk atk pango glib;
+      inherit gtk atk pango glib;
       inherit freetype fontconfig gettext gperf curl
         libjpeg libtiff libxml2 libxslt sqlite
         icu cairo perl intltool automake libtool
         pkgconfig autoconf bison libproxy enchant
         python ruby which flex geoclue;
-      inherit (gst_all) gstreamer gstPluginsBase gstFfmpeg
-        gstPluginsGood;
+      inherit gstreamer gst_plugins_base gst_ffmpeg
+        gst_plugins_good;
       inherit (xlibs) libXt renderproto libXrender;
       libpng = libpng12;
     };
@@ -4768,14 +4733,14 @@ let
   webkitSVN =
     builderDefsPackage ../development/libraries/webkit/svn.nix {
       inherit (gnome) gtkdoc libsoup;
-      inherit (gtkLibs) gtk atk pango glib;
+      inherit gtk atk pango glib;
       inherit freetype fontconfig gettext gperf curl
         libjpeg libtiff libxml2 libxslt sqlite
         icu cairo perl intltool automake libtool
         pkgconfig autoconf bison libproxy enchant
         python ruby which flex geoclue;
-      inherit (gst_all) gstreamer gstPluginsBase gstFfmpeg
-        gstPluginsGood;
+      inherit gstreamer gst_plugins_base gst_ffmpeg
+        gst_plugins_good;
       inherit (xlibs) libXt renderproto libXrender;
       libpng = libpng12;
     };
@@ -4785,21 +4750,18 @@ let
   wxGTK = wxGTK28;
 
   wxGTK28 = callPackage ../development/libraries/wxGTK-2.8 {
-    inherit (gtkLibs) gtk;
-    inherit (gst_all) gstreamer gstPluginsBase;
     inherit (gnome) GConf;
+    withMesa = lib.elem system lib.platforms.mesaPlatforms;
   };
 
   wxGTK290 = callPackage ../development/libraries/wxGTK-2.9/2.9.0.nix {
-    inherit (gtkLibs) gtk;
-    inherit (gst_all) gstreamer gstPluginsBase;
     inherit (gnome) GConf;
+    withMesa = lib.elem system lib.platforms.mesaPlatforms;
   };
 
   wxGTK291 = callPackage ../development/libraries/wxGTK-2.9/2.9.1.nix {
-    inherit (gtkLibs) gtk;
-    inherit (gst_all) gstreamer gstPluginsBase;
     inherit (gnome) GConf;
+    withMesa = lib.elem system lib.platforms.mesaPlatforms;
   };
 
   wtk = callPackage ../development/libraries/wtk { };
@@ -4861,11 +4823,6 @@ let
 
   zeromq = callPackage ../development/libraries/zeromq {};
 
-  zvbi = callPackage ../development/libraries/zvbi {
-    pngSupport = true;
-  };
-
-
   ### DEVELOPMENT / LIBRARIES / JAVA
 
 
@@ -4922,7 +4879,9 @@ let
 
   smack = callPackage ../development/libraries/java/smack { };
 
-  swt = callPackage ../development/libraries/java/swt { };
+  swt = callPackage ../development/libraries/java/swt {
+    inherit (gnome) libsoup;
+  };
 
   v8 = callPackage ../development/libraries/v8 { };
 
@@ -5183,6 +5142,8 @@ let
   oidentd = callPackage ../servers/identd/oidentd { };
 
   openfire = callPackage ../servers/xmpp/openfire { };
+ 
+  OVMF = callPackage ../applications/virtualization/OVMF { };
 
   postgresql = postgresql83;
 
@@ -5653,6 +5614,16 @@ let
       ];
   };
 
+  linux_3_3 = makeOverridable (import ../os-specific/linux/kernel/linux-3.3.nix) {
+    inherit fetchurl stdenv perl mktemp module_init_tools ubootChooser;
+    kernelPatches =
+      [ #kernelPatches.fbcondecor_2_6_38
+        kernelPatches.sec_perm_2_6_24
+        kernelPatches.aufs3_3
+        #kernelPatches.mips_restart_2_6_36
+      ];
+  };
+
   /* Linux kernel modules are inherently tied to a specific kernel.  So
      rather than provide specific instances of those packages for a
      specific kernel, we have a function that builds those packages
@@ -5693,9 +5664,7 @@ let
 
     e1000e = callPackage ../os-specific/linux/e1000e {};
 
-    exmap = callPackage ../os-specific/linux/exmap {
-      inherit (gtkLibs) gtkmm;
-    };
+    exmap = callPackage ../os-specific/linux/exmap { };
 
     frandom = callPackage ../os-specific/linux/frandom { };
 
@@ -5747,12 +5716,12 @@ let
     perf = callPackage ../os-specific/linux/kernel/perf.nix { };
 
     sysprof = callPackage ../development/tools/profiling/sysprof {
-      inherit (gnome) gtk glib pango libglade;
+      inherit (gnome) libglade;
     };
 
     systemtap = callPackage ../development/tools/profiling/systemtap {
       linux = kernel;
-      inherit (gnome) gtkmm libglademm;
+      inherit (gnome) libglademm;
     };
 
     v86d = callPackage ../os-specific/linux/v86d { };
@@ -5782,6 +5751,7 @@ let
   linuxPackages_nanonote_jz_2_6_35 = recurseIntoAttrs (linuxPackagesFor linux_nanonote_jz_2_6_35 pkgs.linuxPackages_nanonote_jz_2_6_35);
   linuxPackages_nanonote_jz_2_6_36 = recurseIntoAttrs (linuxPackagesFor linux_nanonote_jz_2_6_36 pkgs.linuxPackages_nanonote_jz_2_6_36);
   linuxPackages_3_2 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_2 pkgs.linuxPackages_3_2);
+  linuxPackages_3_3 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_3 pkgs.linuxPackages_3_3);
 
   # The current default kernel / kernel modules.
   linux = linuxPackages.kernel;
@@ -5860,10 +5830,6 @@ let
 
   gogoclient = callPackage ../os-specific/linux/gogoclient { };
 
-  gw6c = builderDefsPackage (import ../os-specific/linux/gw6c) {
-    inherit fetchurl stdenv nettools openssl procps iproute;
-  };
-
   nss_ldap = callPackage ../os-specific/linux/nss_ldap { };
 
   pam = callPackage ../os-specific/linux/pam { };
@@ -5896,7 +5862,7 @@ let
   };
 
   phat = callPackage ../development/libraries/phat {
-    inherit (gnome) gtk libgnomecanvas;
+    inherit (gnome) libgnomecanvas;
   };
 
   pmount = callPackage ../os-specific/linux/pmount { };
@@ -6083,7 +6049,6 @@ let
   };
 
   wesnoth = callPackage ../games/wesnoth {
-    inherit (gtkLibs) pango;
     lua = lua5;
     boost = boost147;
   };
@@ -6251,6 +6216,8 @@ let
 
   aangifte2010 = callPackage_i686 ../applications/taxes/aangifte-2010 { };
 
+  aangifte2011 = callPackage_i686 ../applications/taxes/aangifte-2011 { };
+
   abcde = callPackage ../applications/audio/abcde { };
 
   abiword = callPackage ../applications/office/abiword {
@@ -6264,12 +6231,10 @@ let
   antiword = callPackage ../applications/office/antiword {};
 
   ardour = callPackage ../applications/audio/ardour {
-    inherit (gtkLibs) glib pango gtk glibmm gtkmm;
     inherit (gnome) libgnomecanvas;
   };
 
   ardour3 =  lowPrio (callPackage ../applications/audio/ardour/ardour3.nix {
-    inherit (gtkLibs) glib pango gtk glibmm gtkmm;
     inherit (gnome) libgnomecanvas libgnomecanvasmm;
   });
 
@@ -6294,7 +6259,6 @@ let
   avogadro = callPackage ../applications/science/chemistry/avogadro { };
 
   awesome = callPackage ../applications/window-managers/awesome {
-    inherit (gtkLibs) glib pango;
     lua = lua5;
     cairo = cairo.override { xcbSupport = true; };
   };
@@ -6336,9 +6300,8 @@ let
   carrier = builderDefsPackage (import ../applications/networking/instant-messengers/carrier/2.5.0.nix) {
     inherit fetchurl stdenv pkgconfig perl perlXMLParser libxml2 openssl nss
       gtkspell aspell gettext ncurses avahi dbus dbus_glib python
-      libtool automake autoconf;
-    GStreamer = gst_all.gstreamer;
-    inherit (gtkLibs) gtk glib;
+      libtool automake autoconf gstreamer;
+    inherit gtk glib;
     inherit (gnome) startupnotification GConf ;
     inherit (xlibs) libXScrnSaver scrnsaverproto libX11 xproto kbproto;
   };
@@ -6368,9 +6331,7 @@ let
       icon = "${chrome}/libexec/chrome/product_logo_48.png";
     };
 
-  cinelerra = callPackage ../applications/video/cinelerra {
-    inherit (gnome) esound;
-  };
+  cinelerra = callPackage ../applications/video/cinelerra { };
 
   cmus = callPackage ../applications/audio/cmus { };
 
@@ -6415,8 +6376,7 @@ let
   darcs = haskellPackages.darcs;
 
   darktable = callPackage ../applications/graphics/darktable {
-    inherit (gnome) GConf gnome_keyring libglade atk;
-    inherit (xlibs) libxcb pixman libpthreadstubs libXau;
+    inherit (gnome) GConf libglade;
   };
 
   dia = callPackage ../applications/graphics/dia {
@@ -6441,10 +6401,7 @@ let
 
   dvdauthor = callPackage ../applications/video/dvdauthor { };
 
-  dvswitch = callPackage ../applications/video/dvswitch {
-    inherit (gtkLibs) gtkmm;
-    inherit (xlibs) libXau libXdmcp libXv libpthreadstubs pixman;
-  };
+  dvswitch = callPackage ../applications/video/dvswitch { };
 
   dwm = callPackage ../applications/window-managers/dwm {
     patches = getConfig [ "dwm" "patches" ] [];
@@ -6480,7 +6437,7 @@ let
     # use override to select the appropriate gui toolkit
     libXaw = if stdenv.isDarwin then xlibs.libXaw else null;
     Xaw3d = null;
-    gtk = if stdenv.isDarwin then null else gtkLibs.gtk;
+    gtk = if stdenv.isDarwin then null else gtk;
     # TODO: these packages don't build on Darwin.
     gconf = null /* if stdenv.isDarwin then null else gnome.GConf */;
     librsvg = null /* if stdenv.isDarwin then null else librsvg */;
@@ -6490,7 +6447,7 @@ let
     # use override to select the appropriate gui toolkit
     libXaw = if stdenv.isDarwin then xlibs.libXaw else null;
     Xaw3d = null;
-    gtk = if stdenv.isDarwin then null else gtkLibs.gtk;
+    gtk = if stdenv.isDarwin then null else gtk;
     # TODO: these packages don't build on Darwin.
     gconf = null /* if stdenv.isDarwin then null else gnome.GConf */;
     librsvg = if stdenv.isDarwin then null else librsvg;
@@ -6578,7 +6535,7 @@ let
   esniper = callPackage ../applications/networking/esniper { };
 
   etherape = callPackage ../applications/networking/sniffers/etherape {
-    inherit (gnome) gnomedocutils libgnome libglade gtk libgnomeui scrollkeeper;
+    inherit (gnome) gnomedocutils libgnome libglade libgnomeui scrollkeeper;
   };
 
   evopedia = callPackage ../applications/misc/evopedia { };
@@ -6590,10 +6547,10 @@ let
   # higher priority.
   evince = hiPrio (callPackage ../applications/misc/evince {
     inherit (gnome) gnomedocutils gnomeicontheme libgnome
-      libgnomeui libglade glib gtk scrollkeeper gnome_keyring;
+      libgnomeui libglade scrollkeeper;
   });
 
-  evolution_data_server = newScope (gnome // gtkLibs) ../servers/evolution-data-server { };
+  evolution_data_server = newScope (gnome) ../servers/evolution-data-server { };
 
   exrdisplay = callPackage ../applications/graphics/exrdisplay {
     fltk = fltk20;
@@ -6646,28 +6603,24 @@ let
   firefoxPkgs = pkgs.firefox100Pkgs;
 
   firefox36Pkgs = callPackage ../applications/networking/browsers/firefox/3.6.nix {
-    inherit (gtkLibs) gtk pango;
     inherit (gnome) libIDL;
   };
 
   firefox36Wrapper = wrapFirefox { browser = firefox36Pkgs.firefox; };
 
   firefox90Pkgs = callPackage ../applications/networking/browsers/firefox/9.0.nix {
-    inherit (gtkLibs) gtk pango;
     inherit (gnome) libIDL;
   };
 
   firefox90Wrapper = wrapFirefox { browser = firefox90Pkgs.firefox; };
 
   firefox100Pkgs = callPackage ../applications/networking/browsers/firefox/10.0.nix {
-    inherit (gtkLibs) gtk pango;
     inherit (gnome) libIDL;
   };
 
   firefox100Wrapper = wrapFirefox { browser = firefox100Pkgs.firefox; };
 
   firefox11Pkgs = callPackage ../applications/networking/browsers/firefox/11.0.nix {
-    inherit (gtkLibs) gtk pango;
     inherit (gnome) libIDL;
   };
 
@@ -6677,17 +6630,13 @@ let
 
   flashplayer = flashplayer11;
 
-  flashplayer9 = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-9 {
-    inherit (gtkLibs) atk;
-  };
+  flashplayer9 = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-9 { };
 
   flashplayer10 = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-10 {
-    inherit (gtkLibs) atk gdk_pixbuf;
     debug = getConfig ["flashplayer" "debug"] false;
   };
 
   flashplayer11 = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-11 {
-    inherit (gtkLibs) atk gdk_pixbuf;
     debug = getConfig ["flashplayer" "debug"] false;
   };
 
@@ -6717,7 +6666,7 @@ let
   get_iplayer = callPackage ../applications/misc/get_iplayer {};
 
   gimp = callPackage ../applications/graphics/gimp {
-    inherit (gnome) gtk libart_lgpl;
+    inherit (gnome) libart_lgpl;
   };
 
   gimpPlugins = recurseIntoAttrs (import ../applications/graphics/gimp/plugins {
@@ -6732,13 +6681,11 @@ let
   gitSVN = gitAndTools.gitSVN;
 
   giv = callPackage ../applications/graphics/giv {
-    inherit (gtkLibs) gdk_pixbuf gtk;
     pcre = pcre.override { unicodeSupport = true; };
   };
 
   gnucash = callPackage ../applications/office/gnucash {
-    inherit (gnome) gtk glib libgnomeui libgtkhtml gtkhtml
-      libbonoboui libgnomeprint;
+    inherit (gnome) libgnomeui libgtkhtml gtkhtml libbonoboui libgnomeprint;
     gconf = gnome.GConf;
     guile = guile_1_8;
     slibGuile = slibGuile.override { scheme = guile_1_8; };
@@ -6761,7 +6708,6 @@ let
   gnash = callPackage ../applications/video/gnash {
     xulrunner = icecatXulrunner3;
     inherit (gnome) gtkglext;
-    inherit (gst_all) gstreamer gstPluginsBase gstPluginsGood gstFfmpeg;
   };
 
   gnome_mplayer = callPackage ../applications/video/gnome-mplayer {
@@ -6769,7 +6715,7 @@ let
   };
 
   gnunet08 = callPackage ../applications/networking/p2p/gnunet/0.8.nix {
-    inherit (gnome) gtk libglade;
+    inherit (gnome) libglade;
     guile = guile_1_8;
     gtkSupport = getConfig [ "gnunet" "gtkSupport" ] true;
   };
@@ -6779,7 +6725,6 @@ let
   gocr = callPackage ../applications/graphics/gocr { };
 
   gobby5 = callPackage ../applications/editors/gobby {
-    inherit (gtkLibs) gtkmm;
     inherit (gnome) gtksourceview;
   };
 
@@ -6819,7 +6764,6 @@ let
 
   gmtk = callPackage ../applications/networking/browsers/mozilla-plugins/gmtk {
     inherit (gnome) GConf;
-    inherit (gtkLibs) gtk;
   };
 
   googleearth = callPackage_i686 ../applications/misc/googleearth { };
@@ -6829,8 +6773,7 @@ let
   };
 
   gosmore = builderDefsPackage ../applications/misc/gosmore {
-    inherit fetchsvn curl pkgconfig libxml2;
-    inherit (gtkLibs) gtk;
+    inherit fetchsvn curl pkgconfig libxml2 gtk;
   };
 
   gpsbabel = callPackage ../applications/misc/gpsbabel { };
@@ -6858,14 +6801,14 @@ let
   i810switch = callPackage ../os-specific/linux/i810switch { };
 
   icecat3 = lowPrio (callPackage ../applications/networking/browsers/icecat-3 {
-    inherit (gnome) libIDL libgnomeui gnome_vfs gtk pango;
+    inherit (gnome) libIDL libgnomeui gnome_vfs;
     inherit (xlibs) pixman;
     inherit (pythonPackages) ply;
   });
 
   icecatXulrunner3 = lowPrio (callPackage ../applications/networking/browsers/icecat-3 {
     application = "xulrunner";
-    inherit (gnome) libIDL libgnomeui gnome_vfs gtk pango;
+    inherit (gnome) libIDL libgnomeui gnome_vfs;
     inherit (xlibs) pixman;
     inherit (pythonPackages) ply;
   });
@@ -6905,7 +6848,6 @@ let
 
   inkscape = callPackage ../applications/graphics/inkscape {
     inherit (pythonPackages) lxml;
-    inherit (gtkLibs) gtk glib glibmm gtkmm;
   };
 
   ion3 = callPackage ../applications/window-managers/ion-3 {
@@ -6932,7 +6874,9 @@ let
 
   jwm = callPackage ../applications/window-managers/jwm { };
 
-  k3d = callPackage ../applications/graphics/k3d {};
+  k3d = callPackage ../applications/graphics/k3d {
+    inherit (pkgs.gnome) gtkglext;
+  };
 
   keepnote = callPackage ../applications/office/keepnote {
     pygtk = pyGtkGlade;
@@ -6948,9 +6892,7 @@ let
 
   larswm = callPackage ../applications/window-managers/larswm { };
 
-  lash = callPackage ../applications/audio/lash {
-    inherit (gtkLibs) gtk;
-  };
+  lash = callPackage ../applications/audio/lash { };
 
   ladspaH = callPackage ../applications/audio/ladspa-plugins/ladspah.nix { };
 
@@ -6966,8 +6908,13 @@ let
 
   libreoffice = callPackage ../applications/office/openoffice/libreoffice.nix {
     inherit (perlPackages) ArchiveZip CompressZlib;
-    inherit (gnome) GConf ORBit2;
-    force = getConfig [ "libreoffice" "force" ] false;
+    inherit (gnome) GConf ORBit2 gnome_vfs;
+    zip = zip.override { enableNLS = false; };
+    fontsConf = makeFontsConf {
+      fontDirectories = [
+        freefont_ttf xorg.fontmiscmisc xorg.fontbhttf
+      ];
+    };
   };
 
   lingot = callPackage ../applications/audio/lingot {
@@ -6981,7 +6928,7 @@ let
 
   links2 = callPackage ../applications/networking/browsers/links2 { };
 
-  linphone = callPackage ../applications/networking/linphone {
+  linphone = callPackage ../applications/networking/instant-messengers/linphone {
     inherit (gnome) libglade;
   };
 
@@ -7021,7 +6968,7 @@ let
     inherit imagemagick intltool python pkgconfig webkit libxml2
       which gettext makeWrapper file libidn sqlite docutils libnotify
       vala dbus_glib;
-    inherit (gtkLibs) gtk glib;
+    inherit gtk glib;
     inherit (gnome) gtksourceview;
     inherit (webkit.passthru.args) libsoup;
     inherit (xlibs) kbproto xproto libXScrnSaver scrnsaverproto;
@@ -7034,7 +6981,7 @@ let
   mmex = callPackage ../applications/office/mmex { };
 
   monodevelop = callPackage ../applications/editors/monodevelop {
-    inherit (gnome) gnome_vfs libbonobo libglade libgnome GConf glib gtk;
+    inherit (gnome) gnome_vfs libbonobo libglade libgnome GConf;
     mozilla = firefox;
     gtksharp = gtksharp2;
   };
@@ -7048,9 +6995,9 @@ let
   };
 
   monotoneViz = builderDefsPackage (import ../applications/version-management/monotone-viz/mtn-head.nix) {
-    inherit ocaml graphviz pkgconfig autoconf automake libtool;
+    inherit ocaml graphviz pkgconfig autoconf automake libtool glib gtk;
     inherit (ocamlPackages) lablgtk;
-    inherit (gnome) gtk libgnomecanvas glib;
+    inherit (gnome) libgnomecanvas;
   };
 
   mozilla = callPackage ../applications/networking/browsers/mozilla {
@@ -7085,7 +7032,7 @@ let
   mrxvt = callPackage ../applications/misc/mrxvt { };
 
   multisync = callPackage ../applications/misc/multisync {
-    inherit (gnome) gtk glib ORBit2 libbonobo libgnomeui GConf;
+    inherit (gnome) ORBit2 libbonobo libgnomeui GConf;
   };
 
   mumble = callPackage ../applications/networking/mumble {
@@ -7104,6 +7051,10 @@ let
 
   mythtv = callPackage ../applications/video/mythtv { };
 
+  tvtime = callPackage ../applications/video/tvtime {
+    kernel = linux;
+  };
+
   nano = callPackage ../applications/editors/nano { };
 
   navipowm = callPackage ../applications/misc/navipowm {
@@ -7160,9 +7111,7 @@ let
   openscad = callPackage ../applications/graphics/openscad {};
 
   opera = callPackage ../applications/networking/browsers/opera {
-    inherit (pkgs.gtkLibs) gdk_pixbuf atk;
     inherit (pkgs.kde4) kdelibs;
-    inherit (pkgs.gst_all) gstreamer gstPluginsBase;
   };
 
   pan = callPackage ../applications/networking/newsreaders/pan {
@@ -7172,7 +7121,6 @@ let
   panotools = callPackage ../applications/graphics/panotools { };
 
   pavucontrol = callPackage ../applications/audio/pavucontrol {
-    inherit (gtkLibs) gtkmm;
     inherit (gnome) libglademm;
   };
 
@@ -7184,9 +7132,7 @@ let
     openssl = if (getConfig ["pidgin" "openssl"] true) then openssl else null;
     gnutls = if (getConfig ["pidgin" "gnutls"] false) then gnutls else null;
     libgcrypt = if (getConfig ["pidgin" "gnutls"] false) then libgcrypt else null;
-    GStreamer = gst_all.gstreamer;
     inherit (gnome) startupnotification;
-    inherit (gst_all) gstPluginsBase;
   };
 
   pidginlatex = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-latex {
@@ -7196,8 +7142,7 @@ let
   pidginlatexSF = builderDefsPackage
     (import ../applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/pidgin-latex-sf.nix)
     {
-      inherit pkgconfig pidgin texLive imagemagick which;
-      inherit (gtkLibs) glib gtk;
+      inherit pkgconfig pidgin texLive imagemagick which glib gtk;
     };
 
   pidginmsnpecan = callPackage ../applications/networking/instant-messengers/pidgin-plugins/msn-pecan { };
@@ -7220,10 +7165,7 @@ let
 
   pstree = callPackage ../applications/misc/pstree { };
 
-  puredata = callPackage ../applications/audio/puredata {
-    inherit (gtkLibs) glib;
-    inherit (xlibs) libX11;
-  };
+  puredata = callPackage ../applications/audio/puredata { };
 
   pythonmagick = callPackage ../applications/graphics/PythonMagick { };
 
@@ -7237,9 +7179,7 @@ let
 
   qtpfsgui = callPackage ../applications/graphics/qtpfsgui { };
 
-  qtractor = callPackage ../applications/audio/qtractor {
-    inherit (gtkLibs) gtk;
-  };
+  qtractor = callPackage ../applications/audio/qtractor { };
 
   rakarrack = callPackage ../applications/audio/rakarrack {
     inherit (xorg) libXpm libXft;
@@ -7250,16 +7190,13 @@ let
 
   ratpoison = callPackage ../applications/window-managers/ratpoison { };
 
-  rawtherapee = callPackage ../applications/graphics/rawtherapee {
-    inherit (gtkLibs) gtk gtkmm;
-  };
+  rawtherapee = callPackage ../applications/graphics/rawtherapee { };
 
   rcs = callPackage ../applications/version-management/rcs { };
 
   rdesktop = callPackage ../applications/networking/remote/rdesktop { };
 
   RealPlayer = callPackage ../applications/video/RealPlayer {
-    inherit (gtkLibs) glib pango atk gtk;
     libstdcpp5 = gcc33.gcc;
   };
 
@@ -7267,7 +7204,6 @@ let
 
   retroshare = callPackage ../applications/networking/p2p/retroshare {
     qt = qt4;
-    inherit (gnome) gnome_keyring;
   };
 
   rsync = callPackage ../applications/networking/sync/rsync {
@@ -7301,13 +7237,11 @@ let
     wxGTK = wxGTK28.override { unicode = false; };
   };
 
-  seq24 = callPackage ../applications/audio/seq24 {
-    inherit (gtkLibs) gtkmm;
-  };
+  seq24 = callPackage ../applications/audio/seq24 { };
 
   siproxd = callPackage ../applications/networking/siproxd { };
 
-  skype_linux = callPackage_i686 ../applications/networking/skype {
+  skype_linux = callPackage_i686 ../applications/networking/instant-messengers/skype {
     usePulseAudio = getConfig [ "pulseaudio" ] false; # disabled by default (the 100% cpu bug)
   };
 
@@ -7319,7 +7253,7 @@ let
     inherit fetchurl stdenv stringsWithDeps lib fftw;
     inherit pkgconfig gmp gettext;
     inherit (xlibs) libXpm libX11;
-    inherit (gtkLibs) gtk glib;
+    inherit gtk glib;
   };
 
   snd = sndBase.passthru.function {
@@ -7336,7 +7270,7 @@ let
   sox = callPackage ../applications/misc/audio/sox { };
 
   specimen = callPackage ../applications/audio/specimen {
-    inherit (gnome) gtk libgnomecanvas;
+    inherit (gnome) libgnomecanvas;
   };
 
   spotify = callPackage ../applications/audio/spotify { };
@@ -7370,7 +7304,6 @@ let
   }));
 
   surf = callPackage ../applications/misc/surf {
-    inherit (gtkLibs) gtk glib;
     libsoup = gnome.libsoup;
   };
 
@@ -7410,6 +7343,12 @@ let
 
   taskwarrior_unstable = callPackage ../applications/misc/taskwarrior/unstable.nix { };
 
+  telepathy_gabble = callPackage ../applications/networking/instant-messengers/telepathy/gabble {
+    inherit (pkgs.gnome) libsoup;
+  };
+
+  telepathy_mission_control = callPackage ../applications/networking/instant-messengers/telepathy/mission-control { };
+
   tesseract = callPackage ../applications/graphics/tesseract { };
 
   thinkingRock = callPackage ../applications/misc/thinking-rock { };
@@ -7430,15 +7369,13 @@ let
 
   transmission = callPackage ../applications/networking/p2p/transmission { };
 
-  trayer = callPackage ../applications/window-managers/trayer {
-    inherit (gtkLibs) gdk_pixbuf;
-  };
+  trayer = callPackage ../applications/window-managers/trayer { };
 
   tree = callPackage ../tools/system/tree { };
 
   tribler = callPackage ../applications/networking/p2p/tribler { };
 
-  twinkle = callPackage ../applications/networking/twinkle {
+  twinkle = callPackage ../applications/networking/instant-messengers/twinkle {
     boost = boostFull;
     ccrtp = ccrtp_1_8;
     libzrtpcpp = libzrtpcpp_1_6;
@@ -7455,7 +7392,7 @@ let
 
   uzbl = builderDefsPackage (import ../applications/networking/browsers/uzbl) {
     inherit pkgconfig webkit makeWrapper glib_networking;
-    inherit (gtkLibs) gtk glib;
+    inherit gtk glib;
     inherit (xlibs) libX11 kbproto;
     inherit (gnome) libsoup;
   };
@@ -7482,7 +7419,7 @@ let
       getConfig;
     inherit (pkgs.xlibs) libX11 libXext libSM libXpm
         libXt libXaw libXau libXmu libICE;
-    inherit (pkgs.gtkLibs) glib gtk;
+    inherit (pkgs) glib gtk;
     features = "huge"; # one of  tiny, small, normal, big or huge
     # optional features by passing
     # python
@@ -7603,19 +7540,12 @@ let
 
   xineUI = callPackage ../applications/video/xine-ui { };
 
-  xneur = callPackage ../applications/misc/xneur {
-    GStreamer=gst_all.gstreamer;
-    inherit (gtkLibs) glib gtk pango atk gdk_pixbuf;
-  };
+  xneur = callPackage ../applications/misc/xneur { };
 
-  xneur_0_8 = callPackage ../applications/misc/xneur/0.8.nix {
-    GStreamer = gst_all.gstreamer;
-  };
+  xneur_0_8 = callPackage ../applications/misc/xneur/0.8.nix { };
 
   xournal = callPackage ../applications/graphics/xournal {
-    inherit (gtkLibs) gtk atk pango glib;
-    inherit (gnome) libgnomeprint libgnomeprintui
-      libgnomecanvas;
+    inherit (gnome) libgnomeprint libgnomeprintui libgnomecanvas;
   };
 
   xpdf = callPackage ../applications/misc/xpdf {
@@ -7634,9 +7564,7 @@ let
     inherit (gnome) libglade;
   };
 
-  xsynth_dssi = callPackage ../applications/audio/xsynth-dssi {
-    inherit (gtkLibs) gtk;
-  };
+  xsynth_dssi = callPackage ../applications/audio/xsynth-dssi { };
 
   xterm = callPackage ../applications/misc/xterm { };
 
@@ -7665,14 +7593,6 @@ let
     fltk = fltk13;
   };
 
-  zapping = callPackage ../applications/video/zapping {
-    inherit (gnome) scrollkeeper libgnomeui libglade esound;
-    teletextSupport = true;
-    jpegSupport = true;
-    pngSupport = true;
-    recordingSupport = true;
-  };
-
   zathura = callPackage ../applications/misc/zathura { };
 
   zynaddsubfx = callPackage ../applications/audio/zynaddsubfx { };
@@ -7723,9 +7643,7 @@ let
 
   crrcsim = callPackage ../games/crrcsim {};
 
-  dwarf_fortress = callPackage_i686 ../games/dwarf-fortress {
-    gnomegtk = pkgsi686Linux.gnome.gtk;
-  };
+  dwarf_fortress = callPackage_i686 ../games/dwarf-fortress { };
 
   eduke32 = callPackage ../games/eduke32 { };
 
@@ -7769,7 +7687,6 @@ let
 
   gparted = callPackage ../tools/misc/gparted {
     parted = parted_2_3;
-    inherit (gtkLibs) gtk glib gtkmm;
     inherit (gnome) gnomedocutils;
   };
 
@@ -7836,8 +7753,7 @@ let
   };
 
   sgtpuzzles = builderDefsPackage (import ../games/sgt-puzzles) {
-    inherit (gtkLibs) gtk;
-    inherit pkgconfig fetchsvn perl;
+    inherit pkgconfig fetchsvn perl gtk;
     inherit (xlibs) libX11;
   };
 
@@ -7986,7 +7902,7 @@ let
       inherit (kde3) kdelibs;
     };
 
-    kphone = callPackage ../applications/networking/kphone {
+    kphone = callPackage ../applications/networking/instant-messengers/kphone {
       stdenv = overrideGCC stdenv gcc42; # I'm to lazy to clean up header files
     };
 
@@ -8046,15 +7962,11 @@ let
 
       kile = callPackage ../applications/editors/kile { };
 
-      kmplayer = callPackage ../applications/video/kmplayer {
-        inherit (pkgs.gtkLibs) pango;
-      };
+      kmplayer = callPackage ../applications/video/kmplayer { };
 
       kmymoney = callPackage ../applications/office/kmymoney { };
 
-      kipi_plugins = callPackage ../applications/graphics/kipi-plugins {
-        inherit (pkgs.gtkLibs) gdk_pixbuf;
-      };
+      kipi_plugins = callPackage ../applications/graphics/kipi-plugins { };
 
       koffice = callPackage ../applications/office/koffice {
         boost = boost147;
@@ -8086,9 +7998,7 @@ let
 
       polkit_kde_agent = callPackage ../tools/security/polkit-kde-agent { };
 
-      psi = callPackage ../applications/networking/instant-messengers/psi {
-        inherit (gtkLibs) glib;
-      };
+      psi = callPackage ../applications/networking/instant-messengers/psi { };
 
       quassel = callPackage ../applications/networking/irc/quassel { };
 
@@ -8110,6 +8020,8 @@ let
 
       skrooge = callPackage ../applications/office/skrooge { };
 
+      telepathy = callPackage ../applications/networking/instant-messengers/telepathy/kde {};
+
       yakuake = callPackage ../applications/misc/yakuake { };
 
       zanshin = callPackage ../applications/office/zanshin { };
@@ -8122,9 +8034,7 @@ let
       xf86vidmodeproto;
   };
 
-  oxygen_gtk = callPackage ../misc/themes/gtk2/oxygen-gtk {
-    inherit (gtkLibs) glib gtk;
-  };
+  oxygen_gtk = callPackage ../misc/themes/gtk2/oxygen-gtk { };
 
   xfce = xfce48;
 
@@ -8139,9 +8049,7 @@ let
 
   ### SCIENCE
 
-  xplanet = callPackage ../applications/science/astronomy/xplanet {
-    inherit (gtkLibs) pango;
-  };
+  xplanet = callPackage ../applications/science/astronomy/xplanet { };
 
   gravit = callPackage ../applications/science/astronomy/gravit { };
 
@@ -8150,8 +8058,8 @@ let
   ### SCIENCE/GEOMETRY
 
   drgeo = builderDefsPackage (import ../applications/science/geometry/drgeo) {
-    inherit (gnome) libglade gtk;
-    inherit libxml2 perl intltool libtool pkgconfig;
+    inherit (gnome) libglade;
+    inherit libxml2 perl intltool libtool pkgconfig gtk;
     guile = guile_1_8;
   };
 
@@ -8358,7 +8266,7 @@ let
 
   dpkg = callPackage ../tools/package-management/dpkg { };
 
-  ekiga = newScope (pkgs.gtkLibs // pkgs.gnome) ../applications/networking/ekiga { };
+  ekiga = newScope pkgs.gnome ../applications/networking/instant-messengers/ekiga { };
 
   electricsheep = callPackage ../misc/screensavers/electricsheep { };
 
@@ -8377,9 +8285,9 @@ let
   gajim = builderDefsPackage (import ../applications/networking/instant-messengers/gajim) {
     inherit perl intltool pyGtkGlade gettext pkgconfig makeWrapper pygobject
       pyopenssl gtkspell libsexy pycrypto aspell pythonDBus pythonSexy
-      docutils;
+      docutils gtk;
     dbus = dbus.libs;
-    inherit (gnome) gtk libglade;
+    inherit (gnome) libglade;
     inherit (xlibs) libXScrnSaver libXt xproto libXext xextproto libX11
       scrnsaverproto;
     python = pythonFull;
@@ -8390,7 +8298,7 @@ let
   ghostscript = callPackage ../misc/ghostscript {
     x11Support = false;
     cupsSupport = getConfig [ "ghostscript" "cups" ] true;
-    gnuFork = getConfig [ "ghostscript" "gnu" ] true;
+    gnuFork = getConfig [ "ghostscript" "gnu" ] false;
   };
 
   ghostscriptX = appendToName "with-X" (ghostscript.override {
@@ -8411,7 +8319,6 @@ let
   lazylist = callPackage ../tools/typesetting/tex/lazylist { };
 
   lilypond = callPackage ../misc/lilypond {
-    inherit (gtkLibs) pango;
     guile = guile_1_8;
   };
 
@@ -8421,7 +8328,9 @@ let
   maven2 = callPackage ../misc/maven { };
   maven3 = callPackage ../misc/maven/3.0.nix { };
 
-  mess = callPackage ../misc/emulators/mess { };
+  mess = callPackage ../misc/emulators/mess {
+    inherit (pkgs.gnome) GConf;
+  };
 
   mupen64plus = callPackage ../misc/emulators/mupen64plus { };
 
@@ -8489,6 +8398,8 @@ let
   pgf1 = callPackage ../tools/typesetting/tex/pgf/1.x.nix { };
 
   pgf2 = callPackage ../tools/typesetting/tex/pgf/2.x.nix { };
+  
+  pgfplots = callPackage ../tools/typesetting/tex/pgfplots { };
 
   pjsip = callPackage ../applications/networking/pjsip { };
 
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 029c8b1dbd3f..d309ec583e6c 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -166,10 +166,12 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   haskellPlatformDefaults_future =
     self : self.haskellPlatformArgs_future self // {
       mtl1 = self.mtl_1_1_1_1; # 7.2 ok, 7.3 ok
+      binary = null; # now a core package
     };
 
   haskellPlatformDefaults_HEAD =
     self : self.haskellPlatformDefaults_future self // {
+      binary = null; # now a core package
     };
 
   haskellPlatformArgs_2011_4_0_0 = self : {
@@ -466,7 +468,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   bimap = callPackage ../development/libraries/haskell/bimap {};
 
-  binary = callPackage ../development/libraries/haskell/binary {};
+  binary_hackage = callPackage ../development/libraries/haskell/binary {};
+  binary = self.binary_hackage; # core package since ghc-7.2.1
 
   binaryShared = callPackage ../development/libraries/haskell/binary-shared {};
 
@@ -710,11 +713,13 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   ghcSybUtils = callPackage ../development/libraries/haskell/ghc-syb-utils {};
 
+  gio = callPackage ../development/libraries/haskell/gio {};
+
   gitit = callPackage ../development/libraries/haskell/gitit {};
 
   glade = callPackage ../development/libraries/haskell/glade {
     inherit (pkgs.gnome) libglade;
-    gtkC = pkgs.gnome.gtk;
+    gtkC = pkgs.gtk;
     libc = pkgs.stdenv.gcc.libc;
   };
 
@@ -746,7 +751,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   GLUT = self.GLUT_2_3_0_0;
 
   gtk = callPackage ../development/libraries/haskell/gtk {
-    inherit (pkgs.gtkLibs) gtk;
+    inherit (pkgs) gtk;
     libc = pkgs.stdenv.gcc.libc;
   };
 
@@ -762,6 +767,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   graphviz = callPackage ../development/libraries/haskell/graphviz {
     fgl = self.fgl_5_4_2_4;
+    polyparse = self.polyparse_1_7;
   };
 
   hakyll = callPackage ../development/libraries/haskell/hakyll {};
@@ -793,7 +799,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   haskellSrc_1_0_1_5 = callPackage ../development/libraries/haskell/haskell-src/1.0.1.5.nix {};
   haskellSrc = self.haskellSrc_1_0_1_5;
 
-  haskellSrcExts = callPackage ../development/libraries/haskell/haskell-src-exts/default.nix {};
+  haskellSrcExts = callPackage ../development/libraries/haskell/haskell-src-exts {};
 
   haskellSrcMeta = callPackage ../development/libraries/haskell/haskell-src-meta {};
 
@@ -936,9 +942,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   jsonTypes = callPackage ../development/libraries/haskell/jsonTypes {};
 
-  languageJavascript = callPackage ../development/libraries/haskell/language-javascript {
-    alex = self.alex_3_0_1;
-  };
+  languageJavascript = callPackage ../development/libraries/haskell/language-javascript {};
 
   languageHaskellExtract = callPackage ../development/libraries/haskell/language-haskell-extract {};
 
@@ -1064,7 +1068,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   pandocTypes = callPackage ../development/libraries/haskell/pandoc-types {};
 
   pango = callPackage ../development/libraries/haskell/pango {
-    inherit (pkgs.gtkLibs) pango;
+    inherit (pkgs) pango;
     libc = pkgs.stdenv.gcc.libc;
   };
 
@@ -1097,7 +1101,9 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   persistentTemplate = callPackage ../development/libraries/haskell/persistent-template {};
 
-  polyparse = callPackage ../development/libraries/haskell/polyparse/default.nix {};
+  polyparse_1_7 = callPackage ../development/libraries/haskell/polyparse/1.7.nix {};
+  polyparse_1_8 = callPackage ../development/libraries/haskell/polyparse/1.8.nix {};
+  polyparse = self.polyparse_1_8;
 
   poolConduit = callPackage ../development/libraries/haskell/pool-conduit {};
 
@@ -1382,8 +1388,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   unixCompat = callPackage ../development/libraries/haskell/unix-compat {};
 
   unorderedContainers_0_1_4_6 = callPackage ../development/libraries/haskell/unordered-containers/0.1.4.6.nix {};
-  unorderedContainers_0_2_0_0 = callPackage ../development/libraries/haskell/unordered-containers/0.2.0.0.nix {};
-  unorderedContainers = self.unorderedContainers_0_2_0_0;
+  unorderedContainers_0_2_1_0 = callPackage ../development/libraries/haskell/unordered-containers/0.2.1.0.nix {};
+  unorderedContainers = self.unorderedContainers_0_2_1_0;
 
   url = callPackage ../development/libraries/haskell/url {};
 
@@ -1603,7 +1609,9 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
     tar = self.tar_0_3_2_0;
   };
 
-  leksah = callPackage ../applications/editors/leksah {};
+  leksah = callPackage ../applications/editors/leksah {
+    QuickCheck = self.QuickCheck2;
+  };
 
   mathblog = callPackage ../applications/misc/mathblog {};
 
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 359ade8a0e1e..f8d5022d9330 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -956,11 +956,11 @@ rec {
     propagatedBuildInputs = [ FileFindRule ];
   };
 
-  DataDump = buildPerlPackage {
-    name = "Data-Dump-1.11";
+  DataDump = buildPerlPackage rec {
+    name = "Data-Dump-1.21";
     src = fetchurl {
-      url = mirror://cpan/authors/id/G/GA/GAAS/Data-Dump-1.11.tar.gz;
-      sha256 = "0h5y40b6drgsf87nhwhqx1dprq70f98ibm03l9al4ndq7mrx97dd";
+      url = "mirror://cpan/modules/by-module/Data/${name}.tar.gz";
+      sha256 = "1fcy6q8p406ag8g50l7znns3kxazfb458l6kw8pbsp4axnkz9ydx";
     };
   };
 
@@ -1082,10 +1082,10 @@ rec {
   };
 
   DateTimeLocale = buildPerlPackage rec {
-    name = "DateTime-Locale-0.42";
+    name = "DateTime-Locale-0.45";
     src = fetchurl {
       url = "mirror://cpan/authors/id/D/DR/DROLSKY/${name}.tar.gz";
-      sha256 = "1cvp9a4j6vy3xpbv6ipzcz1paw7gzal7lkrbm5ipiilji47d5gaw";
+      sha256 = "175grkrxiv012n6ch3z1sip4zprcili6m5zqi3njdk5c1gdvi8ca";
     };
     propagatedBuildInputs = [ListMoreUtils ParamsValidate];
   };
@@ -1259,12 +1259,12 @@ rec {
   };
 
   EmailAbstract = buildPerlPackage rec {
-    name = "Email-Abstract-3.001";
+    name = "Email-Abstract-3.004";
     src = fetchurl {
       url = "mirror://cpan/authors/id/R/RJ/RJBS/${name}.tar.gz";
-      sha256 = "1ziy44ibnwg4wjlm5lqdrys8x8xndxkzycnjwp2s6harjy2fqqxw";
+      sha256 = "0fiaagxc2hy5g3qiipv4cspkwbaggdmsxbll1f4jx2qnq5hm668d";
     };
-    propagatedBuildInputs = [EmailSimple];
+    propagatedBuildInputs = [ EmailSimple MROCompat ];
   };
 
   EmailAddress = buildPerlPackage rec {
@@ -3226,6 +3226,15 @@ rec {
     propagatedBuildInputs = [pkgs.subversion];
   };
 
+  Switch = buildPerlPackage rec {
+    name = "Switch";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/R/RG/RGARCIA/Switch-2.16.tar.gz";
+      sha256 = "1n7rgp1q3zwglv1pka3bnhq5g41334lwc53g31w6g44my8kqz31h";
+    };
+    doCheck = false;                             # FIXME: 2/293 test failures
+  };
+
   SysHostnameLong = buildPerlPackage rec {
     name = "Sys-Hostname-Long-1.4";
     src = fetchurl {
@@ -3330,10 +3339,10 @@ rec {
   };
 
   TestDeep = buildPerlPackage rec {
-    name = "Test-Deep-0.106";
+    name = "Test-Deep-0.109";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/F/FD/FDALY/${name}.tar.gz";
-      sha256 = "1ix4jc5k696sjhv01mvypmmf7a6kpm5wmgq01j644zjkaxh1minz";
+      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
+      sha256 = "0nqqxj00ln3b4pma47bj2rcpblpvipfrchqbcxahlq9lh1q4p5s6";
     };
     propagatedBuildInputs = [TestTester TestNoWarnings];
   };
@@ -3374,10 +3383,10 @@ rec {
   };
 
   TestLongString = buildPerlPackage rec {
-    name = "Test-LongString-0.11";
+    name = "Test-LongString-0.15";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/R/RG/RGARCIA/${name}.tar.gz";
-      sha256 = "0ln3117nfxzq7yxmfk77nnr7116inbjq4bf5v2p0hqlj4damx03d";
+      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
+      sha256 = "0r2i3a35l116ccwx88jwiii2fq4b8wm16sl1lkxm2kh44s4z7s5s";
     };
   };
 
@@ -3511,13 +3520,13 @@ rec {
   };
 
   TestWarn = buildPerlPackage rec {
-    name = "Test-Warn-0.21";
+    name = "Test-Warn-0.23";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/C/CH/CHORNY/${name}.zip";
-      sha256 = "0kc09lgl8irx01m276zndl7rsi0dhpkzdc5i1zm077pcj2z9ccmg";
+      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
+      sha256 = "1733s39s4pm0hsshvvjsv1vbri09l4g0g7yyg64y65yqcyanfdf0";
     };
     propagatedBuildInputs = [TestSimple TestException ArrayCompare TreeDAGNode];
-    buildInputs = [TestPod pkgs.unzip];
+    buildInputs = [TestPod];
   };
 
   TestWWWMechanize = buildPerlPackage rec {
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 0e8b8b9f8ac2..8d3a3c410d6a 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -1006,7 +1006,7 @@ let pythonPackages = python.modules // rec {
       sha256 = "1kh4spwgqxm534qlzzf2ijchckvs0pwjxl1irhicjmlg7mybnfvx";
     };
 
-    buildInputs = [ python pkgs.pkgconfig pkgs.libnotify pkgs.pygobject pkgs.pygtk pkgs.gtkLibs.glib pkgs.gtkLibs.gtk pkgs.dbus_glib ];
+    buildInputs = [ python pkgs.pkgconfig pkgs.libnotify pkgs.pygobject pkgs.pygtk pkgs.glib pkgs.gtk pkgs.dbus_glib ];
 
     postInstall = "cd $out/lib/python*/site-packages && ln -s gtk-*/pynotify .";
 
@@ -1625,6 +1625,17 @@ let pythonPackages = python.modules // rec {
     };
   });
 
+  RBTools =  buildPythonPackage rec {
+    name = "RBTools-0.4.1";
+
+    src = fetchurl {
+      url = "http://downloads.reviewboard.org/releases/RBTools/0.4/${name}.tar.gz";
+      sha256 = "1v0r7rfzrasj56s53mib51wl056g7ykh2y1c6dwv12r6hzqsycgv";
+    };
+
+    propagatedBuildInputs = [ setuptools ];
+  };
+
   reportlab =
    let freetype = pkgs.lib.overrideDerivation pkgs.freetype (args: { configureFlags = "--enable-static --enable-shared"; });
    in buildPythonPackage rec {
diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix
index f56f6cf357d7..ba9f4def75f2 100644
--- a/pkgs/top-level/release-small.nix
+++ b/pkgs/top-level/release-small.nix
@@ -71,11 +71,11 @@ with (import ./release-lib.nix);
   gnused = all;
   gnutar = all;
   gnutls = linux;
+  gogoclient = linux;
   grub = linux;
   grub2 = linux;
   gsl = linux;
   guile = linux;  # tests fail on Cygwin
-  gw6c = linux;
   gzip = all;
   hal = linux;
   hal_info = linux;
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index da127e617ad9..57cc538c70c8 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -137,12 +137,10 @@ with (import ./release-lib.nix);
   gsl = linux;
   guile = linux;  # tests fail on Cygwin
   gv = linux;
-  gw6c = linux;
   gzip = all;
   hal = linux;
   hal_info = linux;
   hddtemp = linux;
-  hdparm = linux;
   hello = all;
   host = linux;
   htmlTidy = all;