about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2004-03-30 17:28:41 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2004-03-30 17:28:41 +0000
commit00004fa6daa874af4f224e1c35a54acddcc621e2 (patch)
tree3b57f5b696e6bf7586c674dfc19f93cf1db27beb
parent5a4de2c5de00ffb8fd5428d99e2ec9ce0bdb3564 (diff)
* More freedesktop.org X11 modules.
* Cleaned up some packages.

svn path=/nixpkgs/trunk/; revision=883
-rw-r--r--pkgs/TODO1
-rw-r--r--pkgs/applications/networking/browsers/firefox/builder.sh19
-rw-r--r--pkgs/applications/networking/browsers/firefox/default.nix6
-rw-r--r--pkgs/development/libraries/fontconfig/builder.sh16
-rw-r--r--pkgs/development/libraries/fontconfig/default.nix19
-rw-r--r--pkgs/development/libraries/freedesktop/fontconfig/builder.sh5
-rw-r--r--pkgs/development/libraries/freedesktop/fontconfig/default.nix14
-rw-r--r--pkgs/development/libraries/freedesktop/libXext/default.nix10
-rw-r--r--pkgs/development/libraries/freedesktop/libXft/default.nix13
-rw-r--r--pkgs/development/libraries/freedesktop/libXrender/default.nix11
-rw-r--r--pkgs/development/libraries/freedesktop/renderext/default.nix9
-rw-r--r--pkgs/development/libraries/freedesktop/xlibs/default.nix4
-rw-r--r--pkgs/development/libraries/freetype/builder.sh8
-rw-r--r--pkgs/development/libraries/freetype/default.nix3
-rw-r--r--pkgs/development/libraries/gtk+/atk/builder.sh11
-rw-r--r--pkgs/development/libraries/gtk+/atk/default.nix6
-rw-r--r--pkgs/development/libraries/gtk+/glib/builder.sh8
-rw-r--r--pkgs/development/libraries/gtk+/glib/default.nix5
-rw-r--r--pkgs/development/libraries/gtk+/gtk+/builder.sh21
-rw-r--r--pkgs/development/libraries/gtk+/gtk+/default.nix18
-rw-r--r--pkgs/development/libraries/gtk+/pango/builder.sh11
-rw-r--r--pkgs/development/libraries/gtk+/pango/default.nix12
-rw-r--r--pkgs/development/libraries/xft/builder.sh13
-rw-r--r--pkgs/development/libraries/xft/default.nix16
-rw-r--r--pkgs/system/all-packages-generic.nix31
25 files changed, 111 insertions, 179 deletions
diff --git a/pkgs/TODO b/pkgs/TODO
index e69de29bb2d1d..1bdce4e302527 100644
--- a/pkgs/TODO
+++ b/pkgs/TODO
@@ -0,0 +1 @@
+* Bump freetype to 2.1.7 (but it breaks Pango 1.2.5).
diff --git a/pkgs/applications/networking/browsers/firefox/builder.sh b/pkgs/applications/networking/browsers/firefox/builder.sh
index 23a78692136f5..eed85b6e4c6ca 100644
--- a/pkgs/applications/networking/browsers/firefox/builder.sh
+++ b/pkgs/applications/networking/browsers/firefox/builder.sh
@@ -1,10 +1,8 @@
-buildinputs="$pkgconfig $gtk $perl $zip $libIDL"
-. $stdenv/setup || exit 1
+. $stdenv/setup
 
-tar xvfj $src || exit 1
-cd mozilla || exit 1
 
-cat > .mozconfig <<EOF
+preConfigure() {
+    cat > .mozconfig <<EOF
 export MOZ_PHOENIX=1
 mk_add_options MOZ_PHOENIX=1
 ac_add_options --enable-crypto
@@ -21,8 +19,11 @@ ac_add_options --enable-swg
 ac_add_options --enable-strip
 ac_add_options --enable-default-toolkit=gtk2
 EOF
-echo "ac_add_options --prefix=$out" >> .mozconfig
+    echo "ac_add_options --prefix=$out" >> .mozconfig
+}
+preConfigure=preConfigure
 
