summary refs log tree commit diff
path: root/pkgs/desktops
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2007-02-28 16:18:58 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2007-02-28 16:18:58 +0000
commit398768bfb566c31b50576561878561467d3a6013 (patch)
treeb419deb9f107f732983c77fdd1e65df7ce705c36 /pkgs/desktops
parent917b75e9158dcab501fc7f5fbf38d724b9fe2f88 (diff)
downloadnixlib-398768bfb566c31b50576561878561467d3a6013.tar
nixlib-398768bfb566c31b50576561878561467d3a6013.tar.gz
nixlib-398768bfb566c31b50576561878561467d3a6013.tar.bz2
nixlib-398768bfb566c31b50576561878561467d3a6013.tar.lz
nixlib-398768bfb566c31b50576561878561467d3a6013.tar.xz
nixlib-398768bfb566c31b50576561878561467d3a6013.tar.zst
nixlib-398768bfb566c31b50576561878561467d3a6013.zip
* Refactoring: move KDE and Gnome out of development/libraries into
  desktops.

svn path=/nixpkgs/trunk/; revision=8105
Diffstat (limited to 'pkgs/desktops')
-rw-r--r--pkgs/desktops/gnome/GConf/default.nix13
-rw-r--r--pkgs/desktops/gnome/ORBit2/default.nix10
-rw-r--r--pkgs/desktops/gnome/default.nix189
-rw-r--r--pkgs/desktops/gnome/esound/default.nix8
-rw-r--r--pkgs/desktops/gnome/gail/default.nix7
-rw-r--r--pkgs/desktops/gnome/gnome-desktop/default.nix8
-rw-r--r--pkgs/desktops/gnome/gnome-icon-theme/default.nix13
-rw-r--r--pkgs/desktops/gnome/gnome-icon-theme/gnome-icon-theme-2.14.2.patch12
-rw-r--r--pkgs/desktops/gnome/gnome-keyring/default.nix9
-rw-r--r--pkgs/desktops/gnome/gnome-mime-data/default.nix8
-rw-r--r--pkgs/desktops/gnome/gnome-panel/default.nix13
-rw-r--r--pkgs/desktops/gnome/gnome-vfs/default.nix16
-rw-r--r--pkgs/desktops/gnome/gnome-vfs/no-kerberos.patch54
-rw-r--r--pkgs/desktops/gnome/gtkhtml/default.nix18
-rw-r--r--pkgs/desktops/gnome/gtksourceview/default.nix13
-rw-r--r--pkgs/desktops/gnome/imlib/default.nix21
-rw-r--r--pkgs/desktops/gnome/intltool/default.nix6
-rw-r--r--pkgs/desktops/gnome/libIDL/default.nix8
-rw-r--r--pkgs/desktops/gnome/libart_lgpl/default.nix5
-rw-r--r--pkgs/desktops/gnome/libbonobo/default.nix11
-rw-r--r--pkgs/desktops/gnome/libbonoboui/default.nix14
-rw-r--r--pkgs/desktops/gnome/libglade/default.nix9
-rw-r--r--pkgs/desktops/gnome/libgnome/default.nix14
-rw-r--r--pkgs/desktops/gnome/libgnomecanvas/default.nix10
-rw-r--r--pkgs/desktops/gnome/libgnomeprint/default.nix12
-rw-r--r--pkgs/desktops/gnome/libgnomeprintui/default.nix10
-rw-r--r--pkgs/desktops/gnome/libgnomeui/default.nix11
-rw-r--r--pkgs/desktops/gnome/libgtkhtml/default.nix16
-rw-r--r--pkgs/desktops/gnome/libsoup/default.nix6
-rw-r--r--pkgs/desktops/gnome/libwnck/default.nix6
-rwxr-xr-xpkgs/desktops/gnome/make-listing.pl48
-rw-r--r--pkgs/desktops/gnome/scrollkeeper/default.nix10
-rw-r--r--pkgs/desktops/gnome/scrollkeeper/xmlcatalog.patch37
-rw-r--r--pkgs/desktops/gnome/src-gnome-desktop-2.14.3.nix515
-rw-r--r--pkgs/desktops/gnome/src-gnome-platform-2.14.3.nix172
-rw-r--r--pkgs/desktops/gnome/startup-notification/default.nix6
-rw-r--r--pkgs/desktops/kde/arts/default.nix22
-rw-r--r--pkgs/desktops/kde/kdelibs/default.nix27
38 files changed, 1387 insertions, 0 deletions
diff --git a/pkgs/desktops/gnome/GConf/default.nix b/pkgs/desktops/gnome/GConf/default.nix
new file mode 100644
index 000000000000..74b646f6cc34
--- /dev/null
+++ b/pkgs/desktops/gnome/GConf/default.nix
@@ -0,0 +1,13 @@
+{input, stdenv, fetchurl, pkgconfig, perl, glib, gtk, libxml2, ORBit2, popt}:
+
+assert pkgconfig != null && perl != null
+  && glib != null && gtk != null
+  && libxml2 != null && ORBit2 != null && popt != null;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+
+  # Perl is not `supposed' to be required, but it is.
+  buildInputs = [pkgconfig perl glib gtk libxml2 popt];
+  propagatedBuildInputs = [ORBit2];
+}
diff --git a/pkgs/desktops/gnome/ORBit2/default.nix b/pkgs/desktops/gnome/ORBit2/default.nix
new file mode 100644
index 000000000000..69f62fb79a68
--- /dev/null
+++ b/pkgs/desktops/gnome/ORBit2/default.nix
@@ -0,0 +1,10 @@
+{input, stdenv, fetchurl, pkgconfig, glib, libIDL, popt}:
+
+assert pkgconfig != null && glib != null && libIDL != null
+  && popt != null;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig libIDL popt];
+  propagatedBuildInputs = [glib];
+}
diff --git a/pkgs/desktops/gnome/default.nix b/pkgs/desktops/gnome/default.nix
new file mode 100644
index 000000000000..6484f7adcfa3
--- /dev/null
+++ b/pkgs/desktops/gnome/default.nix
@@ -0,0 +1,189 @@
+# todo audiofile is also part of the gnome platform. Move it to this collection?
+
+{ stdenv, fetchurl, pkgconfig, audiofile
+, flex, bison, popt, perl, zlib, libxml2, libxslt
+, perlXMLParser, docbook_xml_dtd_42, gettext, x11, libtiff, libjpeg
+, libpng, gtkLibs, libXmu, bzip2
+}:
+
+rec {
+
+  # Platform
+
+  platform = (import ./src-gnome-platform-2.14.3.nix) {
+    inherit fetchurl;
+  };
+
+  glib = gtkLibs.glib;
+
+  atk = gtkLibs.atk;
+
+  pango = gtkLibs.pango;
+
+  gtk = gtkLibs.gtk;
+
+  esound = (import ./esound) {
+    inherit fetchurl stdenv audiofile;
+    input = platform.esound;
+  };
+
+  libIDL = (import ./libIDL) {
+    inherit fetchurl stdenv pkgconfig glib;
+    input = platform.libIDL;
+    lex = flex;
+    yacc = bison;
+  };
+
+  ORBit2 = (import ./ORBit2) {
+    inherit fetchurl stdenv pkgconfig glib libIDL popt;
+    input = platform.ORBit2;
+  };
+
+  GConf = (import ./GConf) {
+    inherit fetchurl stdenv pkgconfig perl glib gtk libxml2 ORBit2 popt;
+    input = platform.GConf;
+  };
+
+  gnomemimedata = (import ./gnome-mime-data) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser;
+    input = platform.gnomemimedata;
+  };
+
+  gnomevfs = (import ./gnome-vfs) {
+    inherit fetchurl stdenv pkgconfig perl glib libxml2 GConf
+            libbonobo gnomemimedata popt perlXMLParser gettext bzip2;
+    input = platform.gnomevfs;
+  };
+
+  gail = (import ./gail) {
+    inherit fetchurl stdenv pkgconfig;
+    inherit gtk atk libgnomecanvas;
+    input = platform.gail;
+  };
+
+  libgnome = (import ./libgnome) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser glib gnomevfs
+            libbonobo GConf popt zlib esound;
+    input = platform.libgnome;
+  };
+
+  libart_lgpl = (import ./libart_lgpl) {
+    inherit fetchurl stdenv;
+    input = platform.libart_lgpl;
+  };
+
+  libglade = (import ./libglade) {
+    inherit fetchurl stdenv pkgconfig gtk libxml2;
+    input = platform.libglade;
+  };
+
+  libgnomecanvas = (import ./libgnomecanvas) {
+    inherit fetchurl stdenv pkgconfig gtk libglade;
+    libart = libart_lgpl;
+    input = platform.libgnomecanvas;
+  };
+
+  libbonobo = (import ./libbonobo) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser ORBit2 libxml2 popt flex;
+    yacc = bison;
+    input = platform.libbonobo;
+  };
+
+  libbonoboui = (import ./libbonoboui) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser libxml2 libglade
+            libgnome libgnomecanvas gettext;
+    input = platform.libbonoboui;
+  };
+
+  libgnomeui = (import ./libgnomeui) {
+    inherit fetchurl stdenv pkgconfig libgnome libgnomecanvas
+            libbonoboui libglade libjpeg esound gnomekeyring;
+    input = platform.libgnomeui;
+  };
+
+  intltool = (import ./intltool) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser;
+    input = platform.intltool;
+  };
+
+
+  # Desktop
+
+  desktop = (import ./src-gnome-desktop-2.14.3.nix) {
+    inherit fetchurl;
+  };
+
+  libgnomeprint = (import ./libgnomeprint) {
+    inherit fetchurl stdenv libxml2 perl perlXMLParser pkgconfig popt
+         bison flex;
+    inherit glib pango;
+    libart = libart_lgpl;
+    input = desktop.libgnomeprint;
+  };
+
+  libgnomeprintui = (import ./libgnomeprintui) {
+    inherit fetchurl stdenv perl perlXMLParser pkgconfig;
+    inherit gtk libgnomeprint libgnomecanvas gnomeicontheme;
+    input = desktop.libgnomeprintui;
+  };
+
+  gtkhtml = (import ./gtkhtml) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser libjpeg gettext;
+    inherit gtk atk gail libgnomeprint libgnomeprintui libgnomeui libglade gnomeicontheme;
+    input = desktop.gtkhtml;
+  };
+
+  libgtkhtml = gtkhtml;
+
+  gnomeicontheme = (import ./gnome-icon-theme) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser;
+    input = desktop.gnomeicontheme;
+  };
+
+  gnomekeyring = (import ./gnome-keyring) {
+    inherit fetchurl stdenv pkgconfig glib gtk;
+    input = desktop.gnomekeyring;
+  };
+
+  gtksourceview = (import ./gtksourceview) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser gtk libxml2
+            libgnomeprint gnomevfs libbonobo /* !!! <- should be propagated in gnomevfs */
+            GConf /* idem */ libgnomeprintui libgnomecanvas /* !!! through printui */;
+    input = desktop.gtksourceview;
+  };
+
+  scrollkeeper = (import ./scrollkeeper) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser
+            libxml2 libxslt docbook_xml_dtd_42;
+    input = desktop.scrollkeeper;
+  };
+
+  gnomedesktop = (import ./gnome-desktop) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser glib gtk
+            libgnomeui scrollkeeper libjpeg;
+    input = desktop.gnomedesktop;
+  };
+
+  libwnck = (import ./libwnck) {
+    inherit fetchurl stdenv pkgconfig gtk perl perlXMLParser gettext;
+    input = desktop.libwnck;
+  };
+
+  gnomepanel = (import ./gnome-panel) {
+    inherit fetchurl stdenv pkgconfig perl perlXMLParser glib gtk ORBit2
+            libgnome libgnomeui gnomedesktop libglade libwnck
+            libjpeg libpng scrollkeeper libXmu;
+    input = desktop.gnomepanel;
+  };
+
+  libsoup = (import ./libsoup) {
+    inherit stdenv fetchurl pkgconfig libxml2 glib;
+    input = desktop.libsoup;
+  };
+  
+  startupnotification = (import ./startup-notification) {
+    inherit stdenv fetchurl pkgconfig x11;
+    input = desktop.startupnotification;
+  };
+  
+}
diff --git a/pkgs/desktops/gnome/esound/default.nix b/pkgs/desktops/gnome/esound/default.nix
new file mode 100644
index 000000000000..eb3727bc1c2a
--- /dev/null
+++ b/pkgs/desktops/gnome/esound/default.nix
@@ -0,0 +1,8 @@
+{input, stdenv, fetchurl, audiofile}:
+
+assert audiofile != null;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  propagatedBuildInputs = [audiofile];
+}
diff --git a/pkgs/desktops/gnome/gail/default.nix b/pkgs/desktops/gnome/gail/default.nix
new file mode 100644
index 000000000000..2957aa90de58
--- /dev/null
+++ b/pkgs/desktops/gnome/gail/default.nix
@@ -0,0 +1,7 @@
+{input, stdenv, fetchurl, pkgconfig, atk, gtk, libgnomecanvas}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig atk gtk libgnomecanvas];
+  propagatedBuildInputs = [libgnomecanvas];
+}
diff --git a/pkgs/desktops/gnome/gnome-desktop/default.nix b/pkgs/desktops/gnome/gnome-desktop/default.nix
new file mode 100644
index 000000000000..ecd575cfd3d5
--- /dev/null
+++ b/pkgs/desktops/gnome/gnome-desktop/default.nix
@@ -0,0 +1,8 @@
+{ input, stdenv, fetchurl, pkgconfig, perl, perlXMLParser, glib, gtk
+, libgnomeui, scrollkeeper, libjpeg
+}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig perl perlXMLParser gtk glib libgnomeui scrollkeeper libjpeg];
+}
diff --git a/pkgs/desktops/gnome/gnome-icon-theme/default.nix b/pkgs/desktops/gnome/gnome-icon-theme/default.nix
new file mode 100644
index 000000000000..e5c7d408c65e
--- /dev/null
+++ b/pkgs/desktops/gnome/gnome-icon-theme/default.nix
@@ -0,0 +1,13 @@
+{input, stdenv, fetchurl, pkgconfig, perl, perlXMLParser}:
+
+assert pkgconfig != null && perl != null;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig perl perlXMLParser];
+
+  # TODO: maybe this package as dependency on gnome-themes?
+  configureFlags = "--disable-hicolor-check";
+
+  patches = [./gnome-icon-theme-2.14.2.patch];
+}
diff --git a/pkgs/desktops/gnome/gnome-icon-theme/gnome-icon-theme-2.14.2.patch b/pkgs/desktops/gnome/gnome-icon-theme/gnome-icon-theme-2.14.2.patch
new file mode 100644
index 000000000000..81b12cd1449f
--- /dev/null
+++ b/pkgs/desktops/gnome/gnome-icon-theme/gnome-icon-theme-2.14.2.patch
@@ -0,0 +1,12 @@
+diff -ruN gnome-icon-theme-2.14.2/Makefile.in gnome-icon-theme-2.14.2.new/Makefile.in
+--- gnome-icon-theme-2.14.2/Makefile.in	2006-03-14 21:20:19.000000000 +0100
++++ gnome-icon-theme-2.14.2.new/Makefile.in	2006-07-06 14:22:30.000000000 +0200
+@@ -198,7 +198,7 @@
+ sysconfdir = @sysconfdir@
+ target_alias = @target_alias@
+ SUBDIRS = 12x12 16x16 24x24 32x32 36x36 48x48 72x72 96x96 192x192 scalable po
+-pkgconfigdir = $(datadir)/pkgconfig
++pkgconfigdir = $(libdir)/pkgconfig
+ pkgconfig_DATA = gnome-icon-theme.pc
+ THEME_IN_FILES = index.theme.in
+ icondir = $(datadir)/icons/gnome
diff --git a/pkgs/desktops/gnome/gnome-keyring/default.nix b/pkgs/desktops/gnome/gnome-keyring/default.nix
new file mode 100644
index 000000000000..d781cbbb523e
--- /dev/null
+++ b/pkgs/desktops/gnome/gnome-keyring/default.nix
@@ -0,0 +1,9 @@
+# gnome-keyring
+
+{input, stdenv, fetchurl, pkgconfig, glib, gtk}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig gtk glib];
+  CFLAGS = "-DENABLE_NLS=0";
+}
diff --git a/pkgs/desktops/gnome/gnome-mime-data/default.nix b/pkgs/desktops/gnome/gnome-mime-data/default.nix
new file mode 100644
index 000000000000..90012a62075c
--- /dev/null
+++ b/pkgs/desktops/gnome/gnome-mime-data/default.nix
@@ -0,0 +1,8 @@
+{input, stdenv, fetchurl, pkgconfig, perl, perlXMLParser}:
+
+assert pkgconfig != null && perl != null;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig perl perlXMLParser];
+}
diff --git a/pkgs/desktops/gnome/gnome-panel/default.nix b/pkgs/desktops/gnome/gnome-panel/default.nix
new file mode 100644
index 000000000000..49ef9203f31a
--- /dev/null
+++ b/pkgs/desktops/gnome/gnome-panel/default.nix
@@ -0,0 +1,13 @@
+{ input, stdenv, fetchurl, pkgconfig, perl, perlXMLParser, glib, gtk
+, ORBit2, libgnome, libgnomeui, gnomedesktop, libglade, libwnck
+, libjpeg, libpng, scrollkeeper, libXmu
+}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [
+    pkgconfig perl perlXMLParser gtk glib ORBit2 libgnome libgnomeui
+    gnomedesktop libglade libwnck libjpeg libpng scrollkeeper
+    libXmu
+  ];
+}
diff --git a/pkgs/desktops/gnome/gnome-vfs/default.nix b/pkgs/desktops/gnome/gnome-vfs/default.nix
new file mode 100644
index 000000000000..75f9ed77a85d
--- /dev/null
+++ b/pkgs/desktops/gnome/gnome-vfs/default.nix
@@ -0,0 +1,16 @@
+{ input, stdenv, fetchurl, pkgconfig, perl, glib, libxml2, GConf
+, libbonobo, gnomemimedata, popt, perlXMLParser, gettext, bzip2
+}:
+
+assert pkgconfig != null && perl != null && glib != null
+  && libxml2 != null && GConf != null && libbonobo != null
+  && gnomemimedata != null;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [
+    pkgconfig perl glib libxml2 GConf libbonobo
+    gnomemimedata popt perlXMLParser gettext bzip2
+  ];
+  patches = [./no-kerberos.patch];
+}
diff --git a/pkgs/desktops/gnome/gnome-vfs/no-kerberos.patch b/pkgs/desktops/gnome/gnome-vfs/no-kerberos.patch
new file mode 100644
index 000000000000..e34b74bb8a17
--- /dev/null
+++ b/pkgs/desktops/gnome/gnome-vfs/no-kerberos.patch
@@ -0,0 +1,54 @@
+diff -rc gnome-vfs-2.8.4-orig/configure gnome-vfs-2.8.4/configure
+*** gnome-vfs-2.8.4-orig/configure	2005-02-21 10:20:34.000000000 +0100
+--- gnome-vfs-2.8.4/configure	2005-03-02 13:00:41.000000000 +0100
+***************
+*** 128,134 ****
+    case $CONFIG_SHELL in
+    '')
+      as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+! for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+  do
+    IFS=$as_save_IFS
+    test -z "$as_dir" && as_dir=.
+--- 128,134 ----
+    case $CONFIG_SHELL in
+    '')
+      as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+! for as_dir in $PATH
+  do
+    IFS=$as_save_IFS
+    test -z "$as_dir" && as_dir=.
+***************
+*** 306,312 ****
+    # So, first we look for a working echo in the user's PATH.
+  
+    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+!   for dir in $PATH /usr/ucb; do
+      IFS="$lt_save_ifs"
+      if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+         test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+--- 306,312 ----
+    # So, first we look for a working echo in the user's PATH.
+  
+    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+!   for dir in $PATH; do
+      IFS="$lt_save_ifs"
+      if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+         test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+***************
+*** 27670,27676 ****
+    ;;
+    *)
+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+! as_dummy="$PATH:/usr/kerberos/bin"
+  for as_dir in $as_dummy
+  do
+    IFS=$as_save_IFS
+--- 27670,27676 ----
+    ;;
+    *)
+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+! as_dummy="$PATH"
+  for as_dir in $as_dummy
+  do
+    IFS=$as_save_IFS
diff --git a/pkgs/desktops/gnome/gtkhtml/default.nix b/pkgs/desktops/gnome/gtkhtml/default.nix
new file mode 100644
index 000000000000..b5b6caad4690
--- /dev/null
+++ b/pkgs/desktops/gnome/gtkhtml/default.nix
@@ -0,0 +1,18 @@
+{ input, stdenv, fetchurl, perl, perlXMLParser, pkgconfig, atk, gail, gtk
+, libgnomeprint, libgnomeprintui, libgnomeui, libglade, gnomeicontheme
+, libjpeg, gettext
+}:
+
+# TODO build complains about missing libsoup and soup. Optional dependency?
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+
+  buildInputs = [
+    perl perlXMLParser pkgconfig libjpeg
+    atk gail gtk
+    libglade libgnomeprint libgnomeprintui libgnomeui
+    gnomeicontheme gettext
+  ];
+}
+
diff --git a/pkgs/desktops/gnome/gtksourceview/default.nix b/pkgs/desktops/gnome/gtksourceview/default.nix
new file mode 100644
index 000000000000..8ad7955e8d40
--- /dev/null
+++ b/pkgs/desktops/gnome/gtksourceview/default.nix
@@ -0,0 +1,13 @@
+{ input, stdenv, fetchurl, perl, perlXMLParser, pkgconfig
+, gtk, libxml2, libgnomeprint, gnomevfs, libbonobo, GConf
+, libgnomeprintui, libgnomecanvas
+}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [
+    perl perlXMLParser pkgconfig gnomevfs
+    libbonobo GConf libgnomeprintui libgnomecanvas
+  ];
+  propagatedBuildInputs = [gtk libxml2 libgnomeprint];
+}
diff --git a/pkgs/desktops/gnome/imlib/default.nix b/pkgs/desktops/gnome/imlib/default.nix
new file mode 100644
index 000000000000..c42ccbce167c
--- /dev/null
+++ b/pkgs/desktops/gnome/imlib/default.nix
@@ -0,0 +1,21 @@
+{stdenv, fetchurl, libX11, libXext, xextproto, libjpeg, libungif, libtiff, libpng}:
+
+stdenv.mkDerivation {
+  name = "imlib-1.9.15";
+  src = fetchurl {
+    url = http://nix.cs.uu.nl/dist/tarballs/imlib-1.9.15.tar.gz;
+    md5 = "2a5561457e7f8b2e04d88f73508fd13a";
+  };
+
+  configureFlags = "
+    --disable-shm
+    --x-includes=${libX11}/include
+    --x-libraries=${libX11}/lib";
+
+  buildInputs = [libjpeg libXext libX11 xextproto libtiff libungif libpng];
+}
+
+
+
+
+
diff --git a/pkgs/desktops/gnome/intltool/default.nix b/pkgs/desktops/gnome/intltool/default.nix
new file mode 100644
index 000000000000..8807f7ab897e
--- /dev/null
+++ b/pkgs/desktops/gnome/intltool/default.nix
@@ -0,0 +1,6 @@
+{input, stdenv, fetchurl, pkgconfig, perl, perlXMLParser}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig perl perlXMLParser];
+}
diff --git a/pkgs/desktops/gnome/libIDL/default.nix b/pkgs/desktops/gnome/libIDL/default.nix
new file mode 100644
index 000000000000..2a2dd49e2d16
--- /dev/null
+++ b/pkgs/desktops/gnome/libIDL/default.nix
@@ -0,0 +1,8 @@
+{input, stdenv, fetchurl, pkgconfig, glib, lex, yacc}:
+
+assert pkgconfig != null && glib != null && lex != null && yacc != null;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig glib lex yacc];
+}
diff --git a/pkgs/desktops/gnome/libart_lgpl/default.nix b/pkgs/desktops/gnome/libart_lgpl/default.nix
new file mode 100644
index 000000000000..4f05f788b4d8
--- /dev/null
+++ b/pkgs/desktops/gnome/libart_lgpl/default.nix
@@ -0,0 +1,5 @@
+{input, stdenv, fetchurl}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+}
diff --git a/pkgs/desktops/gnome/libbonobo/default.nix b/pkgs/desktops/gnome/libbonobo/default.nix
new file mode 100644
index 000000000000..03b4cd556259
--- /dev/null
+++ b/pkgs/desktops/gnome/libbonobo/default.nix
@@ -0,0 +1,11 @@
+{input, stdenv, fetchurl, pkgconfig, perl, perlXMLParser, ORBit2, libxml2, popt, yacc, flex}:
+
+assert pkgconfig != null && perl != null && ORBit2 != null
+  && libxml2 != null && popt != null && yacc != null && flex != null;
+
+# todo 2.8.1 doesn;t work
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig perl perlXMLParser libxml2 yacc flex];
+  propagatedBuildInputs = [ORBit2 popt];
+}
diff --git a/pkgs/desktops/gnome/libbonoboui/default.nix b/pkgs/desktops/gnome/libbonoboui/default.nix
new file mode 100644
index 000000000000..ba0b3aee0ad8
--- /dev/null
+++ b/pkgs/desktops/gnome/libbonoboui/default.nix
@@ -0,0 +1,14 @@
+{ input, stdenv, fetchurl, pkgconfig, perl, perlXMLParser, libxml2, libglade, libgnome
+, libgnomecanvas, gettext}:
+
+assert pkgconfig != null && perl != null && libxml2 != null
+  && libglade != null && libgnome != null && libgnomecanvas != null;
+
+# TODO 2.8.1 doesn't work
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig perl perlXMLParser libglade gettext];
+  propagatedBuildInputs = [libxml2 libgnome libgnomecanvas];
+
+  LDFLAGS="-lglib-2.0"; # !!! why?
+}
diff --git a/pkgs/desktops/gnome/libglade/default.nix b/pkgs/desktops/gnome/libglade/default.nix
new file mode 100644
index 000000000000..2719379359c8
--- /dev/null
+++ b/pkgs/desktops/gnome/libglade/default.nix
@@ -0,0 +1,9 @@
+{input, stdenv, fetchurl, pkgconfig, gtk, libxml2}:
+
+assert pkgconfig != null && gtk != null && libxml2 != null;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig];
+  propagatedBuildInputs = [gtk libxml2];
+}
diff --git a/pkgs/desktops/gnome/libgnome/default.nix b/pkgs/desktops/gnome/libgnome/default.nix
new file mode 100644
index 000000000000..dda72143bd36
--- /dev/null
+++ b/pkgs/desktops/gnome/libgnome/default.nix
@@ -0,0 +1,14 @@
+{ input, stdenv, fetchurl, pkgconfig, perl, perlXMLParser, glib, gnomevfs, libbonobo
+, GConf, popt, zlib, esound
+}:
+
+# !!! TODO CHECK:
+# libgnome tries to install stuff into GConf (which fails):
+# "WARNING: failed to install schema `/schemas/desktop/gnome/url-handlers/https/need-terminal' locale `is': Failed:
+# Failed to create file `/nix/store/14d4fc76451786eba9dea087d56dc719-GConf-2.4.0/etc/gconf/gconf.xml.defaults/%gconf.xml': Permission denied"
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig perl perlXMLParser popt zlib esound];
+  propagatedBuildInputs = [glib gnomevfs libbonobo GConf];
+}
diff --git a/pkgs/desktops/gnome/libgnomecanvas/default.nix b/pkgs/desktops/gnome/libgnomecanvas/default.nix
new file mode 100644
index 000000000000..6602cf43ebc5
--- /dev/null
+++ b/pkgs/desktops/gnome/libgnomecanvas/default.nix
@@ -0,0 +1,10 @@
+{input, stdenv, fetchurl, pkgconfig, gtk, libart, libglade}:
+
+assert pkgconfig != null && gtk != null && libart != null
+  && libglade != null;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig libglade];
+  propagatedBuildInputs = [gtk libart];
+}
diff --git a/pkgs/desktops/gnome/libgnomeprint/default.nix b/pkgs/desktops/gnome/libgnomeprint/default.nix
new file mode 100644
index 000000000000..6a44c549f4ca
--- /dev/null
+++ b/pkgs/desktops/gnome/libgnomeprint/default.nix
@@ -0,0 +1,12 @@
+{input, stdenv, fetchurl, perl, perlXMLParser, pkgconfig, glib, pango, libart, libxml2, popt, bison, flex}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+
+  buildInputs = [
+    perl perlXMLParser pkgconfig popt libxml2
+    glib pango bison flex
+  ];
+
+  propagatedBuildInputs = [libxml2 libart];
+}
diff --git a/pkgs/desktops/gnome/libgnomeprintui/default.nix b/pkgs/desktops/gnome/libgnomeprintui/default.nix
new file mode 100644
index 000000000000..34f2b7994985
--- /dev/null
+++ b/pkgs/desktops/gnome/libgnomeprintui/default.nix
@@ -0,0 +1,10 @@
+{input, stdenv, fetchurl, perl, perlXMLParser, pkgconfig, gtk, libgnomeprint, libgnomecanvas, gnomeicontheme}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+
+  buildInputs = [
+    perl perlXMLParser pkgconfig
+    gtk libgnomeprint libgnomecanvas gnomeicontheme
+  ];
+}
diff --git a/pkgs/desktops/gnome/libgnomeui/default.nix b/pkgs/desktops/gnome/libgnomeui/default.nix
new file mode 100644
index 000000000000..af1d81e69845
--- /dev/null
+++ b/pkgs/desktops/gnome/libgnomeui/default.nix
@@ -0,0 +1,11 @@
+{input, stdenv, fetchurl, pkgconfig, libgnome, libgnomecanvas,
+libbonoboui, libglade, esound, libjpeg, gnomekeyring}:
+
+assert pkgconfig != null && libgnome != null && libgnomecanvas != null
+  && libbonoboui != null && libglade != null;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig libglade esound libjpeg];
+  propagatedBuildInputs = [libgnome libgnomecanvas libbonoboui libjpeg gnomekeyring];
+}
diff --git a/pkgs/desktops/gnome/libgtkhtml/default.nix b/pkgs/desktops/gnome/libgtkhtml/default.nix
new file mode 100644
index 000000000000..839ce4014714
--- /dev/null
+++ b/pkgs/desktops/gnome/libgtkhtml/default.nix
@@ -0,0 +1,16 @@
+{input, stdenv, fetchurl, perl, perlXMLParser, pkgconfig, gtk, gail, libxml2}:
+
+assert
+     null != pkgconfig
+  && null != perl
+  && null != perlXMLParser
+  ;
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+
+  buildInputs = [
+    perl perlXMLParser pkgconfig gtk libxml2 gail
+  ];
+}
+
diff --git a/pkgs/desktops/gnome/libsoup/default.nix b/pkgs/desktops/gnome/libsoup/default.nix
new file mode 100644
index 000000000000..0e93c70ae9a6
--- /dev/null
+++ b/pkgs/desktops/gnome/libsoup/default.nix
@@ -0,0 +1,6 @@
+{input, stdenv, fetchurl, pkgconfig, libxml2, glib}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig libxml2 glib];
+}
diff --git a/pkgs/desktops/gnome/libwnck/default.nix b/pkgs/desktops/gnome/libwnck/default.nix
new file mode 100644
index 000000000000..03912ef8044f
--- /dev/null
+++ b/pkgs/desktops/gnome/libwnck/default.nix
@@ -0,0 +1,6 @@
+{input, stdenv, fetchurl, pkgconfig, gtk, perl, perlXMLParser, gettext}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig gtk perl perlXMLParser gettext];
+}
diff --git a/pkgs/desktops/gnome/make-listing.pl b/pkgs/desktops/gnome/make-listing.pl
new file mode 100755
index 000000000000..3fc6d3fee667
--- /dev/null
+++ b/pkgs/desktops/gnome/make-listing.pl
@@ -0,0 +1,48 @@
+#! /usr/bin/perl -w
+
+use strict;
+
+# Example use:
+# ./make-listing.sh \
+#   http://ftp.gnome.org/pub/GNOME/platform/2.10/2.10.1/sources/ \
+#   http://ftp.gnome.org/pub/GNOME/platform/2.10/2.10.1/sources/MD5SUMS-for-bz2
+
+my $baseURL = shift;
+my $md5URL = shift;
+
+print <<EOF
+# Note: this file was generated automatically by make-listing.sh!
+
+{fetchurl} : {
+EOF
+    ;
+    
+open FOO, "curl '$md5URL' |" or die;
+
+while (<FOO>) {
+    chomp;
+    /^(\S+)\s+(\S+)$/ or die;
+    my $md5 = $1;
+    my $fileName = $2;
+    my $name = $fileName;
+    $name =~ s/\.tar.*$//;
+    my $attrName = $name;
+    $attrName =~ s/\-[0-9].*$//;
+    $attrName =~ s/\-//g;
+    $attrName =~ s/\+//g;
+    print <<EOF
+  $attrName = {
+    name = "$name";
+    src = fetchurl {
+      url = $baseURL$fileName;
+      md5 = "$md5";
+    };
+  };
+EOF
+    ;
+    
+}
+
+close FOO;
+
+print "}\n";
diff --git a/pkgs/desktops/gnome/scrollkeeper/default.nix b/pkgs/desktops/gnome/scrollkeeper/default.nix
new file mode 100644
index 000000000000..ffdbe0659127
--- /dev/null
+++ b/pkgs/desktops/gnome/scrollkeeper/default.nix
@@ -0,0 +1,10 @@
+{ input, stdenv, fetchurl, pkgconfig, perl, perlXMLParser
+, libxml2, libxslt, docbook_xml_dtd_42
+}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  patches = [./xmlcatalog.patch];
+  buildInputs = [pkgconfig perl perlXMLParser libxml2 libxslt];
+  configureFlags = "--with-xml-catalog=${docbook_xml_dtd_42}/xml/dtd/docbook/docbook.cat";
+}
diff --git a/pkgs/desktops/gnome/scrollkeeper/xmlcatalog.patch b/pkgs/desktops/gnome/scrollkeeper/xmlcatalog.patch
new file mode 100644
index 000000000000..77313819fceb
--- /dev/null
+++ b/pkgs/desktops/gnome/scrollkeeper/xmlcatalog.patch
@@ -0,0 +1,37 @@
+diff -rrc scrollkeeper-orig/extract/dtds/Makefile.in scrollkeeper-0.3.14/extract/dtds/Makefile.in
+*** scrollkeeper-orig/extract/dtds/Makefile.in	2003-12-06 09:18:01.000000000 +0100
+--- scrollkeeper-0.3.14/extract/dtds/Makefile.in	2005-03-08 19:22:27.000000000 +0100
+***************
+*** 408,414 ****
+  
+  # ScrollKeeper OMF Variation DTD V1.0
+  install-data-hook:
+! 	-/usr/bin/xmlcatalog --noout --add "public" \
+  		"-//OMF//DTD Scrollkeeper OMF Variant V1.0//EN" \
+  		"$(dtdsdir)/scrollkeeper-omf.dtd" $(CATALOG)
+  
+--- 408,414 ----
+  
+  # ScrollKeeper OMF Variation DTD V1.0
+  install-data-hook:
+! 	-xmlcatalog --noout --add "public" \
+  		"-//OMF//DTD Scrollkeeper OMF Variant V1.0//EN" \
+  		"$(dtdsdir)/scrollkeeper-omf.dtd" $(CATALOG)
+  
+***************
+*** 418,424 ****
+  
+  # ScrollKeeper OMF Variation DTD V1.0
+  uninstall-local:
+! 	-/usr/bin/xmlcatalog --noout --del \
+  		"$(dtdsdir)/scrollkeeper-omf.dtd" $(CATALOG)
+  # Tell versions [3.59,3.63) of GNU make to not export all variables.
+  # Otherwise a system limit (for SysV at least) may be exceeded.
+--- 418,424 ----
+  
+  # ScrollKeeper OMF Variation DTD V1.0
+  uninstall-local:
+! 	-xmlcatalog --noout --del \
+  		"$(dtdsdir)/scrollkeeper-omf.dtd" $(CATALOG)
+  # Tell versions [3.59,3.63) of GNU make to not export all variables.
+  # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/pkgs/desktops/gnome/src-gnome-desktop-2.14.3.nix b/pkgs/desktops/gnome/src-gnome-desktop-2.14.3.nix
new file mode 100644
index 000000000000..eb1e09040bce
--- /dev/null
+++ b/pkgs/desktops/gnome/src-gnome-desktop-2.14.3.nix
@@ -0,0 +1,515 @@
+# Note: this file was generated automatically by make-listing.sh!
+
+{fetchurl} : {
+  bugbuddy = {
+    name = "bug-buddy-2.14.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/bug-buddy-2.14.0.tar.bz2;
+      md5 = "4fb288adc8f67cbfb8886ddf7b400530";
+    };
+  };
+  controlcenter = {
+    name = "control-center-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/control-center-2.14.2.tar.bz2;
+      md5 = "08711b0f14584e7eaa9f4c275085ab36";
+    };
+  };
+  dasher = {
+    name = "dasher-4.0.4";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/dasher-4.0.4.tar.bz2;
+      md5 = "6ab865403d29d9d3714e85840ed89dc7";
+    };
+  };
+  deskbarapplet = {
+    name = "deskbar-applet-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/deskbar-applet-2.14.2.tar.bz2;
+      md5 = "382379d0c4ca4bd73f14b25d3a04b7cc";
+    };
+  };
+  eel = {
+    name = "eel-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/eel-2.14.3.tar.bz2;
+      md5 = "cdff898f9a054b35f5e3b7c0142cc2a5";
+    };
+  };
+  ekiga = {
+    name = "ekiga-2.0.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/ekiga-2.0.2.tar.bz2;
+      md5 = "d593da6ac49dce495ef4c6ada06b54b6";
+    };
+  };
+  eog = {
+    name = "eog-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/eog-2.14.3.tar.bz2;
+      md5 = "e90e4c1e314cfab04414464088098a16";
+    };
+  };
+  epiphany = {
+    name = "epiphany-2.14.2.1";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/epiphany-2.14.2.1.tar.bz2;
+      md5 = "872ef8d5e95cdc359f93b5ded501d98d";
+    };
+  };
+  evince = {
+    name = "evince-0.5.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/evince-0.5.2.tar.bz2;
+      md5 = "732df368435cebddd4cc8132a8a280bd";
+    };
+  };
+  evolution = {
+    name = "evolution-2.6.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/evolution-2.6.3.tar.bz2;
+      md5 = "d7db71aaff2764f03083e6ce74c8ebde";
+    };
+  };
+  evolutiondataserver = {
+    name = "evolution-data-server-1.6.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/evolution-data-server-1.6.3.tar.bz2;
+      md5 = "e40343fa6a80916da3f4d1ba5d118c89";
+    };
+  };
+  evolutionexchange = {
+    name = "evolution-exchange-2.6.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/evolution-exchange-2.6.3.tar.bz2;
+      md5 = "c98c41db650707fb394e3a8b0cef019b";
+    };
+  };
+  evolutionwebcal = {
+    name = "evolution-webcal-2.6.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/evolution-webcal-2.6.0.tar.bz2;
+      md5 = "c779dcfc1db419f019abfcaafd6b8e4d";
+    };
+  };
+  fastuserswitchapplet = {
+    name = "fast-user-switch-applet-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/fast-user-switch-applet-2.14.2.tar.bz2;
+      md5 = "590e51fbc9dfa7e33a337d36349cf040";
+    };
+  };
+  fileroller = {
+    name = "file-roller-2.14.4";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/file-roller-2.14.4.tar.bz2;
+      md5 = "e86c78b3ecc90af20cf66511f4622c5c";
+    };
+  };
+  gcalctool = {
+    name = "gcalctool-5.8.19";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gcalctool-5.8.19.tar.bz2;
+      md5 = "9fbf0f2552f6fd1a0fadf54a2125fef2";
+    };
+  };
+  gconfeditor = {
+    name = "gconf-editor-2.14.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gconf-editor-2.14.0.tar.bz2;
+      md5 = "eb8b979464f6e383e5a27b57ee4e8382";
+    };
+  };
+  gdm = {
+    name = "gdm-2.14.10";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gdm-2.14.10.tar.bz2;
+      md5 = "e880558dc3574f804f3abca869992a4f";
+    };
+  };
+  gedit = {
+    name = "gedit-2.14.4";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gedit-2.14.4.tar.bz2;
+      md5 = "189d4d9128eca1162a782744cb324aea";
+    };
+  };
+  gnomeapplets = {
+    name = "gnome-applets-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-applets-2.14.3.tar.bz2;
+      md5 = "ab96f071db993461533cb740281a7373";
+    };
+  };
+  gnomebackgrounds = {
+    name = "gnome-backgrounds-2.14.2.1";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-backgrounds-2.14.2.1.tar.bz2;
+      md5 = "10480df7c2e5a08c920c5b0a2ff4f161";
+    };
+  };
+  gnomedesktop = {
+    name = "gnome-desktop-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-desktop-2.14.3.tar.bz2;
+      md5 = "2a8547ab0dcb10a1ad297874ae95b06b";
+    };
+  };
+  gnomedocutils = {
+    name = "gnome-doc-utils-0.6.1";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-doc-utils-0.6.1.tar.bz2;
+      md5 = "c706b807b15e07e58561f903c0f20c26";
+    };
+  };
+  gnomegames = {
+    name = "gnome-games-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-games-2.14.3.tar.bz2;
+      md5 = "20f7c2e0ee4a65d15733332f34ac3cd4";
+    };
+  };
+  gnomeicontheme = {
+    name = "gnome-icon-theme-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-icon-theme-2.14.2.tar.bz2;
+      md5 = "6f1d33a297bd27e0e9f4c1a5fa956166";
+    };
+  };
+  gnomekeyring = {
+    name = "gnome-keyring-0.4.9";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-keyring-0.4.9.tar.bz2;
+      md5 = "9a90820acf11a66e4c3dd9e163231071";
+    };
+  };
+  gnomekeyringmanager = {
+    name = "gnome-keyring-manager-2.14.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-keyring-manager-2.14.0.tar.bz2;
+      md5 = "d4e38c7b7da99885fa898917e10d8aeb";
+    };
+  };
+  gnomemag = {
+    name = "gnome-mag-0.12.6";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-mag-0.12.6.tar.bz2;
+      md5 = "c402b06408d3b40843720ae09ad74234";
+    };
+  };
+  gnomemedia = {
+    name = "gnome-media-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-media-2.14.2.tar.bz2;
+      md5 = "16c35916f429c5ea04fb942b4072643b";
+    };
+  };
+  gnomemenus = {
+    name = "gnome-menus-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-menus-2.14.3.tar.bz2;
+      md5 = "9926e7ad14255d1a08c7e774052f8a3a";
+    };
+  };
+  gnomenetstatus = {
+    name = "gnome-netstatus-2.12.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-netstatus-2.12.0.tar.bz2;
+      md5 = "a5f23731a3bf232969e82afef8792a36";
+    };
+  };
+  gnomenettool = {
+    name = "gnome-nettool-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-nettool-2.14.2.tar.bz2;
+      md5 = "0efb13f0145abe46b26a00c75473a00f";
+    };
+  };
+  gnomepanel = {
+    name = "gnome-panel-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-panel-2.14.3.tar.bz2;
+      md5 = "14ab4c3d3ff3d0c1be397b6799a8626c";
+    };
+  };
+  gnomepythondesktop = {
+    name = "gnome-python-desktop-2.14.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-python-desktop-2.14.0.tar.bz2;
+      md5 = "d3f9c2d213b7d486ca7bd87dd106ca69";
+    };
+  };
+  gnomescreensaver = {
+    name = "gnome-screensaver-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-screensaver-2.14.3.tar.bz2;
+      md5 = "2ed0b9322d284bb1739e037165ca94f2";
+    };
+  };
+  gnomesession = {
+    name = "gnome-session-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-session-2.14.3.tar.bz2;
+      md5 = "34eb4641e2791ae51acf6f1edfcf3d64";
+    };
+  };
+  gnomespeech = {
+    name = "gnome-speech-0.4.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-speech-0.4.2.tar.bz2;
+      md5 = "df06441a5b560830264c0557e3d3c376";
+    };
+  };
+  gnomesystemmonitor = {
+    name = "gnome-system-monitor-2.14.5";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-system-monitor-2.14.5.tar.bz2;
+      md5 = "1220837542f9c1905ebf3af69a608b07";
+    };
+  };
+  gnomesystemtools = {
+    name = "gnome-system-tools-2.14.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-system-tools-2.14.0.tar.bz2;
+      md5 = "3aded3a37f4f5b4962bf253d25cebea1";
+    };
+  };
+  gnometerminal = {
+    name = "gnome-terminal-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-terminal-2.14.2.tar.bz2;
+      md5 = "da80071cd707e89cedcfb476cab8b39a";
+    };
+  };
+  gnomethemes = {
+    name = "gnome-themes-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-themes-2.14.3.tar.bz2;
+      md5 = "7c07c4c01404b447f2624e8e400ee787";
+    };
+  };
+  gnomeuserdocs = {
+    name = "gnome-user-docs-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-user-docs-2.14.2.tar.bz2;
+      md5 = "4f5a7114ccf9e4e31137da50b7333570";
+    };
+  };
+  gnomeutils = {
+    name = "gnome-utils-2.14.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-utils-2.14.0.tar.bz2;
+      md5 = "d1d16ff6bfc1f6ddc110d18ec4dfdbfa";
+    };
+  };
+  gnomevolumemanager = {
+    name = "gnome-volume-manager-1.5.15";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-volume-manager-1.5.15.tar.bz2;
+      md5 = "0bf3ee007c951a5d833a3c17bbe59ec6";
+    };
+  };
+  gnopernicus = {
+    name = "gnopernicus-1.1.1";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnopernicus-1.1.1.tar.bz2;
+      md5 = "e691c408de4ca885a3589a0b6fa297be";
+    };
+  };
+  gok = {
+    name = "gok-1.0.10";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gok-1.0.10.tar.bz2;
+      md5 = "de6cceaca780e7ad0702c4b3c0fd8d1f";
+    };
+  };
+  gstpluginsbase = {
+    name = "gst-plugins-base-0.10.7";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gst-plugins-base-0.10.7.tar.bz2;
+      md5 = "d66b09de993aefd22d8fc341e5f50521";
+    };
+  };
+  gstpluginsgood = {
+    name = "gst-plugins-good-0.10.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gst-plugins-good-0.10.3.tar.bz2;
+      md5 = "2b59bce477349628ee549c2ce1d80a3a";
+    };
+  };
+  gstreamer = {
+    name = "gstreamer-0.10.8";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gstreamer-0.10.8.tar.bz2;
+      md5 = "a094ea86d4cea4f23ef2eb8c6e7bfc10";
+    };
+  };
+  gtkengines = {
+    name = "gtk-engines-2.6.10";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gtk-engines-2.6.10.tar.bz2;
+      md5 = "f3e2b14b0cff0988277ccba42e69813d";
+    };
+  };
+  gtkhtml = {
+    name = "gtkhtml-3.10.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gtkhtml-3.10.3.tar.bz2;
+      md5 = "90b1807db0ef0e5d69442e1f85610ec4";
+    };
+  };
+  gtksourceview = {
+    name = "gtksourceview-1.6.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gtksourceview-1.6.2.tar.bz2;
+      md5 = "57f4ee84f0c494fd943c7badb0a68785";
+    };
+  };
+  gucharmap = {
+    name = "gucharmap-1.6.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gucharmap-1.6.0.tar.bz2;
+      md5 = "8af03f350c988d1565922b10776bc725";
+    };
+  };
+  libgailgnome = {
+    name = "libgail-gnome-1.1.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libgail-gnome-1.1.3.tar.bz2;
+      md5 = "1d12c5375b3404f4f20b214b763e5225";
+    };
+  };
+  libgnomeprint = {
+    name = "libgnomeprint-2.12.1";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libgnomeprint-2.12.1.tar.bz2;
+      md5 = "ea729d4968fe2169c84efb12ace5f6cc";
+    };
+  };
+  libgnomeprintui = {
+    name = "libgnomeprintui-2.12.1";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libgnomeprintui-2.12.1.tar.bz2;
+      md5 = "fa0b0410c3ba8b6899c5ed278f02cbe5";
+    };
+  };
+  libgtop = {
+    name = "libgtop-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libgtop-2.14.2.tar.bz2;
+      md5 = "adcc07c6d1c115c6d275a3c9bb1f3b68";
+    };
+  };
+  librsvg = {
+    name = "librsvg-2.14.4";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/librsvg-2.14.4.tar.bz2;
+      md5 = "945617bb094975d7353a3852302297c1";
+    };
+  };
+  libsoup = {
+    name = "libsoup-2.2.96";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libsoup-2.2.96.tar.bz2;
+      md5 = "2704961ca2b9597819f21b40d4a0e0aa";
+    };
+  };
+  libwnck = {
+    name = "libwnck-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libwnck-2.14.3.tar.bz2;
+      md5 = "5796c0c26c5dfbad6d4fdf77858feae6";
+    };
+  };
+  libxklavier = {
+    name = "libxklavier-2.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libxklavier-2.2.tar.bz2;
+      md5 = "1c53646f35d77564f42d3f4342cd443f";
+    };
+  };
+  metacity = {
+    name = "metacity-2.14.5";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/metacity-2.14.5.tar.bz2;
+      md5 = "a14c4a07e456a2590452d6c9db2e5153";
+    };
+  };
+  nautilus = {
+    name = "nautilus-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/nautilus-2.14.3.tar.bz2;
+      md5 = "e82df2a1cb11719d054959539b74b3c7";
+    };
+  };
+  nautiluscdburner = {
+    name = "nautilus-cd-burner-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/nautilus-cd-burner-2.14.3.tar.bz2;
+      md5 = "c85642630b3db5ee0a40e2fdbf4fdf94";
+    };
+  };
+  scrollkeeper = {
+    name = "scrollkeeper-0.3.14";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/scrollkeeper-0.3.14.tar.bz2;
+      md5 = "b175e582a6cec3e50a9de73a5bb7455a";
+    };
+  };
+  soundjuicer = {
+    name = "sound-juicer-2.14.5";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/sound-juicer-2.14.5.tar.bz2;
+      md5 = "2bb23f1bd7751eb9f14f2446beed15e0";
+    };
+  };
+  startupnotification = {
+    name = "startup-notification-0.8";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/startup-notification-0.8.tar.bz2;
+      md5 = "d9b2e9fba18843314ae42334ceb4336d";
+    };
+  };
+  systemtoolsbackends = {
+    name = "system-tools-backends-1.4.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/system-tools-backends-1.4.2.tar.bz2;
+      md5 = "a0af1513becdf3b9bfed3535ad8f7dab";
+    };
+  };
+  totem = {
+    name = "totem-1.4.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/totem-1.4.3.tar.bz2;
+      md5 = "971f99d769cb865f9a6b55284357f415";
+    };
+  };
+  vino = {
+    name = "vino-2.13.5";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/vino-2.13.5.tar.bz2;
+      md5 = "9bc8c3f0e639fdc7b9ed023501308359";
+    };
+  };
+  vte = {
+    name = "vte-0.12.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/vte-0.12.2.tar.bz2;
+      md5 = "7cb1bd6ca528bc4db5ec685549fd3eb1";
+    };
+  };
+  yelp = {
+    name = "yelp-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/yelp-2.14.3.tar.bz2;
+      md5 = "d3c4300c9a7d38ff2179b934ca5e2d1a";
+    };
+  };
+  zenity = {
+    name = "zenity-2.14.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/zenity-2.14.3.tar.bz2;
+      md5 = "00c0930abb905a5552f67ee764bd6177";
+    };
+  };
+}
diff --git a/pkgs/desktops/gnome/src-gnome-platform-2.14.3.nix b/pkgs/desktops/gnome/src-gnome-platform-2.14.3.nix
new file mode 100644
index 000000000000..c6f90204fc94
--- /dev/null
+++ b/pkgs/desktops/gnome/src-gnome-platform-2.14.3.nix
@@ -0,0 +1,172 @@
+# Note: this file was generated automatically by make-listing.sh!
+
+{fetchurl} : {
+  atk = {
+    name = "atk-1.11.4";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/atk-1.11.4.tar.bz2;
+      md5 = "2f7132e46a62a2586545bca40eeeef39";
+    };
+  };
+  atspi = {
+    name = "at-spi-1.7.7";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/at-spi-1.7.7.tar.bz2;
+      md5 = "2988cd21d9f292fd404a8c532fe2723d";
+    };
+  };
+  audiofile = {
+    name = "audiofile-0.2.6";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/audiofile-0.2.6.tar.bz2;
+      md5 = "3d01302834660850b6141cac1e6f5501";
+    };
+  };
+  esound = {
+    name = "esound-0.2.36";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/esound-0.2.36.tar.bz2;
+      md5 = "3facb5aa0115cc1c31771b9ad454ae76";
+    };
+  };
+  gail = {
+    name = "gail-1.8.11";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gail-1.8.11.tar.bz2;
+      md5 = "ff79df7dd0cf7a5109c089b9b5fbe17f";
+    };
+  };
+  GConf = {
+    name = "GConf-2.14.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/GConf-2.14.0.tar.bz2;
+      md5 = "d07c2efcaf477cf34225c604a04b6271";
+    };
+  };
+  glib = {
+    name = "glib-2.10.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/glib-2.10.3.tar.bz2;
+      md5 = "87206e721c12d185d17dd9ecd7e30369";
+    };
+  };
+  gnomemimedata = {
+    name = "gnome-mime-data-2.4.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-mime-data-2.4.2.tar.bz2;
+      md5 = "37242776b08625fa10c73c18b790e552";
+    };
+  };
+  gnomevfs = {
+    name = "gnome-vfs-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gnome-vfs-2.14.2.tar.bz2;
+      md5 = "b657e31974d6981adf9b2c4db981f62c";
+    };
+  };
+  gtk = {
+    name = "gtk+-2.8.20";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gtk+-2.8.20.tar.bz2;
+      md5 = "74e7ca98194f1fadfe906e66d763d05d";
+    };
+  };
+  gtkdoc = {
+    name = "gtk-doc-1.6";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/gtk-doc-1.6.tar.bz2;
+      md5 = "09c7a89efff2e0bbaba02a12bff58dfd";
+    };
+  };
+  intltool = {
+    name = "intltool-0.34.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/intltool-0.34.2.tar.bz2;
+      md5 = "83914f744d927579cc47c52f8b08bf60";
+    };
+  };
+  libart_lgpl = {
+    name = "libart_lgpl-2.3.17";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libart_lgpl-2.3.17.tar.bz2;
+      md5 = "dfca42529393c8a8f59dc4dc10675a46";
+    };
+  };
+  libbonobo = {
+    name = "libbonobo-2.14.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libbonobo-2.14.0.tar.bz2;
+      md5 = "f1f0255f94e3354250d142b688013fad";
+    };
+  };
+  libbonoboui = {
+    name = "libbonoboui-2.14.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libbonoboui-2.14.0.tar.bz2;
+      md5 = "dc26dc17cddc625cac37ecfab263a51a";
+    };
+  };
+  libglade = {
+    name = "libglade-2.6.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libglade-2.6.0.tar.bz2;
+      md5 = "81d7b2b64871ce23a5fae1e5da0b1f6e";
+    };
+  };
+  libgnome = {
+    name = "libgnome-2.14.1";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libgnome-2.14.1.tar.bz2;
+      md5 = "bf53815df10db62bbf00defd4100b8d8";
+    };
+  };
+  libgnomecanvas = {
+    name = "libgnomecanvas-2.14.0";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libgnomecanvas-2.14.0.tar.bz2;
+      md5 = "516c46fb4a1401b05cfef58c350fbd3d";
+    };
+  };
+  libgnomeui = {
+    name = "libgnomeui-2.14.1";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libgnomeui-2.14.1.tar.bz2;
+      md5 = "ff6b6c25de0e7e39c79998621cdec048";
+    };
+  };
+  libIDL = {
+    name = "libIDL-0.8.7";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libIDL-0.8.7.tar.bz2;
+      md5 = "53a3874beb42ddfd9a5030047a0db740";
+    };
+  };
+  libxml2 = {
+    name = "libxml2-2.6.26";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libxml2-2.6.26.tar.bz2;
+      md5 = "ce342b4d7b6d83e10cfa4d3f82bf75fd";
+    };
+  };
+  libxslt = {
+    name = "libxslt-1.1.17";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/libxslt-1.1.17.tar.bz2;
+      md5 = "af99d7b06eba109ab374ccd7015561c4";
+    };
+  };
+  ORBit2 = {
+    name = "ORBit2-2.14.2";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/ORBit2-2.14.2.tar.bz2;
+      md5 = "88ea9b8e686ab0dd27b4199e0f41ac84";
+    };
+  };
+  pango = {
+    name = "pango-1.12.3";
+    src = fetchurl {
+      url = http://nix.cs.uu.nl/dist/tarballs/pango-1.12.3.tar.bz2;
+      md5 = "c8178e11a895166d86990bb2c38d831b";
+    };
+  };
+}
diff --git a/pkgs/desktops/gnome/startup-notification/default.nix b/pkgs/desktops/gnome/startup-notification/default.nix
new file mode 100644
index 000000000000..b8df1c22edc3
--- /dev/null
+++ b/pkgs/desktops/gnome/startup-notification/default.nix
@@ -0,0 +1,6 @@
+{input, stdenv, fetchurl, pkgconfig, x11}:
+
+stdenv.mkDerivation {
+  inherit (input) name src;
+  buildInputs = [pkgconfig x11];
+}
diff --git a/pkgs/desktops/kde/arts/default.nix b/pkgs/desktops/kde/arts/default.nix
new file mode 100644
index 000000000000..4fdd914ccffa
--- /dev/null
+++ b/pkgs/desktops/kde/arts/default.nix
@@ -0,0 +1,22 @@
+{stdenv, fetchurl, pkgconfig, glib, kdelibs, libX11, libXext, zlib, libjpeg, libpng, perl, qt}:
+
+stdenv.mkDerivation {
+  name = "arts-1.5.4";
+
+  KDEDIR = kdelibs;
+  configureFlags = "
+    --with-extra-includes=${libjpeg}/include
+    --with-extra-libs=${libjpeg}/lib
+    --x-includes=${libX11}/include
+    --x-libraries=${libX11}/lib";
+
+  src = fetchurl {
+    url = http://nix.cs.uu.nl/dist/tarballs/arts-1.5.4.tar.bz2;
+    md5 = "886ba4a13dc0da312d94c09f50c3ffe6";
+  };
+
+  buildInputs = [pkgconfig glib kdelibs libX11 libXext zlib libjpeg libpng perl qt];
+
+}
+
+
diff --git a/pkgs/desktops/kde/kdelibs/default.nix b/pkgs/desktops/kde/kdelibs/default.nix
new file mode 100644
index 000000000000..d8f0107007ec
--- /dev/null
+++ b/pkgs/desktops/kde/kdelibs/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, libX11, libXt, libXext, zlib, perl, qt, openssl, pcre
+, pkgconfig, libjpeg, libpng, libtiff, libxml2, libxslt, libtool, expat
+, freetype, bzip2
+}:
+
+stdenv.mkDerivation {
+  name = "kdelibs-3.5.0";
+  src = fetchurl {
+    url = http://nix.cs.uu.nl/dist/tarballs/kdelibs-3.5.0.tar.bz2;
+    md5 = "2b11d654e2ea1a3cd16dcfdcbb7d1915";
+  };
+
+  inherit openssl libX11 libjpeg;
+  buildInputs = [
+    libX11 libXt libXext zlib perl qt openssl pcre 
+    pkgconfig libjpeg libpng libtiff libxml2 libxslt expat
+    libtool freetype bzip2
+  ];
+
+  configureFlags="
+    --without-arts 
+    --with-ssl-dir=${openssl}
+    --with-extra-includes=${libjpeg}/include
+    --x-includes=${libX11}/include
+    --x-libraries=${libX11}/lib
+  ";
+}