-./configure || exit 1
-make -f client.mk build || exit 1
-make install || exit 1
+
+makeFlags="-f client.mk build"
+
+genericBuild
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index cf435cdddd227..f02ebd95a0626 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -15,9 +15,5 @@ stdenv.mkDerivation {
     md5 = "cdc85152f4219bf3e3f1a8dc46e04654";
   };
 
-  pkgconfig = pkgconfig;
-  gtk = gtk;
-  perl = perl;
-  zip = zip;
-  libIDL = libIDL;
+  buildInputs = [pkgconfig, gtk, perl, zip, libIDL];
 }
diff --git a/pkgs/development/libraries/fontconfig/builder.sh b/pkgs/development/libraries/fontconfig/builder.sh
deleted file mode 100644
index 324d2d9f84372..0000000000000
--- a/pkgs/development/libraries/fontconfig/builder.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-buildinputs="$freetype $expat $x11 $ed"
-. $stdenv/setup
-
-# Fontconfig generates a bad `fonts.conf' file is the timezone is not known
-# (because it calls `date').
-export TZ=UTC
-
-tar xvfz $src
-cd fontconfig-*
-./configure --prefix=$out --with-confdir=$out/etc/fonts \
- --with-expat-includes=$expat/include --with-expat-lib=$expat/lib
-make
-make install
-
-mkdir $out/nix-support
-echo "$freetype" > $out/nix-support/propagated-build-inputs
diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix
deleted file mode 100644
index 16e13b7512599..0000000000000
--- a/pkgs/development/libraries/fontconfig/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{stdenv, fetchurl, x11, freetype, expat, ed}:
-
-assert x11 != null && x11.buildClientLibs;
-assert freetype != null;
-assert expat != null;
-assert ed != null;
-
-stdenv.mkDerivation {
-  name = "fontconfig-2.2.90";
-  builder = ./builder.sh;
-  src = fetchurl {
-    url = http://pdx.freedesktop.org/software/fontconfig/releases/fontconfig-2.2.90.tar.gz;
-    md5 = "5cb87476743be1bbf1674ed72a76ae6a";
-  };
-  x11 = x11;
-  freetype = freetype;
-  expat = expat;
-  ed = ed;
-}
diff --git a/pkgs/development/libraries/freedesktop/fontconfig/builder.sh b/pkgs/development/libraries/freedesktop/fontconfig/builder.sh
new file mode 100644
index 0000000000000..48c1d5e23d3cf
--- /dev/null
+++ b/pkgs/development/libraries/freedesktop/fontconfig/builder.sh
@@ -0,0 +1,5 @@
+. $stdenv/setup
+
+configureFlags="--with-confdir=$out/etc/fonts"
+
+genericBuild
diff --git a/pkgs/development/libraries/freedesktop/fontconfig/default.nix b/pkgs/development/libraries/freedesktop/fontconfig/default.nix
new file mode 100644
index 0000000000000..b9dbd564b8e0c
--- /dev/null
+++ b/pkgs/development/libraries/freedesktop/fontconfig/default.nix
@@ -0,0 +1,14 @@
+{stdenv, fetchurl, freetype, expat}:
+
+assert freetype != null && expat != null;
+
+stdenv.mkDerivation {
+  name = "fontconfig-2.2.2";
+  builder = ./builder.sh;
+  src = fetchurl {
+    url = http://freedesktop.org/~fontconfig/release/fontconfig-2.2.2.tar.gz;
+    md5 = "af6e9a8addfa89aa68d703d5eb004185";
+  };
+  buildInputs = [freetype];
+  propagatedBuildInputs = [expat]; # !!! shouldn't be necessary, but otherwise pango breaks
+}
diff --git a/pkgs/development/libraries/freedesktop/libXext/default.nix b/pkgs/development/libraries/freedesktop/libXext/default.nix
new file mode 100644
index 0000000000000..5226e0601c255
--- /dev/null
+++ b/pkgs/development/libraries/freedesktop/libXext/default.nix
@@ -0,0 +1,10 @@
+{stdenv, fetchurl, pkgconfig, xproto, xextensions, libX11}:
+
+stdenv.mkDerivation {
+  name = "libXext-6.4.2";
+  src = fetchurl {
+    url = http://freedesktop.org/~xlibs/release/xlibs-1.0/libXext-6.4.2.tar.bz2;
+    md5 = "e7c5f5ac3db6d171f8938339f7617281";
+  };
+  buildInputs = [pkgconfig xproto xextensions libX11];
+}
diff --git a/pkgs/development/libraries/freedesktop/libXft/default.nix b/pkgs/development/libraries/freedesktop/libXft/default.nix
new file mode 100644
index 0000000000000..c352494131a5e
--- /dev/null
+++ b/pkgs/development/libraries/freedesktop/libXft/default.nix
@@ -0,0 +1,13 @@
+{stdenv, fetchurl, pkgconfig, libX11, libXrender, freetype, fontconfig}:
+
+# !!! assert freetype `elem` fontconfig.buildInputs or some such
+# assert freetype == fontconfig.freetype;
+
+stdenv.mkDerivation {
+  name = "libXft-2.1.6";
+  src = fetchurl {
+    url = http://freedesktop.org/~xlibs/release/libXft-2.1.6.tar.bz2;
+    md5 = "ba10c9c3f4758f304f04f8d48e2f81a4";
+  };
+  buildInputs = [pkgconfig libX11 libXrender freetype fontconfig];
+}
diff --git a/pkgs/development/libraries/freedesktop/libXrender/default.nix b/pkgs/development/libraries/freedesktop/libXrender/default.nix
new file mode 100644
index 0000000000000..c3040c3e352b0
--- /dev/null
+++ b/pkgs/development/libraries/freedesktop/libXrender/default.nix
@@ -0,0 +1,11 @@
+{stdenv, fetchurl, pkgconfig, libX11, renderext}:
+
+stdenv.mkDerivation {
+  name = "libXrender-0.8.4";
+  src = fetchurl {
+    url = http://freedesktop.org/~xlibs/release/xlibs-1.0/libXrender-0.8.4.tar.bz2;
+    md5 = "c745339dbe5f05cff8950b71a739e34c";
+  };
+  buildInputs = [pkgconfig libX11 renderext];
+  propagatedBuildInputs = [];
+}
diff --git a/pkgs/development/libraries/freedesktop/renderext/default.nix b/pkgs/development/libraries/freedesktop/renderext/default.nix
new file mode 100644
index 0000000000000..ba2ece319748d
--- /dev/null
+++ b/pkgs/development/libraries/freedesktop/renderext/default.nix
@@ -0,0 +1,9 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation {
+  name = "renderext-0.8";
+  src = fetchurl {
+    url = http://freedesktop.org/~xlibs/release/xlibs-1.0/renderext-0.8.tar.bz2;
+    md5 = "b00a97b00bf93ab2ac6442ea13ea9c0b";
+  };
+}
diff --git a/pkgs/development/libraries/freedesktop/xlibs/default.nix b/pkgs/development/libraries/freedesktop/xlibs/default.nix
index d1b7dc4476ce0..4c8475c21e71a 100644
--- a/pkgs/development/libraries/freedesktop/xlibs/default.nix
+++ b/pkgs/development/libraries/freedesktop/xlibs/default.nix
@@ -1,9 +1,9 @@
-{stdenv, libX11, libXt}:
+{stdenv, libX11, libXt, freetype, fontconfig, libXft, libXext}:
 
 stdenv.mkDerivation {
   name = "xlib-1.0";
   builder = ./builder.sh;
-  propagatedBuildInputs = [libX11 libXt];
+  propagatedBuildInputs = [libX11 libXt freetype fontconfig libXft libXext];
 } // {
   # For compatability with XFree86.
   buildClientLibs = true;
diff --git a/pkgs/development/libraries/freetype/builder.sh b/pkgs/development/libraries/freetype/builder.sh
deleted file mode 100644
index 724d378e62352..0000000000000
--- a/pkgs/development/libraries/freetype/builder.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-. $stdenv/setup || exit 1
-
-tar xvfj $src || exit 1
-cd freetype-* || exit 1
-./configure --prefix=$out || exit 1
-make || exit 1
-make install || exit 1
-strip -S $out/lib/*.a || exit 1
diff --git a/pkgs/development/libraries/freetype/default.nix b/pkgs/development/libraries/freetype/default.nix
index 108874a3159f5..47a23aff7fad0 100644
--- a/pkgs/development/libraries/freetype/default.nix
+++ b/pkgs/development/libraries/freetype/default.nix
@@ -1,8 +1,9 @@
 {stdenv, fetchurl}: stdenv.mkDerivation {
   name = "freetype-2.1.5";
-  builder = ./builder.sh;
   src = fetchurl {
     url = http://heanet.dl.sourceforge.net/sourceforge/freetype/freetype-2.1.5.tar.bz2;
     md5 = "54537b518b84d04190a1eccd393a29df";
+#    url = http://cesnet.dl.sourceforge.net/sourceforge/freetype/freetype-2.1.7.tar.bz2;
+#    md5 = "d71723948d7c0e44c401b5733c50857e";
   };
 }
diff --git a/pkgs/development/libraries/gtk+/atk/builder.sh b/pkgs/development/libraries/gtk+/atk/builder.sh
deleted file mode 100644
index a5af70b675ae1..0000000000000
--- a/pkgs/development/libraries/gtk+/atk/builder.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-buildinputs="$pkgconfig $perl $glib"
-. $stdenv/setup
-
-tar xvfj $src
-cd atk-*
-./configure --prefix=$out
-make
-make install
-
-mkdir $out/nix-support
-echo "$glib" > $out/nix-support/propagated-build-inputs
diff --git a/pkgs/development/libraries/gtk+/atk/default.nix b/pkgs/development/libraries/gtk+/atk/default.nix
index f08c561676fe8..1089f571099e5 100644
--- a/pkgs/development/libraries/gtk+/atk/default.nix
+++ b/pkgs/development/libraries/gtk+/atk/default.nix
@@ -4,12 +4,10 @@ assert pkgconfig != null && glib != null && perl != null;
 
 stdenv.mkDerivation {
   name = "atk-1.2.4";
-  builder = ./builder.sh;
   src = fetchurl {
     url = ftp://ftp.gtk.org/pub/gtk/v2.2/atk-1.2.4.tar.bz2;
     md5 = "2d6d50df31abe0e8892b5d3e7676a02d";
   };
-  pkgconfig = pkgconfig;
-  glib = glib;
-  perl = perl;
+  buildInputs = [pkgconfig perl];
+  propagatedBuildInputs = [glib];
 }
diff --git a/pkgs/development/libraries/gtk+/glib/builder.sh b/pkgs/development/libraries/gtk+/glib/builder.sh
deleted file mode 100644
index 5f12963eb8bea..0000000000000
--- a/pkgs/development/libraries/gtk+/glib/builder.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-buildinputs="$pkgconfig $gettext $perl"
-. $stdenv/setup || exit 1
-
-tar xvfj $src || exit 1
-cd glib-* || exit 1
-./configure --prefix=$out || exit 1
-make || exit 1
-make install || exit 1
diff --git a/pkgs/development/libraries/gtk+/glib/default.nix b/pkgs/development/libraries/gtk+/glib/default.nix
index 83700be486338..22d01d0d86f6f 100644
--- a/pkgs/development/libraries/gtk+/glib/default.nix
+++ b/pkgs/development/libraries/gtk+/glib/default.nix
@@ -4,12 +4,9 @@ assert pkgconfig != null && gettext != null && perl != null;
 
 stdenv.mkDerivation {
   name = "glib-2.2.3";
-  builder = ./builder.sh;
   src = fetchurl {
     url = ftp://ftp.gtk.org/pub/gtk/v2.2/glib-2.2.3.tar.bz2;
     md5 = "aa214a10d873b68ddd67cd9de2ccae55";
   };
-  pkgconfig = pkgconfig;
-  gettext = gettext;
-  perl = perl;
+  buildInputs = [pkgconfig gettext perl];
 }
diff --git a/pkgs/development/libraries/gtk+/gtk+/builder.sh b/pkgs/development/libraries/gtk+/gtk+/builder.sh
deleted file mode 100644
index 38659aa31c250..0000000000000
--- a/pkgs/development/libraries/gtk+/gtk+/builder.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-buildinputs="$pkgconfig $x11 $glib $atk $pango $perl $libtiff $libjpeg $libpng"
-. $stdenv/setup
-
-IFS=:
-for i in $PATH; do echo $i; done
-
-#exit 1
-# A utility function for fixing up libtool scripts that scan in
-# default directories like /usr.  This is a bit of a hack.  A better
-# solution would be to fix libtool, but since it is included in so
-# many packages that is not feasible right now.
-
-tar xvfj $src
-cd gtk+-*
-fixLibtool ltmain.sh
-./configure --prefix=$out
-make
-make install
-
-mkdir $out/nix-support
-echo "$x11 $glib $atk $pango" > $out/nix-support/propagated-build-inputs
diff --git a/pkgs/development/libraries/gtk+/gtk+/default.nix b/pkgs/development/libraries/gtk+/gtk+/default.nix
index 0efb546b107b6..16b322ee7ae0b 100644
--- a/pkgs/development/libraries/gtk+/gtk+/default.nix
+++ b/pkgs/development/libraries/gtk+/gtk+/default.nix
@@ -5,24 +5,16 @@ assert pkgconfig != null && x11 != null && glib != null && atk != null
   && pango != null && perl != null && perl != null && libtiff != null
   && libjpeg != null && libpng != null;
 assert x11.buildClientLibs;
-assert glib == atk.glib;
-assert glib == pango.glib;
-assert x11 == pango.x11;
+#assert glib == atk.glib;
+#assert glib == pango.glib;
+#assert x11 == pango.x11;
 
 stdenv.mkDerivation {
   name = "gtk+-2.2.4";
-  builder = ./builder.sh;
   src = fetchurl {
     url = ftp://ftp.gtk.org/pub/gtk/v2.2/gtk+-2.2.4.tar.bz2;
     md5 = "605332199533e73bc6eec481fb4f1671";
   };
-  pkgconfig = pkgconfig;
-  x11 = x11;
-  glib = glib;
-  atk = atk;
-  pango = pango;
-  perl = perl;
-  libtiff = libtiff;
-  libjpeg = libjpeg;
-  libpng = libpng;
+  buildInputs = [pkgconfig perl libtiff libjpeg libpng];
+  propagatedBuildInputs = [x11 glib atk pango];
 }
diff --git a/pkgs/development/libraries/gtk+/pango/builder.sh b/pkgs/development/libraries/gtk+/pango/builder.sh
deleted file mode 100644
index 0ec40bf7b4063..0000000000000
--- a/pkgs/development/libraries/gtk+/pango/builder.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-buildinputs="$pkgconfig $x11 $glib $xft"
-. $stdenv/setup
-
-tar xvfj $src
-cd pango-*
-./configure --prefix=$out
-make
-make install
-
-mkdir $out/nix-support
-echo "$xft $glib" > $out/nix-support/propagated-build-inputs
diff --git a/pkgs/development/libraries/gtk+/pango/default.nix b/pkgs/development/libraries/gtk+/pango/default.nix
index 36d204a5e6d06..5d5e5184dda7e 100644
--- a/pkgs/development/libraries/gtk+/pango/default.nix
+++ b/pkgs/development/libraries/gtk+/pango/default.nix
@@ -1,18 +1,14 @@
-{stdenv, fetchurl, pkgconfig, x11, glib, xft}:
+{stdenv, fetchurl, pkgconfig, x11, glib}:
 
-assert pkgconfig != null && x11 != null && glib != null && xft != null;
+assert pkgconfig != null && x11 != null && glib != null;
 assert x11.buildClientLibs;
-assert xft.x11 == x11;
 
 stdenv.mkDerivation {
   name = "pango-1.2.5";
-  builder = ./builder.sh;
   src = fetchurl {
     url = ftp://ftp.gtk.org/pub/gtk/v2.2/pango-1.2.5.tar.bz2;
     md5 = "df00fe3e71cd297010f24f439b6c8ee6";
   };
-  pkgconfig = pkgconfig;
-  x11 = x11;
-  glib = glib;
-  xft = xft;
+  buildInputs = [pkgconfig];
+  propagatedBuildInputs = [x11 glib];
 }
diff --git a/pkgs/development/libraries/xft/builder.sh b/pkgs/development/libraries/xft/builder.sh
deleted file mode 100644
index 4ed7d6e918a58..0000000000000
--- a/pkgs/development/libraries/xft/builder.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-set -x
-
-buildinputs="$pkgconfig $fontconfig $x11"
-. $stdenv/setup
-
-tar xvfz $src
-cd xft-*
-./configure --prefix=$out --x-includes=$x11/include --x-libraries=$x11/lib
-make
-make install
-
-mkdir $out/nix-support
-echo "$fontconfig" > $out/nix-support/propagated-build-inputs
diff --git a/pkgs/development/libraries/xft/default.nix b/pkgs/development/libraries/xft/default.nix
deleted file mode 100644
index 69aef8a76059d..0000000000000
--- a/pkgs/development/libraries/xft/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{stdenv, fetchurl, pkgconfig, x11, fontconfig}:
-
-assert pkgconfig != null && x11 != null && fontconfig != null;
-assert fontconfig.x11 == x11;
-
-stdenv.mkDerivation {
-  name = "xft-2.1.2";
-  builder = ./builder.sh;
-  src = fetchurl {
-    url = http://pdx.freedesktop.org/software/fontconfig/releases/xft-2.1.2.tar.gz;
-    md5 = "defb7e801d4938b8b15a426ae57e2f3f";
-  };
-  pkgconfig = pkgconfig;
-  x11 = x11;
-  fontconfig = fontconfig;
-}
diff --git a/pkgs/system/all-packages-generic.nix b/pkgs/system/all-packages-generic.nix
index 74bb2fc231d5e..bbd70fe1e3cb9 100644
--- a/pkgs/system/all-packages-generic.nix
+++ b/pkgs/system/all-packages-generic.nix
@@ -384,14 +384,6 @@ rec {
     inherit fetchurl stdenv;
   };
 
-  fontconfig = (import ../development/libraries/fontconfig) {
-    inherit fetchurl stdenv freetype expat ed x11;
-  };
-
-  xft = (import ../development/libraries/xft) {
-    inherit fetchurl stdenv pkgconfig fontconfig x11;
-  };
-
   zlib = (import ../development/libraries/zlib) {
     inherit fetchurl stdenv;
   };
@@ -426,7 +418,7 @@ rec {
   };
 
   pango = (import ../development/libraries/gtk+/pango) {
-    inherit fetchurl stdenv pkgconfig glib xft x11;
+    inherit fetchurl stdenv pkgconfig glib x11;
   };
 
   gtk = (import ../development/libraries/gtk+/gtk+) {
@@ -583,6 +575,9 @@ rec {
     inherit fetchurl stdenv pkgconfig xproto xextensions libXtrans libXau;
   };
 
+  libXext = (import ../development/libraries/freedesktop/libXext) {
+    inherit fetchurl stdenv pkgconfig xproto xextensions libX11;
+  };
 
   libICE = (import ../development/libraries/freedesktop/libICE) {
     inherit fetchurl stdenv pkgconfig libX11;
@@ -597,8 +592,24 @@ rec {
     patch = gnupatch;
   };
 
+  renderext = (import ../development/libraries/freedesktop/renderext) {
+    inherit fetchurl stdenv;
+  };
+
+  libXrender = (import ../development/libraries/freedesktop/libXrender) {
+    inherit fetchurl stdenv pkgconfig libX11 renderext;
+  };
+
+  fontconfig = (import ../development/libraries/freedesktop/fontconfig) {
+    inherit fetchurl stdenv freetype expat;
+  };
+
+  libXft = (import ../development/libraries/freedesktop/libXft) {
+    inherit fetchurl stdenv pkgconfig libX11 libXrender freetype fontconfig;
+  };
+
   xlibs = (import ../development/libraries/freedesktop/xlibs) {
-    inherit stdenv libX11 libXt;
+    inherit stdenv libX11 libXt freetype fontconfig libXft libXext;
   };
 
   perlBerkeleyDB = (import ../development/perl-modules/BerkeleyDB) {