From 0ce6326882d1ef6b45955ce0af948aa3da22bc07 Mon Sep 17 00:00:00 2001
From: Cecil Hugh Watson <knoppmyth@gmail.com>
Date: Fri, 2 Jan 2009 23:56:23 -0800
Subject: Added support for Miro.

---
 abs/core-testing/glib2/PKGBUILD                    |  24 +-
 abs/core-testing/pcre/ChangeLog                    |   6 +
 abs/core-testing/pcre/PKGBUILD                     |  18 +-
 .../boost/0001-date_time-gcc-4.3-fix.patch         |  25 ++
 abs/extra-testing/boost/PKGBUILD                   |  62 +++++
 abs/extra-testing/boost/serialization_gcc43.patch  |  44 +++
 abs/extra-testing/cairo/PKGBUILD                   |  24 ++
 abs/extra-testing/docbook-xml/PKGBUILD             | 268 ++++++++++++++++++
 abs/extra-testing/docbook-xml/docbook-xml.install  |  46 ++++
 abs/extra-testing/docbook-xml/docbook.patch        | 226 +++++++++++++++
 abs/extra-testing/docbook-xsl/PKGBUILD             |  37 +++
 abs/extra-testing/docbook-xsl/docbook-xsl.install  |  47 ++++
 abs/extra-testing/gconf/PKGBUILD                   |  20 +-
 abs/extra-testing/gconf/gconfpkg                   |   8 +-
 abs/extra-testing/gnome-python-extras/PKGBUILD     |  29 ++
 .../gnome-python-extras-2.19.1-pkg-config.patch    |  61 +++++
 .../gnome-python-extras-2.19.1-xulrunner.patch     |  22 ++
 abs/extra-testing/gnome-python/PKGBUILD            |  24 ++
 abs/extra-testing/gnome-vfs/PKGBUILD               |  39 +++
 abs/extra-testing/gnome-vfs/gnome-vfs.install      |  22 ++
 .../gnome-vfs/hal-show-volume-names.patch          |  46 ++++
 abs/extra-testing/gperf/PKGBUILD                   |  20 ++
 abs/extra-testing/gtk2/PKGBUILD                    |  37 +++
 abs/extra-testing/gtk2/gtk2.install                |  13 +
 abs/extra-testing/gtk2/gtkclipboard-check.patch    |  11 +
 abs/extra-testing/libbonoboui/PKGBUILD             |  24 ++
 abs/extra-testing/libcups/PKGBUILD                 |  33 +++
 abs/extra-testing/libglade/PKGBUILD                |  26 ++
 abs/extra-testing/libglade/glade.install           |  25 ++
 .../libglade/libglade-2.0.1-nowarning.patch        |  39 +++
 abs/extra-testing/libgnome/PKGBUILD                |  28 ++
 abs/extra-testing/libgnome/libgnome.install        |  22 ++
 abs/extra-testing/libgnomecanvas/PKGBUILD          |  22 ++
 abs/extra-testing/libgnomeui/PKGBUILD              |  24 ++
 abs/extra-testing/libpng/ChangeLog                 |  55 ++++
 abs/extra-testing/libpng/PKGBUILD                  |  42 +++
 abs/extra-testing/libxcb/PKGBUILD                  |  34 +++
 .../libxcb/libxcb-1.1-no-pthread-stubs.patch       |  12 +
 .../libxcb/libxcb-1.1-sloppy-lock.patch            |  12 +
 abs/extra-testing/miro/ChangeLog                   |  34 +++
 abs/extra-testing/miro/Miro-xulrunner.patch        |  64 +++++
 abs/extra-testing/miro/PKGBUILD                    |  41 +++
 abs/extra-testing/miro/boost_1.36.0_fix.patch      |  32 +++
 abs/extra-testing/miro/miro.install                |  17 ++
 abs/extra-testing/miro/miro_python26.patch         |  16 ++
 abs/extra-testing/miro/missing-headers.patch       |  33 +++
 abs/extra-testing/pango/PKGBUILD                   |  24 ++
 abs/extra-testing/pango/bgo563356.patch            | 305 +++++++++++++++++++++
 abs/extra-testing/pango/pango.install              |  26 ++
 abs/extra-testing/pixman/PKGBUILD                  |  21 ++
 abs/extra-testing/policykit-gnome/PKGBUILD         |  32 +++
 .../policykit-gnome/policykit-gnome.install        |  23 ++
 abs/extra-testing/policykit/PKGBUILD               |  38 +++
 abs/extra-testing/policykit/pk-ck-api-change.patch |  83 ++++++
 abs/extra-testing/policykit/policykit.install      |  30 ++
 abs/extra-testing/policykit/polkit.pam             |   7 +
 abs/extra-testing/pycairo/PKGBUILD                 |  21 ++
 abs/extra-testing/pygobject/PKGBUILD               |  21 ++
 abs/extra-testing/pygtk/PKGBUILD                   |  23 ++
 abs/extra-testing/pyorbit/PKGBUILD                 |  22 ++
 abs/extra-testing/xcb-proto/PKGBUILD               |  23 ++
 abs/extra-testing/xcb-util/PKGBUILD                |  23 ++
 62 files changed, 2499 insertions(+), 37 deletions(-)
 create mode 100644 abs/extra-testing/boost/0001-date_time-gcc-4.3-fix.patch
 create mode 100644 abs/extra-testing/boost/PKGBUILD
 create mode 100644 abs/extra-testing/boost/serialization_gcc43.patch
 create mode 100644 abs/extra-testing/cairo/PKGBUILD
 create mode 100644 abs/extra-testing/docbook-xml/PKGBUILD
 create mode 100644 abs/extra-testing/docbook-xml/docbook-xml.install
 create mode 100644 abs/extra-testing/docbook-xml/docbook.patch
 create mode 100644 abs/extra-testing/docbook-xsl/PKGBUILD
 create mode 100644 abs/extra-testing/docbook-xsl/docbook-xsl.install
 create mode 100644 abs/extra-testing/gnome-python-extras/PKGBUILD
 create mode 100644 abs/extra-testing/gnome-python-extras/gnome-python-extras-2.19.1-pkg-config.patch
 create mode 100644 abs/extra-testing/gnome-python-extras/gnome-python-extras-2.19.1-xulrunner.patch
 create mode 100644 abs/extra-testing/gnome-python/PKGBUILD
 create mode 100644 abs/extra-testing/gnome-vfs/PKGBUILD
 create mode 100644 abs/extra-testing/gnome-vfs/gnome-vfs.install
 create mode 100644 abs/extra-testing/gnome-vfs/hal-show-volume-names.patch
 create mode 100644 abs/extra-testing/gperf/PKGBUILD
 create mode 100644 abs/extra-testing/gtk2/PKGBUILD
 create mode 100644 abs/extra-testing/gtk2/gtk2.install
 create mode 100644 abs/extra-testing/gtk2/gtkclipboard-check.patch
 create mode 100644 abs/extra-testing/libbonoboui/PKGBUILD
 create mode 100644 abs/extra-testing/libcups/PKGBUILD
 create mode 100644 abs/extra-testing/libglade/PKGBUILD
 create mode 100644 abs/extra-testing/libglade/glade.install
 create mode 100644 abs/extra-testing/libglade/libglade-2.0.1-nowarning.patch
 create mode 100644 abs/extra-testing/libgnome/PKGBUILD
 create mode 100644 abs/extra-testing/libgnome/libgnome.install
 create mode 100644 abs/extra-testing/libgnomecanvas/PKGBUILD
 create mode 100644 abs/extra-testing/libgnomeui/PKGBUILD
 create mode 100644 abs/extra-testing/libpng/ChangeLog
 create mode 100644 abs/extra-testing/libpng/PKGBUILD
 create mode 100644 abs/extra-testing/libxcb/PKGBUILD
 create mode 100644 abs/extra-testing/libxcb/libxcb-1.1-no-pthread-stubs.patch
 create mode 100644 abs/extra-testing/libxcb/libxcb-1.1-sloppy-lock.patch
 create mode 100644 abs/extra-testing/miro/ChangeLog
 create mode 100644 abs/extra-testing/miro/Miro-xulrunner.patch
 create mode 100644 abs/extra-testing/miro/PKGBUILD
 create mode 100644 abs/extra-testing/miro/boost_1.36.0_fix.patch
 create mode 100644 abs/extra-testing/miro/miro.install
 create mode 100644 abs/extra-testing/miro/miro_python26.patch
 create mode 100644 abs/extra-testing/miro/missing-headers.patch
 create mode 100644 abs/extra-testing/pango/PKGBUILD
 create mode 100644 abs/extra-testing/pango/bgo563356.patch
 create mode 100644 abs/extra-testing/pango/pango.install
 create mode 100644 abs/extra-testing/pixman/PKGBUILD
 create mode 100644 abs/extra-testing/policykit-gnome/PKGBUILD
 create mode 100644 abs/extra-testing/policykit-gnome/policykit-gnome.install
 create mode 100644 abs/extra-testing/policykit/PKGBUILD
 create mode 100644 abs/extra-testing/policykit/pk-ck-api-change.patch
 create mode 100644 abs/extra-testing/policykit/policykit.install
 create mode 100644 abs/extra-testing/policykit/polkit.pam
 create mode 100644 abs/extra-testing/pycairo/PKGBUILD
 create mode 100644 abs/extra-testing/pygobject/PKGBUILD
 create mode 100644 abs/extra-testing/pygtk/PKGBUILD
 create mode 100644 abs/extra-testing/pyorbit/PKGBUILD
 create mode 100644 abs/extra-testing/xcb-proto/PKGBUILD
 create mode 100644 abs/extra-testing/xcb-util/PKGBUILD

diff --git a/abs/core-testing/glib2/PKGBUILD b/abs/core-testing/glib2/PKGBUILD
index 3e4abd7..f8696a4 100644
--- a/abs/core-testing/glib2/PKGBUILD
+++ b/abs/core-testing/glib2/PKGBUILD
@@ -1,32 +1,30 @@
-# $Id: PKGBUILD 7524 2008-08-02 20:27:35Z jgc $
+# $Id: PKGBUILD 19622 2008-11-28 19:19:41Z jgc $
 # Maintainer: Jan de Groot <jgc@archlinux.org>
 
 pkgname=glib2
-pkgver=2.16.5
+pkgver=2.18.3
 pkgrel=1
 pkgdesc="Common C routines used by GTK+ 2.4 and other libs"
 url="http://www.gtk.org/"
 arch=(i686 x86_64)
 license=('LGPL')
-depends=('pcre>=7.7')
+depends=('pcre>=7.8')
 makedepends=('pkgconfig')
-options=('!libtool')
-source=(http://ftp.gnome.org/pub/GNOME/sources/glib/2.16/glib-${pkgver}.tar.bz2
-	gkeyfile-bool-nocase.patch
+options=('!libtool' '!docs')
+source=(http://ftp.gnome.org/pub/GNOME/sources/glib/2.18/glib-${pkgver}.tar.bz2
 	glib2.sh
 	glib2.csh)
-md5sums=('039f02d47d4071322a3f00abf031e5d9'
-         '5ca65611e824662146369e814d49ad06'
+md5sums=('f13996a7bd57525d796a6593f26a7771'
          '803017b365bd35dc20b092ce43b8c8c5'
          '90c7b830bef4baf225c2eb8b7ead0cab')
 
 build() {
-  cd ${startdir}/src/glib-${pkgver}
-  patch -Np0 -i ${startdir}/src/gkeyfile-bool-nocase.patch || return 1
+  cd "${srcdir}/glib-${pkgver}"
   ./configure --prefix=/usr --enable-static --enable-shared --with-pcre=system --disable-fam || return 1
   make || return 1
-  make DESTDIR=${startdir}/pkg install || return 1
+  make DESTDIR="${pkgdir}" install || return 1
 
-  install -d -m755 ${startdir}/pkg/etc/profile.d
-  install -m755 ${startdir}/src/glib2.{csh,sh} ${startdir}/pkg/etc/profile.d/ || return 1
+  install -d -m755 "${pkgdir}/etc/profile.d"
+  install -m755 "${srcdir}/glib2.sh" "${pkgdir}/etc/profile.d/" || return 1
+  install -m755 "${srcdir}/glib2.csh" "${pkgdir}/etc/profile.d/" || return 1
 }
diff --git a/abs/core-testing/pcre/ChangeLog b/abs/core-testing/pcre/ChangeLog
index fa86646..a1850cf 100644
--- a/abs/core-testing/pcre/ChangeLog
+++ b/abs/core-testing/pcre/ChangeLog
@@ -1,3 +1,9 @@
+2008-09-05  Eric Belanger  <eric@archlinux.org>
+
+	* pcre 7.8-1
+	* Upstream update
+	* Fixed license
+
 2008-07-07  Eric Belanger  <eric@archlinux.org>
 
 	* pcre 7.7-2
diff --git a/abs/core-testing/pcre/PKGBUILD b/abs/core-testing/pcre/PKGBUILD
index 2cf7252..b019bed 100644
--- a/abs/core-testing/pcre/PKGBUILD
+++ b/abs/core-testing/pcre/PKGBUILD
@@ -1,26 +1,24 @@
-# $Id: PKGBUILD 4449 2008-07-07 16:12:00Z eric $
+# $Id: PKGBUILD 11888 2008-09-06 03:23:26Z eric $
 # Maintainer: Eric Belanger <eric@archlinux.org>
 # Contributor: John Proctor <jproctor@prium.net>
 
 pkgname=pcre
-pkgver=7.7
-pkgrel=11
+pkgver=7.8
+pkgrel=1
 pkgdesc="A library that implements Perl 5-style regular expressions"
 arch=('i686' 'x86_64') 
 url="http://pcre.sourceforge.net"
-license=('custom')
+license=('BSD')
 groups=('base')
 depends=('gcc-libs')
 options=('!libtool' '!makeflags')
-source=(ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${pkgname}-${pkgver}.tar.bz2 \
-        libpcre-7.7-buffer-overflow.patch)
-md5sums=('4b2e9cde1f7227448dddba59843efa0b' 'ea2204b6a0cbc83b3ca925ace06459a1')
-sha1sums=('f1f54d3e13e6cb427de962e62eaaee32c74cba38' '5a69fb97f1fa547f9012082221a6b98d77b65277')
+source=(ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('141132d6af14dccc7b08fa797e4fd441')
+sha1sums=('552909f9d18e1954eec639f926957a4cb2de1ec3')
 
 build() {
   cd ${srcdir}/${pkgname}-${pkgver}
   [ "${CARCH}" = "x86_64" ] && export CFLAGS="${CFLAGS} -fPIC"
-  patch -p1 < ../libpcre-7.7-buffer-overflow.patch || return 1
   ./configure --prefix=/usr --enable-utf8 --enable-unicode-properties || return 1
   make || return 1
   make DESTDIR=${pkgdir} install || return 1
@@ -28,5 +26,5 @@ build() {
   mkdir -p ${pkgdir}/lib
   mv ${pkgdir}/usr/lib/libpcre.so.* ${pkgdir}/lib/ || return 1
   ln -sf ../../lib/libpcre.so.0 ${pkgdir}/usr/lib/libpcre.so || return 1
-  install -D -m644 LICENCE ${pkgdir}/usr/share/licenses/${pkgname}/license.txt || return 1
+  install -D -m644 LICENCE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE || return 1
 }
diff --git a/abs/extra-testing/boost/0001-date_time-gcc-4.3-fix.patch b/abs/extra-testing/boost/0001-date_time-gcc-4.3-fix.patch
new file mode 100644
index 0000000..9f7e016
--- /dev/null
+++ b/abs/extra-testing/boost/0001-date_time-gcc-4.3-fix.patch
@@ -0,0 +1,25 @@
+From 88f7023cc36d82133cfa0e705531a9d73feb4686 Mon Sep 17 00:00:00 2001
+From: Tim Blechmann <tim@klingt.org>
+Date: Sat, 2 Feb 2008 17:22:58 +0100
+Subject: [PATCH] date_time: gcc-4.3 fix
+
+---
+ boost/date_time/tz_db_base.hpp |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/boost/date_time/tz_db_base.hpp b/boost/date_time/tz_db_base.hpp
+index b9c0a8a..03f748e 100644
+--- a/boost/date_time/tz_db_base.hpp
++++ b/boost/date_time/tz_db_base.hpp
+@@ -158,7 +158,7 @@ namespace boost {
+       typedef typename time_zone_type::base_type time_zone_base_type;
+       typedef typename time_zone_type::time_duration_type time_duration_type;
+       typedef time_zone_names_base<char_type> time_zone_names;
+-      typedef dst_adjustment_offsets<time_duration_type> dst_adjustment_offsets;
++      typedef boost::date_time::dst_adjustment_offsets<time_duration_type> dst_adjustment_offsets;
+       typedef std::basic_string<char_type> string_type;
+ 
+       //! Constructs an empty database
+-- 
+1.5.3.8
+
diff --git a/abs/extra-testing/boost/PKGBUILD b/abs/extra-testing/boost/PKGBUILD
new file mode 100644
index 0000000..485d0bb
--- /dev/null
+++ b/abs/extra-testing/boost/PKGBUILD
@@ -0,0 +1,62 @@
+# $Id: PKGBUILD 14045 2008-10-02 03:09:29Z kevin $
+# Maintainer: kevin <kevin@archlinux.org>
+# TU: Kritoke <kritoke@gamebox.net>
+# Contributor: Luca Roccia <little_rock@users.sourceforge.net>
+ 
+pkgname=boost
+pkgver=1.36.0
+_boostver=1_36_0
+pkgrel=2
+pkgdesc="Boost provides free peer-reviewed portable C++ source libraries."
+arch=(i686 x86_64)
+url="http://www.boost.org/"
+depends=('python>=2.5' 'bzip2' 'zlib')
+source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}_${_boostver}.tar.gz 0001-date_time-gcc-4.3-fix.patch)
+license=('custom')
+md5sums=('550b9157a596f9095aaafd683c4bccf8' 'd7f821056540ef08eb1d5ebd5ed017f1')
+ 
+build() {
+  cd ${srcdir}/${pkgname}_${_boostver}
+  export CFLAGS="${CFLAGS} -fno-strict-aliasing"
+  patch -Np1 -i ${srcdir}/0001-date_time-gcc-4.3-fix.patch || return 1
+
+  # build bjam
+  cd ${srcdir}/${pkgname}_${_boostver}/tools/jam/src
+  ./build.sh cc || return 1
+
+  _bindir="bin.linuxx86"
+  [ "${CARCH}" = "x86_64" ] && _bindir="bin.linuxx86_64"
+
+  install -m755 -d ${pkgdir}/usr/bin
+  install -m755 ${_bindir}/bjam ${pkgdir}/usr/bin/bjam || return 1
+ 
+  # build bcp
+  cd ${srcdir}/${pkgname}_${_boostver}/tools/bcp
+  ../jam/src/${_bindir}/bjam || return 1
+  install -m755 ${srcdir}/${pkgname}_${_boostver}/dist/bin/bcp \
+                ${pkgdir}/usr/bin/bcp || return 1
+
+  # build libs
+  cd ${srcdir}/${pkgname}_${_boostver}
+  # default "debug release <runtime-link>static/dynamic <threading>single/multi"
+  # --layout=system removes the -gcc suffix from libraries and installs
+  # includes in /usr/include/boost.
+  ./tools/jam/src/${_bindir}/bjam \
+            release debug-symbols=off threading=single,multi \
+			runtime-link=shared link=shared,static \
+            --prefix=${pkgdir}/usr \
+            -sPYTHON_ROOT=/usr \
+            -sPYTHON_VERSION=2.5 \
+            -sTOOLS=gcc \
+            --layout=system \
+            install || return 1
+
+  # build pyste
+  cd ${srcdir}/${pkgname}_${_boostver}/libs/python/pyste/install
+  python setup.py install --root=${pkgdir} || return 1
+
+  # license
+  install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname}
+  install -m644 ${srcdir}/${pkgname}_${_boostver}/LICENSE_1_0.txt \
+                ${pkgdir}/usr/share/licenses/${pkgname}/ || return 1
+}
diff --git a/abs/extra-testing/boost/serialization_gcc43.patch b/abs/extra-testing/boost/serialization_gcc43.patch
new file mode 100644
index 0000000..13dbf5d
--- /dev/null
+++ b/abs/extra-testing/boost/serialization_gcc43.patch
@@ -0,0 +1,44 @@
+Index: /home/maik/workspace/boost/boost/archive/polymorphic_iarchive.hpp
+===================================================================
+--- /home/maik/workspace/boost/boost/archive/polymorphic_iarchive.hpp	(Revision 43953)
++++ /home/maik/workspace/boost/boost/archive/polymorphic_iarchive.hpp	(Arbeitskopie)
+@@ -17,6 +17,7 @@
+ //  See http://www.boost.org for updates, documentation, and revision history.
+ 
+ #include <cstddef> // std::size_t
++#include <climits> // ULONG_MAX
+ #include <boost/config.hpp>
+ 
+ #if defined(BOOST_NO_STDC_NAMESPACE)
+@@ -38,6 +39,9 @@
+ // i.e. that its not a synonym for (unsigned) long
+ // if there is no 64 bit int or if its the same as a long
+ // we shouldn't define separate functions for int64 data types.
++#ifndef ULONG_MAX
++# error "ULONG_MAX is not defined"
++#endif
+ #if defined(BOOST_NO_INT64_T) \
+     || (ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
+ #   define BOOST_NO_INTRINSIC_INT64_T
+Index: /home/maik/workspace/boost/boost/archive/polymorphic_oarchive.hpp
+===================================================================
+--- /home/maik/workspace/boost/boost/archive/polymorphic_oarchive.hpp	(Revision 43953)
++++ /home/maik/workspace/boost/boost/archive/polymorphic_oarchive.hpp	(Arbeitskopie)
+@@ -18,6 +18,7 @@
+ 
+ #include <cstddef> // size_t
+ #include <string>
++#include <climits> // ULONG_MAX
+ 
+ #include <boost/config.hpp>
+ #if defined(BOOST_NO_STDC_NAMESPACE)
+@@ -37,6 +38,9 @@
+ // i.e. that its not a synonym for (unsigned) long
+ // if there is no 64 bit int or if its the same as a long
+ // we shouldn't define separate functions for int64 data types.
++#ifndef ULONG_MAX
++# error "ULONG_MAX is not defined"
++#endif
+ #if defined(BOOST_NO_INT64_T) \
+     || (ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
+ #   define BOOST_NO_INTRINSIC_INT64_T
diff --git a/abs/extra-testing/cairo/PKGBUILD b/abs/extra-testing/cairo/PKGBUILD
new file mode 100644
index 0000000..4bdb085
--- /dev/null
+++ b/abs/extra-testing/cairo/PKGBUILD
@@ -0,0 +1,24 @@
+# $Id: PKGBUILD 22041 2008-12-21 12:11:48Z jgc $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Contributor: Brice Carpentier <brice@daknet.org>
+
+pkgname=cairo
+pkgver=1.8.6
+pkgrel=1
+pkgdesc="Cairo vector graphics library"
+arch=(i686 x86_64)
+license=('LGPL' 'MPL')
+url="http://cairographics.org/"
+depends=('libpng>=1.2.33' 'libxrender' 'fontconfig>=2.6.0' 'pixman>=0.12.0' 'xcb-util>=0.3.2')
+makedepends=('pkgconfig')
+options=('!libtool')
+source=(http://cairographics.org/releases/${pkgname}-${pkgver}.tar.gz)
+md5sums=('4e64139ef6f668df24450f3b81dd0771')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./configure --prefix=/usr --sysconfdir=/etc \
+    --localstatedir=/var --enable-xcb --disable-static || return 1
+  make || return 1
+  make DESTDIR="${pkgdir}" install || return 1
+}
diff --git a/abs/extra-testing/docbook-xml/PKGBUILD b/abs/extra-testing/docbook-xml/PKGBUILD
new file mode 100644
index 0000000..feac080
--- /dev/null
+++ b/abs/extra-testing/docbook-xml/PKGBUILD
@@ -0,0 +1,268 @@
+# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
+# Maintainer: dorphell <dorphell@archlinux.org>
+# Committer: Judd Vinet <jvinet@zeroflux.org>
+
+pkgname=docbook-xml
+pkgver=4.5
+pkgrel=1
+pkgdesc="A widely used XML scheme for writing documentation and help"
+arch=(i686 x86_64)
+url="http://scrollkeeper.sourceforge.net/docbook.shtml"
+depends=('libxml2')
+makedepends=('unzip')
+install=docbook-xml.install
+source=(http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip
+        http://www.docbook.org/xml/4.4/docbook-xml-4.4.zip
+	http://www.docbook.org/xml/4.3/docbook-xml-4.3.zip
+	http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip
+	http://www.docbook.org/xml/4.1.2/docbkx412.zip)
+noextract=('docbook-xml-4.5.zip' 'docbook-xml-4.4.zip' 'docbook-xml-4.3.zip' 'docbook-xml-4.2.zip' 'docbkx412.zip')
+md5sums=('03083e288e87a7e829e437358da7ef9e'
+         'cbb04e9a700955d88c50962ef22c1634'
+         'ab200202b9e136a144db1e0864c45074'
+         '73fe50dfe74ca631c1602f558ed8961f'
+         '900d7609fb7e6d78901b357e4acfbc17')
+
+build() {
+  for ver in 4.2 4.3 4.4 4.5; do
+    mkdir docbook-xml-${ver}
+    pushd docbook-xml-${ver}
+    unzip ${startdir}/src/docbook-xml-${ver}.zip
+    mkdir -p ${startdir}/pkg/usr/share/xml/docbook/xml-dtd-${ver}
+    cp -af docbook.cat *.dtd ent/ *.mod \
+              ${startdir}/pkg/usr/share/xml/docbook/xml-dtd-${ver}/
+    popd
+  done
+  mkdir docbook-xml-4.1.2
+  pushd docbook-xml-4.1.2
+  unzip ${startdir}/src/docbkx412.zip
+  mkdir -p ${startdir}/pkg/usr/share/xml/docbook/xml-dtd-4.1.2
+  cp -af docbook.cat *.dtd ent/ *.mod \
+            ${startdir}/pkg/usr/share/xml/docbook/xml-dtd-4.1.2/
+  popd
+
+  mkdir -p ${startdir}/pkg/etc/xml
+  xmlcatalog --noout --create ${startdir}/pkg/etc/xml/docbook-xml
+
+  # V4.1.2
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook XML V4.1.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2/calstblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2/calstblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2/soextblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook XML Information Pool V4.1.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2/dbpoolx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.1.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2/dbhierx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.1.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2/dbgenent.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook XML Notations V4.1.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2/dbnotnx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook XML Character Entities V4.1.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2/dbcentx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "rewriteSystem" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.1.2" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "rewriteURI" \
+    "http://www.oasis-open.org/docbook/xml/4.1.2" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.1.2" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+
+  # V4.2
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook XML V4.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook CALS Table Model V4.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.2/calstblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.2/soextblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook Information Pool V4.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.2/dbpoolx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.2/dbhierx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook Additional General Entities V4.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.2/dbgenent.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook Notations V4.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.2/dbnotnx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook Character Entities V4.2//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.2/dbcentx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "rewriteSystem" \
+    "http://www.oasis-open.org/docbook/xml/4.2" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.2" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "rewriteURI" \
+    "http://www.oasis-open.org/docbook/xml/4.2" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.2" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+
+  # V4.3
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook XML V4.3//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook CALS Table Model V4.3//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.3/calstblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.3/soextblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook Information Pool V4.3//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.3/dbpoolx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.3//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.3/dbhierx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook Additional General Entities V4.3//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.3/dbgenent.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook Notations V4.3//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.3/dbnotnx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook Character Entities V4.3//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.3/dbcentx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "rewriteSystem" \
+    "http://www.oasis-open.org/docbook/xml/4.3" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.3" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "rewriteURI" \
+    "http://www.oasis-open.org/docbook/xml/4.3" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.3" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+
+  # V4.4
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook XML V4.4//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook CALS Table Model V4.4//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.4/calstblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.4//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.4/htmltblx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.4/soextblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook Information Pool V4.4//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.4/dbpoolx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.4//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.4/dbhierx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook Additional General Entities V4.4//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.4/dbgenent.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook Notations V4.4//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.4/dbnotnx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook Character Entities V4.4//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.4/dbcentx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "rewriteSystem" \
+    "http://www.oasis-open.org/docbook/xml/4.4" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.4" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "rewriteURI" \
+    "http://www.oasis-open.org/docbook/xml/4.4" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.4" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+
+  # V4.5
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook XML V4.5//EN" \
+    "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD DocBook XML CALS Table Model V4.5//EN" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.5/calstblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.5/soextblx.dtd" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.5/dbpoolx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.5//EN" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.5/dbhierx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.5/htmltblx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook XML Notations V4.5//EN" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.5/dbnotnx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook XML Character Entities V4.5//EN" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.5/dbcentx.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "public" \
+    "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.5//EN" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.5/dbgenent.mod" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "rewriteSystem" \
+    "http://www.oasis-open.org/docbook/xml/4.5" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.5" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+  xmlcatalog --noout --add "rewriteURI" \
+    "http://www.oasis-open.org/docbook/xml/4.5" \
+    "file:///usr/share/xml/docbook/xml-dtd-4.5" \
+    ${startdir}/pkg/etc/xml/docbook-xml
+}
diff --git a/abs/extra-testing/docbook-xml/docbook-xml.install b/abs/extra-testing/docbook-xml/docbook-xml.install
new file mode 100644
index 0000000..c62f65f
--- /dev/null
+++ b/abs/extra-testing/docbook-xml/docbook-xml.install
@@ -0,0 +1,46 @@
+post_install() {
+  if [ -e etc/xml/catalog.preserve ]; then
+    mv etc/xml/catalog.preserve etc/xml/catalog
+  elif [ ! -e etc/xml/catalog ]; then
+    xmlcatalog --noout --create etc/xml/catalog
+  fi
+  xmlcatalog --noout --add "delegatePublic" \
+    "-//OASIS//ENTITIES DocBook XML" \
+    "file:///etc/xml/docbook-xml" \
+    etc/xml/catalog
+  xmlcatalog --noout --add "delegatePublic" \
+    "-//OASIS//DTD DocBook XML" \
+    "file:///etc/xml/docbook-xml" \
+    etc/xml/catalog
+  xmlcatalog --noout --add "delegateSystem" \
+    "http://www.oasis-open.org/docbook/" \
+    "file:///etc/xml/docbook-xml" \
+    etc/xml/catalog
+  xmlcatalog --noout --add "delegateURI" \
+    "http://www.oasis-open.org/docbook/" \
+    "file:///etc/xml/docbook-xml" \
+    etc/xml/catalog
+}
+
+# arg 1:  the new package version
+# arg 2:  the old package version
+pre_upgrade() {
+  if [ $(vercmp $2 4.5) -lt 0 ]; then
+    xmlcatalog --del "file:///etc/xml/docbook" etc/xml/catalog > etc/xml/catalog.preserve
+  fi
+}
+
+post_upgrade() {
+  if [ $(vercmp $2 4.5) -ge 0 ]; then
+    post_remove
+  fi
+  post_install
+}
+
+post_remove() {
+  xmlcatalog --noout --del file:///etc/xml/docbook-xml etc/xml/catalog
+}
+
+op=$1
+shift
+$op $*
diff --git a/abs/extra-testing/docbook-xml/docbook.patch b/abs/extra-testing/docbook-xml/docbook.patch
new file mode 100644
index 0000000..1932f19
--- /dev/null
+++ b/abs/extra-testing/docbook-xml/docbook.patch
@@ -0,0 +1,226 @@
+diff -Naur docbookx412-orig/Makefile docbookx412/Makefile
+--- docbookx412-orig/Makefile	2002-02-16 11:08:29.000000000 -0800
++++ docbookx412/Makefile	2002-08-24 12:03:31.000000000 -0700
+@@ -1,7 +1,7 @@
+ SHELL=/bin/sh
+ VERSION=4.1.2-9
+-DESTDIR=/usr/share/xml/docbook/xml-dtd-$(VERSION)
+-CATALOG=/usr/share/xml/docbook/catalog
++DESTDIR=$(ROOT)/usr/share/xml/docbook/xml-dtd-$(VERSION)
++CATALOG=$(ROOT)/usr/share/xml/docbook/catalog
+ OPENJADEVER=1.3
+ 
+ all:
+@@ -24,7 +24,7 @@
+ 	#
+         #
+ 	# DocBook XML V4.1.2
+-	@./buildDocBookCatalog
++	@./buildDocBookCatalog $(ROOT)
+ 
+ uninstall:
+ 	#
+diff -Naur docbookx412-orig/buildDocBookCatalog docbookx412/buildDocBookCatalog
+--- docbookx412-orig/buildDocBookCatalog	2002-02-17 09:32:45.000000000 -0800
++++ docbookx412/buildDocBookCatalog	2002-08-24 12:15:23.000000000 -0700
+@@ -28,16 +28,20 @@
+ # Modifications made to Daniel Veillard's catalog build script at 
+ # http://xmlsoft.org/buildDocBookCatalog.
+ 
+-if [ ! -d /etc/xml -a -w /etc ]
++DESTDIR=$1
++echo "DESTDIR is $DESTDIR"
++mkdir $DESTDIR/etc
++
++if [ ! -d $DESTDIR/etc/xml -a -w $DESTDIR/etc ]
+ then
+     echo Directory /etc/xml missing creating it
+-    mkdir /etc/xml
+-    chmod 755 /etc/xml
++    mkdir $DESTDIR/etc/xml
++    chmod 755 $DESTDIR/etc/xml
+ fi
+-if [ -w /etc/xml ]
++if [ -w $DESTDIR/etc/xml ]
+ then
+-    ROOTCATALOG=/etc/xml/catalog
+-    CATALOG=/etc/xml/docbook
++    ROOTCATALOG=$DESTDIR/etc/xml/catalog
++    CATALOG=$DESTDIR/etc/xml/docbook
+ else
+     echo Unable to update root catalog /etc/xml/catalog
+     echo Using $HOME/xmlcatalog as the root catalog
+@@ -69,16 +73,7 @@
+ #
+ # find the prefix for DocBook DTD
+ #
+-found=`find /usr/share/xml -name docbookx.dtd`
+-if [ "$found" = "" ] ; then
+-    found=`find $HOME -name docbookx.dtd`
+-fi
+-if [ "$found" = "" ] ; then
+-    found=`find /usr/local -name docbookx.dtd`
+-fi
+-if [ "$found" = "" ] ; then
+-    found=`find /usr/share/sgml -name docbookx.dtd`
+-fi
++found=`find $DESTDIR/usr/share/xml -name docbookx.dtd`
+ if [ "$found" = "" ] ; then
+     echo could not locate docbookx.dtd for DocBook XML
+     exit 1
+@@ -105,49 +100,52 @@
+ #    exit 2
+ #fi
+ 
++fakedocbookdir=`echo $docbookdir | sed "s|^$DESTDIR||"`
++FAKECATALOG=`echo $CATALOG | sed "s|^$DESTDIR||"`
++
+ xmlcatalog --noout --add "public" \
+     "-//OASIS//ELEMENTS DocBook XML Information Pool V4.1.2//EN" \
+-    "file://$docbookdir/dbpoolx.mod" $CATALOG
++    "file://$fakedocbookdir/dbpoolx.mod" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "-//OASIS//DTD DocBook XML V4.1.2//EN" \
+-    "file://$docbookdir/docbookx.dtd" $CATALOG
++    "file://$fakedocbookdir/docbookx.dtd" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "-//OASIS//ENTITIES DocBook XML Character Entities V4.1.2//EN" \
+-    "file://$docbookdir/dbcentx.mod" $CATALOG
++    "file://$fakedocbookdir/dbcentx.mod" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "-//OASIS//ENTITIES DocBook XML Notations V4.1.2//EN" \
+-    "file://$docbookdir/dbnotnx.mod" $CATALOG
++    "file://$fakedocbookdir/dbnotnx.mod" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.1.2//EN" \
+-    "file://$docbookdir/dbgenent.mod" $CATALOG
++    "file://$fakedocbookdir/dbgenent.mod" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.1.2//EN" \
+-    "file://$docbookdir/dbhierx.mod" $CATALOG
++    "file://$fakedocbookdir/dbhierx.mod" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
+-    "file://$docbookdir/soextblx.dtd" $CATALOG
++    "file://$fakedocbookdir/soextblx.dtd" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN" \
+-    "file://$docbookdir/calstblx.dtd" $CATALOG
++    "file://$fakedocbookdir/calstblx.dtd" $CATALOG
+ xmlcatalog --noout --add "rewriteSystem" \
+     "http://www.oasis-open.org/docbook/xml/4.1.2" \
+-    "file://$docbookdir" $CATALOG
++    "file://$fakedocbookdir" $CATALOG
+ xmlcatalog --noout --add "rewriteURI" \
+     "http://www.oasis-open.org/docbook/xml/4.1.2" \
+-    "file://$docbookdir" $CATALOG
++    "file://$fakedocbookdir" $CATALOG
+ 
+ xmlcatalog --noout --add "delegatePublic" \
+     "-//OASIS//ENTITIES DocBook XML" \
+-    "file://$CATALOG" $ROOTCATALOG
++    "file://$FAKECATALOG" $ROOTCATALOG
+ xmlcatalog --noout --add "delegatePublic" \
+     "-//OASIS//DTD DocBook XML" \
+-    "file://$CATALOG" $ROOTCATALOG
++    "file://$FAKECATALOG" $ROOTCATALOG
+ xmlcatalog --noout --add "delegateSystem" \
+     "http://www.oasis-open.org/docbook/" \
+-    "file://$CATALOG" $ROOTCATALOG
++    "file://$FAKECATALOG" $ROOTCATALOG
+ xmlcatalog --noout --add "delegateURI" \
+     "http://www.oasis-open.org/docbook/" \
+-    "file://$CATALOG" $ROOTCATALOG
++    "file://$FAKECATALOG" $ROOTCATALOG
+ 
+ #
+ # find the prefix for ISO DocBook entities
+@@ -187,66 +185,68 @@
+ isodir=`dirname $entxml`
+ echo Found ISO DocBook entities in $isodir
+ 
++fakeisodir=`echo $isodir | sed "s|^$DESTDIR||"`
++
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Publishing//EN" \
+-    "file://$isodir/iso-pub.ent" $CATALOG
++    "file://$fakeisodir/iso-pub.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Greek Letters//EN" \
+-    "file://$isodir/iso-grk1.ent" $CATALOG
++    "file://$fakeisodir/iso-grk1.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Box and Line Drawing//EN" \
+-    "file://$isodir/iso-box.ent" $CATALOG
++    "file://$fakeisodir/iso-box.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Greek Symbols//EN" \
+-    "file://$isodir/iso-grk3.ent" $CATALOG
++    "file://$fakeisodir/iso-grk3.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN" \
+-    "file://$isodir/iso-amsn.ent" $CATALOG
++    "file://$fakeisodir/iso-amsn.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN" \
+-    "file://$isodir/iso-num.ent" $CATALOG
++    "file://$fakeisodir/iso-num.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN" \
+-    "file://$isodir/iso-grk4.ent" $CATALOG
++    "file://$fakeisodir/iso-grk4.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Diacritical Marks//EN" \
+-    "file://$isodir/iso-dia.ent" $CATALOG
++    "file://$fakeisodir/iso-dia.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Monotoniko Greek//EN" \
+-    "file://$isodir/iso-grk2.ent" $CATALOG
++    "file://$fakeisodir/iso-grk2.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN" \
+-    "file://$isodir/iso-amsa.ent" $CATALOG
++    "file://$fakeisodir/iso-amsa.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN" \
+-    "file://$isodir/iso-amso.ent" $CATALOG
++    "file://$fakeisodir/iso-amso.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Russian Cyrillic//EN" \
+-    "file://$isodir/iso-cyr1.ent" $CATALOG
++    "file://$fakeisodir/iso-cyr1.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES General Technical//EN" \
+-    "file://$isodir/iso-tech.ent" $CATALOG
++    "file://$fakeisodir/iso-tech.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN" \
+-    "file://$isodir/iso-amsc.ent" $CATALOG
++    "file://$fakeisodir/iso-amsc.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Added Latin 1//EN" \
+-    "file://$isodir/iso-lat1.ent" $CATALOG
++    "file://$fakeisodir/iso-lat1.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN" \
+-    "file://$isodir/iso-amsb.ent" $CATALOG
++    "file://$fakeisodir/iso-amsb.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Added Latin 2//EN" \
+-    "file://$isodir/iso-lat2.ent" $CATALOG
++    "file://$fakeisodir/iso-lat2.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN" \
+-    "file://$isodir/iso-amsr.ent" $CATALOG
++    "file://$fakeisodir/iso-amsr.ent" $CATALOG
+ xmlcatalog --noout --add "public" \
+     "ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN" \
+-    "file://$isodir/iso-cyr2.ent" $CATALOG
++    "file://$fakeisodir/iso-cyr2.ent" $CATALOG
+ 
+ xmlcatalog --noout --add "delegatePublic" \
+     "ISO 8879:1986" \
+-    "file://$CATALOG" $ROOTCATALOG
++    "file://$FAKECATALOG" $ROOTCATALOG
+ #
+ #
diff --git a/abs/extra-testing/docbook-xsl/PKGBUILD b/abs/extra-testing/docbook-xsl/PKGBUILD
new file mode 100644
index 0000000..cedcfa8
--- /dev/null
+++ b/abs/extra-testing/docbook-xsl/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 20950 2008-12-08 05:32:07Z allan $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Contributer: Sean Middleditch <elanthis@awesomeplay.com>
+
+pkgname=docbook-xsl
+pkgver=1.74.0
+pkgrel=1
+pkgdesc="XML stylesheets for Docbook-xml transformations."
+arch=(i686 x86_64)
+license=('custom')
+url="http://scrollkeeper.sourceforge.net/docbook.shtml"
+depends=('libxml2' 'libxslt' 'docbook-xml')
+source=(http://downloads.sourceforge.net/sourceforge/docbook/docbook-xsl-${pkgver}.tar.bz2)
+install=docbook-xsl.install
+md5sums=('a56b598decd006d5d39e4544c0bfbc6a')
+
+build() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+  mkdir -p ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/common
+  install -m644 common/*.{xml,xsl,dtd,ent} ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/common/
+
+  mkdir -p ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/params
+  install -m644 params/*.xml ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/params/
+
+  for fn in fo highlighting html roundtrip; do
+    mkdir -p ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/${fn}
+    install -m644 ${fn}/*.{xml,xsl} ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/${fn}/
+  done
+  for fn in eclipse htmlhelp javahelp lib manpages profiling template website xhtml; do
+    mkdir -p ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/${fn}
+    install -m644 ${fn}/*.xsl ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/${fn}/
+  done
+  mkdir -p ${pkgdir}/etc/xml
+  install -m644 VERSION ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/
+
+  install -m644 -D COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING
+}
diff --git a/abs/extra-testing/docbook-xsl/docbook-xsl.install b/abs/extra-testing/docbook-xsl/docbook-xsl.install
new file mode 100644
index 0000000..a8ea3e7
--- /dev/null
+++ b/abs/extra-testing/docbook-xsl/docbook-xsl.install
@@ -0,0 +1,47 @@
+post_install() {
+  if [ ! -f /etc/xml/catalog ]; then
+    xmlcatalog --noout --create /etc/xml/catalog
+  fi
+  _NEW=`echo $1 | sed 's|\(.*\)\-.*|\1|'`
+
+  xmlcatalog --noout --add "rewriteSystem" \
+    "http://docbook.sourceforge.net/release/xsl/${_NEW}" \
+    "/usr/share/xml/docbook/xsl-stylesheets-${_NEW}" \
+    etc/xml/catalog
+
+  xmlcatalog --noout --add "rewriteURI" \
+    "http://docbook.sourceforge.net/release/xsl/${_NEW}" \
+    "/usr/share/xml/docbook/xsl-stylesheets-${_NEW}" \
+    etc/xml/catalog &&
+
+  xmlcatalog --noout --add "rewriteSystem" \
+    "http://docbook.sourceforge.net/release/xsl/current" \
+    "/usr/share/xml/docbook/xsl-stylesheets-${_NEW}" \
+    etc/xml/catalog &&
+
+  xmlcatalog --noout --add "rewriteURI" \
+    "http://docbook.sourceforge.net/release/xsl/current" \
+    "/usr/share/xml/docbook/xsl-stylesheets-${_NEW}" \
+    etc/xml/catalog
+}
+
+post_upgrade() {
+  post_remove $2
+  post_install $1
+}
+
+post_remove() {
+  _OLD=`echo $1 | sed 's|\(.*\)\-.*|\1|'`
+  xmlcatalog --noout --del "/usr/share/xml/docbook/xsl-stylesheets-${_OLD}" etc/xml/catalog
+
+  if [ $(vercmp $1 1.72.0-3) -lt 0 ]; then
+    xmlcatalog --noout --del "/usr/share/xml/docbook" etc/xml/catalog
+    xmlcatalog --noout --del "file:///etc/xml/docbook" etc/xml/catalog
+  fi
+}
+
+op=$1
+shift
+
+$op $*
+
diff --git a/abs/extra-testing/gconf/PKGBUILD b/abs/extra-testing/gconf/PKGBUILD
index 001c9e2..0fc2fb0 100644
--- a/abs/extra-testing/gconf/PKGBUILD
+++ b/abs/extra-testing/gconf/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 13038 2008-09-25 19:45:37Z jgc $
+# $Id: PKGBUILD 22335 2008-12-26 13:57:57Z jgc $
 # Maintainer:  Jan de Groot <jan@archlinux.org>
 
 pkgname=gconf
 pkgver=2.24.0
-pkgrel=1
+pkgrel=2
 pkgdesc="A configuration database system"
 arch=(i686 x86_64)
 license=('LGPL')
@@ -18,22 +18,22 @@ source=(http://ftp.gnome.org/pub/gnome/sources/GConf/2.24/GConf-${pkgver}.tar.bz
 	gconf-reload.patch)
 md5sums=('4971d96f5ba94fe4a69396267bd5afe8'
          '1412bafb06f7d8a9601c8f1c4d72cc06'
-         '0a43077786fe85ee10002b753752379a'
+         'b745f04b4121d8724c002b14a4c110b6'
          'cfcc8e15be7b8a48de4aa34336ff6090')
 
 build() {
-  cd ${startdir}/src/GConf-${pkgver}
-  patch -Np1 -i ${startdir}/src/gconf-reload.patch || return 1
+  cd "${srcdir}/GConf-${pkgver}"
+  patch -Np1 -i "${srcdir}/gconf-reload.patch" || return 1
   libtoolize --force --copy || return 1
   aclocal || return 1
   autoconf || return 1
   automake --add-missing || return 1
   ./configure --prefix=/usr --sysconfdir=/etc \
               --localstatedir=/var --libexecdir=/usr/lib/GConf \
-	      --disable-static || return 1
+	      --disable-static --enable-defaults-service || return 1
   make pkglibdir=/usr/lib/GConf || return 1
-  make DESTDIR=${startdir}/pkg install || return 1
-  install -m755 ${startdir}/src/gconf-merge-schema ${startdir}/pkg/usr/bin/ || return 1
-  install -d -m755 ${startdir}/pkg/usr/sbin
-  install -m755 ${startdir}/src/gconfpkg ${startdir}/pkg/usr/sbin/ || return 1
+  make DESTDIR="${pkgdir}" install || return 1
+  install -m755 "${srcdir}/gconf-merge-schema" "${pkgdir}/usr/bin/" || return 1
+  install -d -m755 "${pkgdir}/usr/sbin"
+  install -m755 "${srcdir}/gconfpkg" "${pkgdir}/usr/sbin/" || return 1
 }
diff --git a/abs/extra-testing/gconf/gconfpkg b/abs/extra-testing/gconf/gconfpkg
index a1ee6df..72021e4 100755
--- a/abs/extra-testing/gconf/gconfpkg
+++ b/abs/extra-testing/gconf/gconfpkg
@@ -22,14 +22,14 @@ install() {
 
 uninstall() {
   if [ -f /usr/share/gconf/schemas/${pkgname}.schemas ]; then
-    schemas=(/usr/share/gconf/schemas/${pkgname}.schemas)
+    schemas=/usr/share/gconf/schemas/${pkgname}.schemas
   elif [ -f /opt/gnome/share/gconf/schemas/${pkgname}.schemas ]; then
-    schemas=(/opt/gnome/share/gconf/schemas/${pkgname}.schemas)
+    schemas=/opt/gnome/share/gconf/schemas/${pkgname}.schemas
   else
-    schemas=(`pacman -Ql ${pkgname} | grep 'gconf/schemas/.*schemas$' | awk '{ print $2 }'`)
+    schemas=`pacman -Ql ${pkgname} | grep 'gconf/schemas/.*schemas$' | awk '{ print $2 }'`
   fi
   GCONF_CONFIG_SOURCE=`/usr/bin/gconftool-2 --get-default-source` \
-      /usr/bin/gconftool-2 --makefile-uninstall-rule ${schemas[@]} >/dev/null
+      /usr/bin/gconftool-2 --makefile-uninstall-rule ${schemas} >/dev/null
 }
 
 if [ -z "$2" ]; then
diff --git a/abs/extra-testing/gnome-python-extras/PKGBUILD b/abs/extra-testing/gnome-python-extras/PKGBUILD
new file mode 100644
index 0000000..d169b8f
--- /dev/null
+++ b/abs/extra-testing/gnome-python-extras/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 16741 2008-10-22 03:06:30Z allan $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=gnome-python-extras
+pkgver=2.19.1
+pkgrel=3
+pkgdesc="Gnome Python interfaces for libraries not part of the core platform"
+arch=(i686 x86_64)
+license=('GPL' 'LGPL')
+depends=('gnome-python>=2.22.1')
+makedepends=('libgtkhtml' 'gtkspell' 'gdl' 'xulrunner>=1.9' 'libgksu' 'pkgconfig')
+options=('!libtool')
+source=(http://ftp.gnome.org/pub/gnome/sources/gnome-python-extras/2.19/gnome-python-extras-${pkgver}.tar.bz2
+	gnome-python-extras-2.19.1-pkg-config.patch
+	gnome-python-extras-2.19.1-xulrunner.patch)
+url="http://www.daa.com.au/~james/pygtk/"
+md5sums=('08896c63d71ce44d20fafbaf9c0edc78'
+         'be993cc1e60c090c58db8317a1862213'
+         '73657335e522f361d08ccc4899d279d6')
+
+build() {
+  cd ${startdir}/src/gnome-python-extras-${pkgver}
+  patch -Np1 -i ${srcdir}/gnome-python-extras-2.19.1-pkg-config.patch || return 1
+  patch -Np1 -i ${srcdir}/gnome-python-extras-2.19.1-xulrunner.patch || return 1
+  sed -i "s|#include <gdl/gdl-icons.h>||" gdl/gdl.override || return 1
+  ./configure --prefix=/usr --with-gtkmozembed=xulrunner || return 1
+  make MOZILLA_HOME=/usr/lib/xulrunner-1.9 || return 1 
+  make DESTDIR=${startdir}/pkg install || return 1
+}
diff --git a/abs/extra-testing/gnome-python-extras/gnome-python-extras-2.19.1-pkg-config.patch b/abs/extra-testing/gnome-python-extras/gnome-python-extras-2.19.1-pkg-config.patch
new file mode 100644
index 0000000..77fd0a4
--- /dev/null
+++ b/abs/extra-testing/gnome-python-extras/gnome-python-extras-2.19.1-pkg-config.patch
@@ -0,0 +1,61 @@
+diff -up gnome-python-extras-2.19.1/configure.pkg-config gnome-python-extras-2.19.1/configure
+--- gnome-python-extras-2.19.1/configure.pkg-config	2008-01-12 21:07:56.000000000 -0500
++++ gnome-python-extras-2.19.1/configure	2008-01-12 21:09:49.000000000 -0500
+@@ -22096,14 +22096,14 @@ if test -n "$PKG_CONFIG"; then
+         pkg_cv_GTKMOZEMBED_CFLAGS="$GTKMOZEMBED_CFLAGS"
+     else
+         if test -n "$PKG_CONFIG" && \
+-    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$mozpackage-gtkmozembed >= \$mozpackage_required_version,
++    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\mozilla-gtkmozembed >= \$mozpackage_required_version,
+                                 gtk+-2.0                >= 2.4.0\"") >&5
+-  ($PKG_CONFIG --exists --print-errors "$mozpackage-gtkmozembed >= $mozpackage_required_version,
++  ($PKG_CONFIG --exists --print-errors "mozilla-gtkmozembed >= $mozpackage_required_version,
+                                 gtk+-2.0                >= 2.4.0") 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); }; then
+-  pkg_cv_GTKMOZEMBED_CFLAGS=`$PKG_CONFIG --cflags "$mozpackage-gtkmozembed >= $mozpackage_required_version,
++  pkg_cv_GTKMOZEMBED_CFLAGS=`$PKG_CONFIG --cflags "mozilla-gtkmozembed >= $mozpackage_required_version,
+                                 gtk+-2.0                >= 2.4.0" 2>/dev/null`
+ else
+   pkg_failed=yes
+@@ -22117,14 +22117,14 @@ if test -n "$PKG_CONFIG"; then
+         pkg_cv_GTKMOZEMBED_LIBS="$GTKMOZEMBED_LIBS"
+     else
+         if test -n "$PKG_CONFIG" && \
+-    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$mozpackage-gtkmozembed >= \$mozpackage_required_version,
++    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\mozilla-gtkmozembed >= \$mozpackage_required_version,
+                                 gtk+-2.0                >= 2.4.0\"") >&5
+-  ($PKG_CONFIG --exists --print-errors "$mozpackage-gtkmozembed >= $mozpackage_required_version,
++  ($PKG_CONFIG --exists --print-errors "mozilla-gtkmozembed >= $mozpackage_required_version,
+                                 gtk+-2.0                >= 2.4.0") 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); }; then
+-  pkg_cv_GTKMOZEMBED_LIBS=`$PKG_CONFIG --libs "$mozpackage-gtkmozembed >= $mozpackage_required_version,
++  pkg_cv_GTKMOZEMBED_LIBS=`$PKG_CONFIG --libs "mozilla-gtkmozembed >= $mozpackage_required_version,
+                                 gtk+-2.0                >= 2.4.0" 2>/dev/null`
+ else
+   pkg_failed=yes
+@@ -22144,10 +22144,10 @@ else
+         _pkg_short_errors_supported=no
+ fi
+         if test $_pkg_short_errors_supported = yes; then
+-	        GTKMOZEMBED_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$mozpackage-gtkmozembed >= $mozpackage_required_version,
++	        GTKMOZEMBED_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "mozilla-gtkmozembed >= $mozpackage_required_version,
+                                 gtk+-2.0                >= 2.4.0"`
+         else
+-	        GTKMOZEMBED_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$mozpackage-gtkmozembed >= $mozpackage_required_version,
++	        GTKMOZEMBED_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "mozilla-gtkmozembed >= $mozpackage_required_version,
+                                 gtk+-2.0                >= 2.4.0"`
+         fi
+ 	# Put the nasty error message in config.log where it belongs
+@@ -22179,7 +22179,7 @@ fi
+ if test -n "$export_dynamic"; then
+   GTKMOZEMBED_LIBS=`echo $GTKMOZEMBED_LIBS | sed -e "s/$export_dynamic//"`
+ fi
+-MOZILLA_HOME="`$PKG_CONFIG --variable=libdir $mozpackage-gtkmozembed`"
++MOZILLA_HOME="`$PKG_CONFIG --variable=libdir mozilla-gtkmozembed`"
+ 
+ 
+ 
diff --git a/abs/extra-testing/gnome-python-extras/gnome-python-extras-2.19.1-xulrunner.patch b/abs/extra-testing/gnome-python-extras/gnome-python-extras-2.19.1-xulrunner.patch
new file mode 100644
index 0000000..d2fa26e
--- /dev/null
+++ b/abs/extra-testing/gnome-python-extras/gnome-python-extras-2.19.1-xulrunner.patch
@@ -0,0 +1,22 @@
+diff -up gnome-python-extras-2.19.1/docs/gtkmozembed/html/class-gtkmozembed.html.old gnome-python-extras-2.19.1/docs/gtkmozembed/html/class-gtkmozembed.html
+diff -up gnome-python-extras-2.19.1/docs/gtkmozembed/html/pygtkmozembed.devhelp.old gnome-python-extras-2.19.1/docs/gtkmozembed/html/pygtkmozembed.devhelp
+diff -up gnome-python-extras-2.19.1/docs/gtkmozembed/gtkmozembed-gtkmozembed.xml.old gnome-python-extras-2.19.1/docs/gtkmozembed/gtkmozembed-gtkmozembed.xml
+diff -up gnome-python-extras-2.19.1/gtkmozembed/gtkmozembed.override.old gnome-python-extras-2.19.1/gtkmozembed/gtkmozembed.override
+diff -up gnome-python-extras-2.19.1/gtkmozembed/gtkmozembed.defs.old gnome-python-extras-2.19.1/gtkmozembed/gtkmozembed.defs
+--- gnome-python-extras-2.19.1/gtkmozembed/gtkmozembed.defs.old	2007-06-05 16:52:30.000000000 +0200
++++ gnome-python-extras-2.19.1/gtkmozembed/gtkmozembed.defs	2007-11-27 12:54:42.000000000 +0100
+@@ -123,6 +123,14 @@
+   )
+ )
+ 
++(define-function set_path
++  (c-name "gtk_moz_embed_set_path")
++  (return-type "none")
++  (parameters
++    '("char*" "aPath")
++  )
++)
++
+ (define-function gtk_moz_embed_set_profile_path
+   (c-name "gtk_moz_embed_set_profile_path_deprecated")
+   (return-type "none")
diff --git a/abs/extra-testing/gnome-python/PKGBUILD b/abs/extra-testing/gnome-python/PKGBUILD
new file mode 100644
index 0000000..d9e0045
--- /dev/null
+++ b/abs/extra-testing/gnome-python/PKGBUILD
@@ -0,0 +1,24 @@
+# $Id: PKGBUILD 16730 2008-10-22 02:56:32Z allan $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Contributor: Sarah Hay <sarah@archlinux.org>
+
+pkgname=gnome-python
+pkgver=2.22.3
+pkgrel=3
+pkgdesc="gnome-python is a set of interfaces to gnome-libs."
+arch=(i686 x86_64)
+license=('LGPL')
+depends=('pygtk>=2.13.0' 'pyorbit>=2.24.0' 'libgnomeui>=2.24.0')
+makedepends=('pkgconfig')
+groups=('gnome')
+options=('!libtool')
+url="http://www.pygtk.org/"
+source=(http://ftp.gnome.org/pub/gnome/sources/gnome-python/2.22/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('ab12d94954a57de39b25eb7903d8429c')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./waf configure --prefix=/usr || return 1
+  ./waf build ${MAKEFLAGS} || return 1
+  ./waf install --destdir="${pkgdir}" || return 1
+}
diff --git a/abs/extra-testing/gnome-vfs/PKGBUILD b/abs/extra-testing/gnome-vfs/PKGBUILD
new file mode 100644
index 0000000..dc848be
--- /dev/null
+++ b/abs/extra-testing/gnome-vfs/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 20541 2008-12-05 16:30:04Z allan $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=gnome-vfs
+pkgver=2.24.0
+pkgrel=2
+pkgdesc="The GNOME Virtual File System"
+arch=(i686 x86_64)
+license=('LGPL')
+depends=('fam' 'gconf>=2.24' 'hal>=0.5.11' 'bzip2' 'avahi>=0.6.23' 'smbclient>=3.0.31' 'gnome-mime-data>=2.18.0-2' 'heimdal>=1.2' 'gnutls>=2.4.1')
+makedepends=('perlxml' 'pkgconfig' 'intltool')
+options=('!libtool' '!emptydirs')
+conflicts=(gnome-vfs-samba)
+provides=(gnome-vfs-samba)
+replaces=(gnome-vfs-samba gnome-vfs-extras)
+url="http://www.gnome.org"
+install=gnome-vfs.install
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.24/gnome-vfs-${pkgver}.tar.bz2
+	hal-show-volume-names.patch)
+md5sums=('870ee8861bfcaeb852934e95657ef83e' '109d07aa1dc8cb6523c47c4984047dce')
+
+build() {
+  cd ${startdir}/src/${pkgname}-${pkgver}
+  #Archlinux patch (b.g.o #321498)
+  patch -Np1 -i ${startdir}/src/hal-show-volume-names.patch || return 1
+
+  ./configure --prefix=/usr --sysconfdir=/etc \
+        --localstatedir=/var --disable-static \
+	--libexecdir=/usr/lib/gnome-vfs-2.0 \
+  	--enable-samba --enable-hal \
+        --enable-avahi --disable-howl \
+	--disable-openssl --enable-gnutls
+  make || return 1
+  make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR=${startdir}/pkg install || return 1
+
+  mkdir -p ${startdir}/pkg/usr/share/gconf/schemas
+  gconf-merge-schema ${startdir}/pkg/usr/share/gconf/schemas/${pkgname}.schemas ${startdir}/pkg/etc/gconf/schemas/*.schemas
+  rm -f ${startdir}/pkg/etc/gconf/schemas/*.schemas
+}
diff --git a/abs/extra-testing/gnome-vfs/gnome-vfs.install b/abs/extra-testing/gnome-vfs/gnome-vfs.install
new file mode 100644
index 0000000..0a77ef7
--- /dev/null
+++ b/abs/extra-testing/gnome-vfs/gnome-vfs.install
@@ -0,0 +1,22 @@
+pkgname=gnome-vfs
+
+post_install() {
+  usr/sbin/gconfpkg --install ${pkgname}
+}
+
+pre_upgrade() {
+  pre_remove $1
+}
+
+post_upgrade() {
+  post_install $1
+}
+
+pre_remove() {
+  usr/sbin/gconfpkg --uninstall ${pkgname}
+}
+
+op=$1
+shift
+
+$op $*
diff --git a/abs/extra-testing/gnome-vfs/hal-show-volume-names.patch b/abs/extra-testing/gnome-vfs/hal-show-volume-names.patch
new file mode 100644
index 0000000..5b8420c
--- /dev/null
+++ b/abs/extra-testing/gnome-vfs/hal-show-volume-names.patch
@@ -0,0 +1,46 @@
+Index: gnome-vfs-hal-mounts.c
+===================================================================
+RCS file: /cvs/gnome/gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c,v
+retrieving revision 1.33
+diff -u -p -r1.33 gnome-vfs-hal-mounts.c
+--- gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c	7 Jul 2006 15:56:57 -0000	1.33
++++ gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c	14 Jul 2006 18:48:51 -0000
+@@ -877,6 +877,7 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa
+ 	GnomeVFSDrive *drive;
+ 	GnomeVFSVolumeMonitor *volume_monitor;
+ 	char *name;
++  char *icon;
+ 	gboolean allowed_by_policy;
+ 	const char *backing_udi;
+ 
+@@ -975,6 +976,8 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa
+ 	 */
+ 	drive = _gnome_vfs_volume_monitor_find_drive_by_hal_udi (volume_monitor, libhal_volume_get_udi (hal_volume));
+ 	if (drive == NULL && allowed_by_policy) {
++    name = _hal_drive_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume);
++    icon = _hal_drive_policy_get_icon (volume_monitor_daemon, hal_drive, hal_volume);
+ 		drive = g_object_new (GNOME_VFS_TYPE_DRIVE, NULL);
+ 		if (libhal_volume_disc_has_audio (hal_volume)) {
+ 			drive->priv->activation_uri = g_strdup_printf ("cdda://%s", 
+@@ -989,16 +992,16 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa
+ 			 * So just set it to the empty string
+ 			 */
+ 			drive->priv->activation_uri = g_strdup ("");
++      g_free (name);
++      name = _hal_volume_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume);
++      g_free (icon);
++      icon = _hal_volume_policy_get_icon (volume_monitor_daemon, hal_drive, hal_volume);
+ 		}
+ 		drive->priv->is_connected = TRUE;
+ 		drive->priv->device_path = g_strdup (libhal_volume_get_device_file (hal_volume));
+ 		drive->priv->device_type = _hal_get_gnome_vfs_device_type (hal_drive);
+ 	
+-		/* TODO: could add an icon of a drive with media in it since this codepath only
+-		 * handles drives with media in them
+-		 */
+-		drive->priv->icon = _hal_drive_policy_get_icon (volume_monitor_daemon, hal_drive, NULL);
+-		name = _hal_drive_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume);
++    drive->priv->icon = icon;
+ 		drive->priv->display_name = _gnome_vfs_volume_monitor_uniquify_drive_name (volume_monitor, name);
+ 		g_free (name);
+ 		name = g_utf8_casefold (drive->priv->display_name, -1);
diff --git a/abs/extra-testing/gperf/PKGBUILD b/abs/extra-testing/gperf/PKGBUILD
new file mode 100644
index 0000000..0521eb9
--- /dev/null
+++ b/abs/extra-testing/gperf/PKGBUILD
@@ -0,0 +1,20 @@
+#$Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
+#Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=gperf
+pkgver=3.0.3
+pkgrel=1
+pkgdesc="Perfect hash function generator."
+arch=('x86_64' 'i686')
+url="http://www.gnu.org/software/gperf/"
+license=('GPL')
+depends=('gcc-libs')
+source=(ftp://ftp.gnu.org/gnu/gperf/${pkgname}-${pkgver}.tar.gz)
+md5sums=('cc20e58975a38075440423c8fb85fd00')
+
+build() {
+  cd $startdir/src/${pkgname}-${pkgver}
+  ./configure --prefix=/usr
+  make || return 1
+  make DESTDIR=${startdir}/pkg install
+}
diff --git a/abs/extra-testing/gtk2/PKGBUILD b/abs/extra-testing/gtk2/PKGBUILD
new file mode 100644
index 0000000..d119d56
--- /dev/null
+++ b/abs/extra-testing/gtk2/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 19648 2008-11-28 20:15:22Z jgc $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=gtk2
+pkgver=2.14.5
+pkgrel=1
+pkgdesc="The GTK+ Toolkit (v2)"
+arch=(i686 x86_64)
+url="http://www.gtk.org/"
+install=gtk2.install
+depends=('atk>=1.24.0' 'pango>=1.22.3' 'libxcursor' 'libxinerama' 'libxrandr>=1.2.1' 'libxi' 'libcups>=1.3.9' 'libxcomposite' 'libxdamage' 'heimdal>=1.2' 'gnutls>=2.4.1')
+makedepends=('pkgconfig')
+replaces=('gtkprint-cups' 'gail')
+conflicts=('gtkprint-cups' 'gail')
+provides=('gail=1.22.3')
+options=('!libtool' '!docs')
+backup=(etc/gtk-2.0/gtkrc)
+license=('LGPL')
+source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/2.14/gtk+-${pkgver}.tar.bz2
+	gtkclipboard-check.patch)
+md5sums=('1b1b5d7ab5a25e84682cb27ee4808a40'
+         '4025d3c15d6c6f73a032f403ffd4ff1c')
+
+build() {
+  cd ${startdir}/src/gtk+-${pkgver}
+  # Workaround patch for flash
+  patch -Np1 -i ${startdir}/src/gtkclipboard-check.patch || return 1
+
+  ./configure --prefix=/usr --sysconfdir=/etc \
+              --localstatedir=/var --with-xinput=yes \
+	      --without-libjasper \
+	      --with-included-loaders=png || return 1
+  make || return 1
+  make DESTDIR=${startdir}/pkg install || return 1
+
+  echo 'gtk-fallback-icon-theme = "gnome"' > ${startdir}/pkg/etc/gtk-2.0/gtkrc || return 1
+}
diff --git a/abs/extra-testing/gtk2/gtk2.install b/abs/extra-testing/gtk2/gtk2.install
new file mode 100644
index 0000000..6d415ad
--- /dev/null
+++ b/abs/extra-testing/gtk2/gtk2.install
@@ -0,0 +1,13 @@
+post_install() {
+  usr/bin/gtk-query-immodules-2.0 > etc/gtk-2.0/gtk.immodules
+  usr/bin/gdk-pixbuf-query-loaders > etc/gtk-2.0/gdk-pixbuf.loaders
+}
+
+post_upgrade() {
+  post_install
+}
+
+pre_remove() {
+  rm -f etc/gtk-2.0/gtk.immodules &>/dev/null
+  rm -f etc/gtk-2.0/gdk-pixbuf.loaders &>/dev/null
+}
diff --git a/abs/extra-testing/gtk2/gtkclipboard-check.patch b/abs/extra-testing/gtk2/gtkclipboard-check.patch
new file mode 100644
index 0000000..48894fb
--- /dev/null
+++ b/abs/extra-testing/gtk2/gtkclipboard-check.patch
@@ -0,0 +1,11 @@
+--- gtk+-2.11.6/gtk/gtkclipboard.c.orig	2007-08-18 13:48:22.000000000 +0000
++++ gtk+-2.11.6/gtk/gtkclipboard.c	2007-08-18 13:49:08.000000000 +0000
+@@ -287,6 +287,8 @@
+ gtk_clipboard_get_for_display (GdkDisplay *display, 
+ 			       GdkAtom     selection)
+ {
++  if (display == NULL)
++	  return NULL;
+   g_return_val_if_fail (GDK_IS_DISPLAY (display), NULL);
+   g_return_val_if_fail (!display->closed, NULL);
+ 
diff --git a/abs/extra-testing/libbonoboui/PKGBUILD b/abs/extra-testing/libbonoboui/PKGBUILD
new file mode 100644
index 0000000..8ca58fc
--- /dev/null
+++ b/abs/extra-testing/libbonoboui/PKGBUILD
@@ -0,0 +1,24 @@
+# $Id: PKGBUILD 13050 2008-09-25 19:57:07Z jgc $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=libbonoboui
+pkgver=2.24.0
+pkgrel=1
+pkgdesc="User Interface library for Bonobo"
+arch=(i686 x86_64)
+license=('GPL' 'LGPL')
+depends=('libgnomecanvas>=2.20.1.1' 'libgnome>=2.24.1')
+makedepends=('perlxml' 'pkgconfig')
+options=('!libtool' '!emptydirs')
+url="http://www.gnome.org"
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.24/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('2076638f9aa9565c12b2bc264ecc4f18')
+
+build() {
+  cd ${startdir}/src/${pkgname}-${pkgver}
+  ./configure --prefix=/usr --sysconfdir=/etc \
+              --localstatedir=/var --disable-static || return 1
+  make || return 1
+  make DESTDIR=${startdir}/pkg install || return 1
+  rm -f ${startdir}/pkg/usr/share/applications/bonobo-browser.desktop
+}
diff --git a/abs/extra-testing/libcups/PKGBUILD b/abs/extra-testing/libcups/PKGBUILD
new file mode 100644
index 0000000..fbdac67
--- /dev/null
+++ b/abs/extra-testing/libcups/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 20496 2008-12-05 11:29:11Z allan $
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+
+pkgname=libcups
+pkgver=1.3.9
+pkgrel=2
+pkgdesc="The CUPS Printing System"
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://www.cups.org/"
+depends=('gnutls>=2.4.1' 'libtiff' 'libpng' 'heimdal>=1.2')
+source=(ftp://ftp.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2)
+md5sums=('cf63f451c356e6cabb08972d4d11c365')
+
+build() {
+  cd ${srcdir}/cups-${pkgver}
+  ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+     --with-logdir=/var/log/cups -with-docdir=/usr/share/cups/doc \
+     --with-cups-user=daemon --with-cups-group=lp --enable-ssl=yes \
+     --disable-ldap --disable-dbus --libdir=/usr/lib
+
+  for dir in cups filter; do
+    pushd ${dir}
+    make
+    make BUILDROOT=${pkgdir} install
+    popd
+  done
+
+  mkdir -p ${startdir}/pkg/usr/bin
+  install -m755 cups-config ${startdir}/pkg/usr/bin/cups-config
+  #Remove filters
+  rm -rf ${startdir}/pkg/usr/lib/cups
+}
diff --git a/abs/extra-testing/libglade/PKGBUILD b/abs/extra-testing/libglade/PKGBUILD
new file mode 100644
index 0000000..c0bfa29
--- /dev/null
+++ b/abs/extra-testing/libglade/PKGBUILD
@@ -0,0 +1,26 @@
+# $Id: PKGBUILD 13455 2008-09-27 11:03:58Z jgc $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=libglade
+pkgver=2.6.3
+pkgrel=1
+pkgdesc="Allows you to load glade interface files in a program at runtime"
+arch=(i686 x86_64)
+license=('LGPL')
+depends=('gtk2>=2.14.1' 'libxml2>=2.6.32')
+makedepends=('python' 'pkgconfig')
+options=('!libtool')
+install=glade.install
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.6/${pkgname}-${pkgver}.tar.bz2
+	libglade-2.0.1-nowarning.patch)
+url="http://www.gnome.org"
+md5sums=('1c359860b1a0f369f0b6e3f96fd985c2' '4f879c0ce550004905aa0fb24f25c353')
+
+build() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+  patch -Np1 -i ${srcdir}/libglade-2.0.1-nowarning.patch || return 1
+  ./configure --sysconfdir=/etc --prefix=/usr --localstatedir=/var || return 1
+  make || return 1
+  make DESTDIR=${pkgdir} install || return 1
+  install -m755 libglade-convert ${pkgdir}/usr/bin/libglade-convert || return 1
+}
diff --git a/abs/extra-testing/libglade/glade.install b/abs/extra-testing/libglade/glade.install
new file mode 100644
index 0000000..a7f05c5
--- /dev/null
+++ b/abs/extra-testing/libglade/glade.install
@@ -0,0 +1,25 @@
+post_install() {
+  if [ ! -d etc/xml ]; then
+    mkdir -p etc/xml
+  fi
+  if [ ! -e etc/xml/catalog ]; then
+    xmlcatalog --noout --create etc/xml/catalog
+  fi
+  xmlcatalog --noout --add "system" \
+    "http://glade.gnome.org/glade-2.0.dtd" \
+    /usr/share/xml/libglade/glade-2.0.dtd etc/xml/catalog
+}
+
+pre_upgrade() {
+  post_remove
+}
+
+post_upgrade() {
+  post_install $1
+}
+
+# arg 1:  the old package version
+post_remove() {
+  xmlcatalog --noout --del \
+    /usr/share/xml/libglade/glade-2.0.dtd etc/xml/catalog
+}
diff --git a/abs/extra-testing/libglade/libglade-2.0.1-nowarning.patch b/abs/extra-testing/libglade/libglade-2.0.1-nowarning.patch
new file mode 100644
index 0000000..fd07121
--- /dev/null
+++ b/abs/extra-testing/libglade/libglade-2.0.1-nowarning.patch
@@ -0,0 +1,39 @@
+--- libglade-2.0.1/glade/glade-gtk.c.nowarning	2003-08-29 14:50:10.000000000 -0400
++++ libglade-2.0.1/glade/glade-gtk.c	2003-08-29 14:58:41.000000000 -0400
+@@ -639,9 +639,8 @@
+ 		if (!strcmp (childinfo->properties[j].name, "label")) {
+ 		    label = childinfo->properties[j].value;
+ 		    break;
+-		} else {
+-		    g_warning ("Unknown CList child property: %s", childinfo->properties[j].name);
+ 		}
++		/* Ignore all other properties */
+ 	    }
+ 
+ 	    if (label) {
+@@ -683,6 +682,7 @@
+ 	    char *icon = NULL;
+ 	    gboolean use_stock = FALSE, active = FALSE, new_group = FALSE;
+ 	    gboolean use_underline = FALSE;
++	    gboolean sensitive = TRUE;
+ 	    GtkWidget *iconw = NULL;
+ 	    int j;
+ 
+@@ -708,6 +708,8 @@
+ 		    group_name = value;
+ 		} else if (!strcmp (name, "new_group")) {
+ 		    new_group = BOOL (value);
++		} else if (!strcmp (name, "sensitive")) {
++		    sensitive = BOOL (value);
+ 		} else if (!strcmp (name, "visible")) {
+ 		    /* ignore for now */
+ 		} else if (!strcmp (name, "tooltip")) {
+@@ -785,6 +787,8 @@
+ 		gtk_label_set_use_underline (GTK_LABEL (toolbar_child->label),
+ 					     TRUE);
+ 	    }
++	    
++	    gtk_widget_set_sensitive (child, sensitive);
+ 
+ 	    glade_xml_set_common_params (xml, child, childinfo->child);
+ 	} else {
diff --git a/abs/extra-testing/libgnome/PKGBUILD b/abs/extra-testing/libgnome/PKGBUILD
new file mode 100644
index 0000000..1785596
--- /dev/null
+++ b/abs/extra-testing/libgnome/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id: PKGBUILD 13047 2008-09-25 19:54:22Z jgc $ 
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=libgnome
+pkgver=2.24.1
+pkgrel=1
+pkgdesc="Common libraries for GNOME"
+arch=(i686 x86_64)
+license=('LGPL')
+depends=('gnome-vfs>=2.24.0' 'esd>=0.2.40' 'libbonobo>=2.24.0')
+makedepends=('pkgconfig' 'perlxml')
+options=('!libtool' '!emptydirs')
+url="http://www.gnome.org"
+install=libgnome.install
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.24/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('3b2a30329898b37b2461b3aa886e5ad9')
+
+build() {
+  cd ${startdir}/src/${pkgname}-${pkgver}
+  ./configure --prefix=/usr --sysconfdir=/etc \
+              --localstatedir=/var --disable-static || return 1
+  make || return 1
+  make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR=${startdir}/pkg install || return 1
+
+  mkdir -p ${startdir}/pkg/usr/share/gconf/schemas
+  gconf-merge-schema ${startdir}/pkg/usr/share/gconf/schemas/${pkgname}.schemas ${startdir}/pkg/etc/gconf/schemas/*.schemas || return 1
+  rm -f ${startdir}/pkg/etc/gconf/schemas/*.schemas
+}
diff --git a/abs/extra-testing/libgnome/libgnome.install b/abs/extra-testing/libgnome/libgnome.install
new file mode 100644
index 0000000..ab307b1
--- /dev/null
+++ b/abs/extra-testing/libgnome/libgnome.install
@@ -0,0 +1,22 @@
+pkgname=libgnome
+
+post_install() {
+  usr/sbin/gconfpkg --install ${pkgname}
+}
+
+pre_upgrade() {
+  pre_remove $1
+}
+
+post_upgrade() {
+  post_install $1
+}
+
+pre_remove() {
+  usr/sbin/gconfpkg --install ${pkgname}
+}
+
+op=$1
+shift
+
+$op $*
diff --git a/abs/extra-testing/libgnomecanvas/PKGBUILD b/abs/extra-testing/libgnomecanvas/PKGBUILD
new file mode 100644
index 0000000..2fa25fb
--- /dev/null
+++ b/abs/extra-testing/libgnomecanvas/PKGBUILD
@@ -0,0 +1,22 @@
+# $Id: PKGBUILD 18534 2008-11-06 23:21:50Z jgc $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=libgnomecanvas
+pkgver=2.20.1.1
+pkgrel=2
+pkgdesc="The GNOME Canvas library"
+arch=(i686 x86_64)
+license=('LGPL')
+depends=('libglade>=2.6.3' 'libart-lgpl>=2.3.20')
+makedepends=('perlxml' 'pkgconfig')
+options=('!libtool')
+url="http://www.gnome.org"
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.20/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('948ed771d2957d24a0c9a414e9581055')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./configure --prefix=/usr --disable-static || return 1
+  make || return 1
+  make DESTDIR="${pkgdir}" install || return 1
+}
diff --git a/abs/extra-testing/libgnomeui/PKGBUILD b/abs/extra-testing/libgnomeui/PKGBUILD
new file mode 100644
index 0000000..db9a7ad
--- /dev/null
+++ b/abs/extra-testing/libgnomeui/PKGBUILD
@@ -0,0 +1,24 @@
+# $Id: PKGBUILD 13061 2008-09-25 20:01:10Z jgc $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=libgnomeui
+pkgver=2.24.0
+pkgrel=1
+pkgdesc="User Interface library for GNOME"
+arch=('i686' 'x86_64')
+license=('LGPL')
+depends=('libbonoboui>=2.24.0' 'gnome-keyring>=2.24.0')
+makedepends=('perlxml' 'pkgconfig')
+options=('!libtool' 'force')
+url="http://www.gnome.org"
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.24/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('7d50e1fc4c1ee3c268b26e8dfe7e677b')
+
+build() {
+  cd ${startdir}/src/${pkgname}-${pkgver}
+  ./configure --prefix=/usr --sysconfdir=/etc \
+              --localstatedir=/var --disable-static \
+	      --libexecdir=/usr/lib/libgnomeui || return 1
+  make || return 1
+  make DESTDIR=${startdir}/pkg install || return 1
+}
diff --git a/abs/extra-testing/libpng/ChangeLog b/abs/extra-testing/libpng/ChangeLog
new file mode 100644
index 0000000..98aa66d
--- /dev/null
+++ b/abs/extra-testing/libpng/ChangeLog
@@ -0,0 +1,55 @@
+
+2008-10-06  Douglas Soares de Andrade  <douglas@archlinux.org>
+
+	* Updated for i686: 1.2.32
+
+2008-08-23  Douglas Soares de Andrade  <douglas@archlinux.org>
+
+	* Updated for i686: 1.2.31
+	* Thanks to Hussam Al-Tayeb
+
+2008-08-17  Douglas Soares de Andrade  <douglas@archlinux.org>
+
+	* Had to return to 1.2.29 because xul depends on 
+	  png with apng patch
+
+2008-08-17  Douglas Soares de Andrade  <douglas@archlinux.org>
+
+	* Updated for i686: 1.2.30
+	* Fixes some security issues
+	* Remove the apng patch as there was no compatible version
+	  for this version
+
+2008-07-04  Douglas Soares de Andrade  <douglas@archlinux.org>
+
+	* Updated for i686 - 1.2.29-1
+	* Updated the apng patch for 1.2.29
+
+2008-05-06 Travis Willard <travis@archlinux.org>
+
+	* 1.2.28-1
+	Upstream update
+	Uses same APNG patchset as 1.2.27
+
+2008-05-01 Jan de Groot <jgc@archlinux.org>
+
+	* 1.2.27-1
+	Upstream update (security update!)
+	Fix APNG patchset to apply to 1.2.27
+	Fix build with newer libtool versions
+
+2008-03-12 Travis Willard <travis@archlinux.org>
+
+	* 1.2.25-1
+	Upstream update
+
+2008-02-18 Travis Willard <travis@archlinux.org>
+
+	* 1.2.24-3
+	Corrected ChangeLog
+
+2008-02-18 Travis Willard <travis@archlinux.org>
+
+	* 1.2.24-2
+	Added ChangeLog
+	Added APNG patchset from <http://littlesvr.ca/apng/>
diff --git a/abs/extra-testing/libpng/PKGBUILD b/abs/extra-testing/libpng/PKGBUILD
new file mode 100644
index 0000000..12515ed
--- /dev/null
+++ b/abs/extra-testing/libpng/PKGBUILD
@@ -0,0 +1,42 @@
+# $Id: PKGBUILD 22148 2008-12-22 12:33:23Z pierre $
+# Maintainer: dorphell <dorphell@archlinux.org>
+# Maintainer: Travis Willard <travis@archlinux.org>
+# Maintainer: Douglas Soares de Andrade <douglas@archlinux.org>
+
+pkgname=libpng
+pkgver=1.2.34
+pkgrel=1
+pkgdesc="A collection of routines used to create PNG format graphics files"
+arch=('i686' 'x86_64')
+url="http://www.libpng.org/pub/png/libpng.html"
+license=('custom')
+depends=('zlib')
+options=('!libtool')
+source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2"
+        "http://hp.vector.co.jp/authors/VA013651/lib/libpng-${pkgver}-apng.patch.gz")
+options=('!libtool')
+md5sums=('37362876feb21344fd3af1228527db0f'
+         'a7ee9fd9af34692b75eedd5b03b69ca9')
+
+build() {
+  cd ${startdir}/src/${pkgname}-${pkgver}
+
+  # Add animated PNG (apng) support
+  # see http://hp.vector.co.jp/authors/VA013651/freeSoftware/apng.html
+  patch -p1 -i $srcdir/libpng-${pkgver}-apng.patch || return 1
+
+  libtoolize --force --copy || return 1
+  aclocal || return 1
+  autoconf || return 1
+  automake --add-missing || return 1
+
+  ./configure --prefix=/usr || return 1
+  make ECHO=echo || return 1
+  make ECHO=echo DESTDIR=${startdir}/pkg install || return 1
+
+  cd contrib/pngminus
+  make ECHO=echo PNGLIB="-L${startdir}/pkg/usr/lib -lpng" -f makefile.std png2pnm pnm2png
+  install -m755 png2pnm pnm2png ${startdir}/pkg/usr/bin/
+  install -m755 -d ${startdir}/pkg/usr/share/licenses/${pkgname}
+  install -m644 ../../LICENSE ${startdir}/pkg/usr/share/licenses/${pkgname}/ || return 1
+}
diff --git a/abs/extra-testing/libxcb/PKGBUILD b/abs/extra-testing/libxcb/PKGBUILD
new file mode 100644
index 0000000..c61df23
--- /dev/null
+++ b/abs/extra-testing/libxcb/PKGBUILD
@@ -0,0 +1,34 @@
+# $Id: PKGBUILD 8004 2008-08-05 18:11:40Z jgc $
+# Maintainer: Alexander Baldeck <alexander@archlinux.org>
+# Contributor: Jan de Groot <jgc@archlinux.org>
+pkgname=libxcb
+pkgver=1.1.90.1
+pkgrel=1
+pkgdesc="X11 client-side library"
+arch=(i686 x86_64)
+url="http://xcb.freedesktop.org/"
+depends=('xcb-proto>=1.2' 'libxdmcp' 'libxau')
+makedepends=('pkgconfig' 'libxslt' 'python')
+options=('!libtool')
+license=('custom')
+source=(${url}/dist/${pkgname}-${pkgver}.tar.bz2
+	libxcb-1.1-no-pthread-stubs.patch
+	libxcb-1.1-sloppy-lock.patch)
+md5sums=('c4b67c5576ed58e2fd4a2855c0b21aa6'
+         'a53f09ab3ec5cbfc1b0848bd137c535a'
+         '4b3fbedc471d7ab336a18f1d0f853ddd')
+
+build() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+  patch -Np1 -i ${srcdir}/libxcb-1.1-no-pthread-stubs.patch || return 1
+  patch -Np1 -i ${srcdir}/libxcb-1.1-sloppy-lock.patch || return 1
+  libtoolize --force --copy || return 1
+  aclocal || return 1
+  autoconf || return 1
+  automake --add-missing || return 1
+  ./configure --prefix=/usr --enable-xinput || return 1
+  make || return 1
+  make DESTDIR=${pkgdir} install || return 1
+  install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname}
+  install -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/ || return 1
+}
diff --git a/abs/extra-testing/libxcb/libxcb-1.1-no-pthread-stubs.patch b/abs/extra-testing/libxcb/libxcb-1.1-no-pthread-stubs.patch
new file mode 100644
index 0000000..67a09f2
--- /dev/null
+++ b/abs/extra-testing/libxcb/libxcb-1.1-no-pthread-stubs.patch
@@ -0,0 +1,12 @@
+diff -up libxcb-1.1/configure.ac.pthread-stubs libxcb-1.1/configure.ac
+--- libxcb-1.1/configure.ac.pthread-stubs	2007-11-04 18:17:11.000000000 -0500
++++ libxcb-1.1/configure.ac	2007-11-12 10:27:06.000000000 -0500
+@@ -31,7 +31,7 @@ AC_SUBST(HTML_CHECK_RESULT)
+ 
+ # Checks for pkg-config packages
+ PKG_CHECK_MODULES(XCBPROTO, xcb-proto >= 1.1)
+-NEEDED="pthread-stubs xau >= 0.99.2"
++NEEDED="xau >= 0.99.2"
+ PKG_CHECK_MODULES(NEEDED, $NEEDED)
+ 
+ have_xdmcp="no"
diff --git a/abs/extra-testing/libxcb/libxcb-1.1-sloppy-lock.patch b/abs/extra-testing/libxcb/libxcb-1.1-sloppy-lock.patch
new file mode 100644
index 0000000..130890e
--- /dev/null
+++ b/abs/extra-testing/libxcb/libxcb-1.1-sloppy-lock.patch
@@ -0,0 +1,12 @@
+diff -up libxcb-1.1/src/xcb_conn.c.jx libxcb-1.1/src/xcb_conn.c
+--- libxcb-1.1/src/xcb_conn.c.jx	2007-10-28 16:11:18.000000000 -0400
++++ libxcb-1.1/src/xcb_conn.c	2008-04-22 11:58:05.000000000 -0400
+@@ -63,7 +63,7 @@ static int _xcb_xlib_init(_xcb_xlib *xli
+ {
+     xlib->lock = 0;
+ #ifndef NDEBUG
+-    xlib->sloppy_lock = (getenv("LIBXCB_ALLOW_SLOPPY_LOCK") != 0);
++    xlib->sloppy_lock = 1;
+ #endif
+     pthread_cond_init(&xlib->cond, 0);
+     return 1;
diff --git a/abs/extra-testing/miro/ChangeLog b/abs/extra-testing/miro/ChangeLog
new file mode 100644
index 0000000..223b1de
--- /dev/null
+++ b/abs/extra-testing/miro/ChangeLog
@@ -0,0 +1,34 @@
+2008-01-30 Eric Belanger <eric@archlinux.org>
+	* miro-1.1-2
+	* rebuilt against xulrunner 1.8.1.11
+
+2008-01-16 Varun Acharya <varun@archlinux.org>
+
+	* upgpkg miro-1.1
+
+2008-01-03 Varun Acharya <varun@archlinux.org>
+
+	* Adopted and moved to extra, miro-1.0-2
+
+2007-11-26  Alessio 'mOLOk' Bolognino <themolok@gmail.com>
+
+	* miro-1.0-2
+	* changed url
+	* added sqlite3 as dep (fix  FS#8636)
+
+2007-11-13  Alessio 'mOLOk' Bolognino <themolok@gmail.com>
+
+	* miro-1.0-1
+	* version bump
+
+2007-09-09  Alessio 'mOLOk' Bolognino <themolok@gmail.com>
+
+	* miro-0.9.9-1
+	* version bump
+
+2007-08-08  Alessio 'mOLOk' Bolognino <themolok@gmail.com>
+
+	* miro-0.9.8.1-1
+	* initial commit
+
+
diff --git a/abs/extra-testing/miro/Miro-xulrunner.patch b/abs/extra-testing/miro/Miro-xulrunner.patch
new file mode 100644
index 0000000..b8f4db3
--- /dev/null
+++ b/abs/extra-testing/miro/Miro-xulrunner.patch
@@ -0,0 +1,64 @@
+diff -up Miro-1.2.3/platform/gtk-x11/platform/mozsetup.py.old Miro-1.2.3/platform/gtk-x11/platform/mozsetup.py
+--- Miro-1.2.3/platform/gtk-x11/platform/mozsetup.py.old	2008-04-22 17:17:01.000000000 +0200
++++ Miro-1.2.3/platform/gtk-x11/platform/mozsetup.py	2008-04-28 12:51:46.000000000 +0200
+@@ -106,8 +106,8 @@ def setupMozillaEnvironment():
+         set_profile_path = gtkmozembed.gtk_moz_embed_set_profile_path
+         
+     set_profile_path(config.get(prefs.SUPPORT_DIRECTORY), 'mozilla')
+-    if hasattr(gtkmozembed, 'set_comp_path'):
+-        set_comp_path = gtkmozembed.set_comp_path
++    if hasattr(gtkmozembed, 'set_path'):
++        set_comp_path = gtkmozembed.set_path
+     elif hasattr(gtkmozembed, 'set_path'):
+         set_comp_path = gtkmozembed.set_path
+     else:
+diff -up Miro-1.2.3/platform/gtk-x11/setup.py.old Miro-1.2.3/platform/gtk-x11/setup.py
+--- Miro-1.2.3/platform/gtk-x11/setup.py.old	2008-04-22 17:17:01.000000000 +0200
++++ Miro-1.2.3/platform/gtk-x11/setup.py	2008-04-28 13:14:27.000000000 +0200
+@@ -209,6 +209,7 @@ def parsePkgConfig(command, components, 
+         options_dict = {
+             'include_dirs' : [],
+             'library_dirs' : [],
++            'runtime_dirs' : [],
+             'libraries' : [],
+             'extra_compile_args' : []
+         }
+@@ -224,6 +225,11 @@ def parsePkgConfig(command, components, 
+             options_dict['libraries'].append(rest)
+         else:
+             options_dict['extra_compile_args'].append(comp)
++            
++    commandLine = "%s --variable=libdir %s" % (command, components)
++    output = getCommandOutput(commandLine).strip()
++    options_dict['runtime_dirs'].append(output)
++    
+     return options_dict
+ 
+ #### The fasttypes extension ####
+@@ -279,6 +285,8 @@ mozilla_browser_options = parsePkgConfig
+         "gtk+-2.0 glib-2.0 pygtk-2.0 --define-variable=includetype=unstable %s %s" % (gtkmozembed, xpcom))
+ mozilla_lib_path = parsePkgConfig('pkg-config', 
+         '%s' % gtkmozembed)['library_dirs']
++runtime_lib_path = parsePkgConfig('pkg-config', 
++        '%s' % gtkmozembed)['runtime_dirs']
+ # Find the base mozilla directory, and add the subdirs we need.
+ def allInDir(directory, subdirs):
+     for subdir in subdirs:
+@@ -334,7 +342,7 @@ mozilla_browser_ext = Extension("miro.pl
+           os.path.join(platform_html_frontend_dir,'DragAndDrop.cc'),
+           os.path.join(platform_html_frontend_dir,'XPCOMUtil.cc'),
+         ],
+-        runtime_library_dirs=mozilla_lib_path,
++        runtime_library_dirs=runtime_lib_path,
+         **mozilla_browser_options)
+ #### Xlib Extension ####
+ xlib_ext = \
+@@ -434,7 +442,7 @@ class install_data (distutils.command.in
+                              BUILD_MACHINE="%s@%s" % (getlogin(),
+                                                       os.uname()[1]),
+                              BUILD_TIME=str(time.time()),
+-                             MOZILLA_LIB_PATH=mozilla_lib_path[0])
++                             MOZILLA_LIB_PATH=runtime_lib_path[0])
+         self.outfiles.append(dest)
+ 
+         locale_dir = os.path.join (resource_dir, "locale")
diff --git a/abs/extra-testing/miro/PKGBUILD b/abs/extra-testing/miro/PKGBUILD
new file mode 100644
index 0000000..efc44b3
--- /dev/null
+++ b/abs/extra-testing/miro/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 18952 2008-11-12 08:23:26Z ronald $
+# Maintainer: Ronald van Haren <ronald.archlinux.org>
+
+pkgname=miro
+pkgver=1.2.8
+pkgrel=2
+pkgdesc="The free and open source internet TV platform"
+arch=('i686' 'x86_64')
+url="http://www.getmiro.com"
+license=('GPL2')
+depends=('xine-lib>=1.1.12' 'boost>=1.36.0' 'gnome-python-extras>=2.19.1'
+	 'dbus-python>=0.82.4' 'pyrex' 'xulrunner>=1.9.0.1' 'gtk2' 'nspr')
+makedepends=('pkgconfig' 'qt3')
+install=miro.install
+conflicts=('democracy')
+replaces=('democracy')
+provides=('democracy')
+
+source=(http://ftp.osuosl.org/pub/pculture.org/miro/src/Miro-${pkgver}.tar.gz
+        missing-headers.patch
+	Miro-xulrunner.patch
+	boost_1.36.0_fix.patch
+	miro_python26.patch)
+
+md5sums=('b468a953014272095171303ba3f0745d'
+         'b5482eac565a26817af0105b061a8ad5'
+         '3c06b40cd13c2fb202f58dcf64d4b524'
+         '3b4e1eac01155b9de381b0744ba9d725'
+         'a913b2340136ac0fbb9034523faf667a')
+
+build() {
+  cd ${srcdir}/Miro-${pkgver}
+  patch -Np1 -i ${srcdir}/missing-headers.patch || return 1
+  patch -Np1 -i ${srcdir}/Miro-xulrunner.patch || return 1
+  patch -Np1 -i ${srcdir}/boost_1.36.0_fix.patch || return 1
+
+  cd platform/gtk-x11
+  patch -Np0 -i ${srcdir}/miro_python26.patch || return 1
+
+  python setup.py install --root=${pkgdir} || return 1
+}
diff --git a/abs/extra-testing/miro/boost_1.36.0_fix.patch b/abs/extra-testing/miro/boost_1.36.0_fix.patch
new file mode 100644
index 0000000..b3b5a48
--- /dev/null
+++ b/abs/extra-testing/miro/boost_1.36.0_fix.patch
@@ -0,0 +1,32 @@
+--- Miro-1.2.7/portable/libtorrent/src/torrent_info.cpp.old	2008-09-21 13:47:00.122974031 +0200
++++ Miro-1.2.7/portable/libtorrent/src/torrent_info.cpp	2008-09-21 13:48:54.812965713 +0200
+@@ -352,7 +352,7 @@
+ 		fs::path tmp = m_name;
+ 		if (tmp.is_complete()) throw std::runtime_error("torrent contains "
+ 			"a file with an absolute path: '" + m_name + "'");
+-		if (tmp.has_branch_path()) throw std::runtime_error(
++		if (!tmp.branch_path().empty()) throw std::runtime_error(
+ 			"torrent contains name with directories: '" + m_name + "'");
+ 	
+ 		// extract file list
+@@ -556,7 +556,7 @@
+ 	{
+ //		TORRENT_ASSERT(file.begin() != file.end());
+ 
+-		if (!file.has_branch_path())
++		if (file.branch_path().empty())
+ 		{
+ 			// you have already added at least one file with a
+ 			// path to the file (branch_path), which means that
+
+--- Miro-1.2.7/portable/libtorrent/include/libtorrent/disk_io_thread.hpp.old	2008-09-21 13:57:05.433330334 +0200
++++ Miro-1.2.7/portable/libtorrent/include/libtorrent/disk_io_thread.hpp	2008-09-21 13:57:29.060304305 +0200
+@@ -41,6 +41,7 @@
+ #include <boost/bind.hpp>
+ #include <boost/pool/pool.hpp>
+ #include <boost/noncopyable.hpp>
++#include <boost/thread/condition.hpp>
+ #include "libtorrent/config.hpp"
+ 
+ namespace libtorrent
+
diff --git a/abs/extra-testing/miro/miro.install b/abs/extra-testing/miro/miro.install
new file mode 100644
index 0000000..f37f11d
--- /dev/null
+++ b/abs/extra-testing/miro/miro.install
@@ -0,0 +1,17 @@
+post_install() {
+  update-desktop-database -q
+}
+
+post_upgrade() {
+  post_install $1
+}
+
+post_remove() {
+  update-desktop-database -q
+}
+
+op=$1
+shift
+
+$op $*
+
diff --git a/abs/extra-testing/miro/miro_python26.patch b/abs/extra-testing/miro/miro_python26.patch
new file mode 100644
index 0000000..f404a4e
--- /dev/null
+++ b/abs/extra-testing/miro/miro_python26.patch
@@ -0,0 +1,16 @@
+--- miro.real	2008-10-24 19:49:17.000000000 +0200
++++ miro.real.new	2008-11-12 08:51:17.649458321 +0100
+@@ -6,8 +6,12 @@
+ if xlibhelper.XInitThreads() == 0:
+     print "WARNING: XInitThreads() failed!"
+ 
+-import os.path
++import miro.feedparser
++import miro.storedatabase
+ import sys
++sys.modules['feedparser'] = miro.feedparser
++sys.modules['storedatabase'] = miro.storedatabase
++import os.path
+ import optparse
+ 
+ import pygtk
diff --git a/abs/extra-testing/miro/missing-headers.patch b/abs/extra-testing/miro/missing-headers.patch
new file mode 100644
index 0000000..7dc42b8
--- /dev/null
+++ b/abs/extra-testing/miro/missing-headers.patch
@@ -0,0 +1,33 @@
+diff -ur a/portable/libtorrent/include/libtorrent/peer_id.hpp b/portable/libtorrent/include/libtorrent/peer_id.hpp
+--- a/portable/libtorrent/include/libtorrent/peer_id.hpp	2008-04-22 10:17:04.000000000 -0500
++++ b/portable/libtorrent/include/libtorrent/peer_id.hpp	2008-05-07 01:51:09.000000000 -0500
+@@ -38,6 +38,7 @@
+ #include <cctype>
+ #include <algorithm>
+ #include <string>
++#include <cstring>
+ 
+ #include "libtorrent/config.hpp"
+ #include "libtorrent/assert.hpp"
+diff -ur a/portable/libtorrent/src/entry.cpp b/portable/libtorrent/src/entry.cpp
+--- a/portable/libtorrent/src/entry.cpp	2008-04-22 10:17:04.000000000 -0500
++++ b/portable/libtorrent/src/entry.cpp	2008-05-07 02:16:14.000000000 -0500
+@@ -33,6 +33,7 @@
+ #include "libtorrent/pch.hpp"
+ 
+ #include <algorithm>
++#include <iostream>
+ #include <iomanip>
+ #include "libtorrent/entry.hpp"
+ #include "libtorrent/config.hpp"
+diff -ur a/portable/libtorrent/src/file.cpp b/portable/libtorrent/src/file.cpp
+--- a/portable/libtorrent/src/file.cpp	2008-04-22 10:17:04.000000000 -0500
++++ b/portable/libtorrent/src/file.cpp	2008-05-07 01:53:04.000000000 -0500
+@@ -68,6 +68,7 @@
+ #include <boost/filesystem/operations.hpp>
+ #include "libtorrent/file.hpp"
+ #include <sstream>
++#include <cstring>
+ 
+ #ifndef O_BINARY
+ #define O_BINARY 0
diff --git a/abs/extra-testing/pango/PKGBUILD b/abs/extra-testing/pango/PKGBUILD
new file mode 100644
index 0000000..afa7a8f
--- /dev/null
+++ b/abs/extra-testing/pango/PKGBUILD
@@ -0,0 +1,24 @@
+# $Id: PKGBUILD 22043 2008-12-21 12:14:05Z jgc $ 
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=pango
+pkgver=1.22.4
+pkgrel=1
+pkgdesc="A library for layout and rendering of text"
+arch=(i686 x86_64)
+license=('LGPL')
+depends=('glib2>=2.18.3' 'cairo>=1.8.6' 'libxft>=2.1.13' 'libthai>=0.1.9')
+makedepends=('pkgconfig' 'libxt')
+options=('!libtool' '!emptydirs')
+install=pango.install
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/1.22/${pkgname}-${pkgver}.tar.bz2)
+url="http://www.pango.org/"
+md5sums=('7c3f3748052799746d73c6d3a0cc1205')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./configure --prefix=/usr --sysconfdir=/etc \
+              --localstatedir=/var || return 1
+  make || return 1
+  make DESTDIR="${pkgdir}" install || return 1
+}
diff --git a/abs/extra-testing/pango/bgo563356.patch b/abs/extra-testing/pango/bgo563356.patch
new file mode 100644
index 0000000..226fd0c
--- /dev/null
+++ b/abs/extra-testing/pango/bgo563356.patch
@@ -0,0 +1,305 @@
+diff -aur old/ChangeLog new/ChangeLog
+--- old/ChangeLog	2008-12-06 14:35:33.037390818 +0800
++++ new/ChangeLog	2008-12-06 14:35:11.475339336 +0800
+@@ -1,3 +1,39 @@
++2008-12-05  Behdad Esfahbod  <behdad@gnome.org>
++
++	Bug 563356 – The input area of firefox and the blank width after text
++	in gnome-menu was stretched too wide, under pango-1.22.3
++
++	* docs/tmpl/fonts.sgml:
++	* pango/pango-impl-utils.h:
++	* pango/pangocairo-atsuifont.c
++	(pango_cairo_atsui_font_create_metrics_for_context):
++	* pango/pangocairo-win32font.c
++	(pango_cairo_win32_font_create_metrics_for_context):
++	* pango/pangofc-font.c (pango_fc_font_create_metrics_for_context):
++	For approximate_char_width calculation take each char's width into
++	account.  That is, do a weighted average instead of uniform average.
++	g_unichar_iszerowidth() chars count as 0, g_unichar_iswide() chars
++	count 2, and the rest count as 1.  Pretty much wcwidth() behavior.
++	See bug report for rationale.
++
++2008-11-28  Behdad Esfahbod  <behdad@gnome.org>
++
++	Bug 562574 – Pangocariowin32 is leaking every cairo font it ever
++	creates
++
++	* pango/pangocairo-atsuifont.c (pango_cairo_atsui_font_finalize):
++	* pango/pangocairo-win32font.c (pango_cairo_win32_font_finalize):
++	Finalize shared pangocairo font resources.  Oops!
++
++	* pango/pangocairo-font.c (_pango_cairo_font_private_finalize):
++	Protect against multiple calls to finalize.  This is practiced by the
++	pangocairo-fcfont when a font is shutdown and then finalized.
++
++2008-11-26  Behdad Esfahbod  <behdad@gnome.org>
++
++	* examples/cairotwisted.c (parametrize_path), (point_on_path):
++	Handle close_path correctly.
++
+ 2008-11-23  Behdad Esfahbod  <behdad@gnome.org>
+ 
+ 	* === Released 1.22.3 ===
+diff -aur old/docs/tmpl/fonts.sgml new/docs/tmpl/fonts.sgml
+--- old/docs/tmpl/fonts.sgml	2008-12-06 14:35:11.450807479 +0800
++++ new/docs/tmpl/fonts.sgml	2008-12-06 14:34:53.771786070 +0800
+@@ -441,7 +441,10 @@
+ @descent: the distance from the baseline to the lowest point of the glyphs of
+ 	 the font. This is positive in practically all fonts.
+ @approximate_char_width: approximate average width of the regular glyphs of
+-         the font.
++         the font.  Note that for this calculation, East Asian characters
++	 (those passing g_unichar_iswide()) are counted as double-width.
++	 This produces a more uniform value for this measure across languages
++	 and results in more uniform and more expected UI sizes.
+ @approximate_digit_width: approximate average width of the glyphs for digits
+          of the font.
+ @underline_position: position of the underline. This is normally negative.
+diff -aur old/examples/cairotwisted.c new/examples/cairotwisted.c
+--- old/examples/cairotwisted.c	2008-12-06 14:35:32.900725834 +0800
++++ new/examples/cairotwisted.c	2008-12-06 14:35:11.264059243 +0800
+@@ -216,7 +216,7 @@
+ parametrize_path (cairo_path_t *path)
+ {
+   int i;
+-  cairo_path_data_t *data, current_point;
++  cairo_path_data_t *data, last_move_to, current_point;
+   parametrization_t *parametrization;
+ 
+   parametrization = malloc (path->num_data * sizeof (parametrization[0]));
+@@ -226,8 +226,13 @@
+     parametrization[i] = 0.0;
+     switch (data->header.type) {
+     case CAIRO_PATH_MOVE_TO:
++	last_move_to = data[1];
+ 	current_point = data[1];
+ 	break;
++    case CAIRO_PATH_CLOSE_PATH:
++	/* Make it look like it's a line_to to last_move_to */
++	data = (&last_move_to) - 1;
++	/* fall through */
+     case CAIRO_PATH_LINE_TO:
+ 	parametrization[i] = two_points_distance (&current_point, &data[1]);
+ 	current_point = data[1];
+@@ -245,8 +250,6 @@
+ 
+ 	current_point = data[3];
+ 	break;
+-    case CAIRO_PATH_CLOSE_PATH:
+-	break;
+     default:
+ 	g_assert_not_reached ();
+     }
+@@ -320,7 +323,7 @@
+ {
+   int i;
+   double ratio, the_y = *y, the_x = *x, dx, dy;
+-  cairo_path_data_t *data, current_point;
++  cairo_path_data_t *data, last_move_to, current_point;
+   cairo_path_t *path = param->path;
+   parametrization_t *parametrization = param->parametrization;
+ 
+@@ -333,6 +336,7 @@
+     switch (data->header.type) {
+     case CAIRO_PATH_MOVE_TO:
+ 	current_point = data[1];
++        last_move_to = data[1];
+ 	break;
+     case CAIRO_PATH_LINE_TO:
+ 	current_point = data[1];
+@@ -352,6 +356,10 @@
+ 
+   case CAIRO_PATH_MOVE_TO:
+       break;
++  case CAIRO_PATH_CLOSE_PATH:
++      /* Make it look like it's a line_to to last_move_to */
++      data = (&last_move_to) - 1;
++      /* fall through */
+   case CAIRO_PATH_LINE_TO:
+       {
+ 	ratio = the_x / parametrization[i];
+@@ -424,8 +432,6 @@
+ 	*y +=  dx * ratio;
+       }
+       break;
+-  case CAIRO_PATH_CLOSE_PATH:
+-      break;
+   default:
+       g_assert_not_reached ();
+   }
+diff -aur old/pango/pango-impl-utils.h new/pango/pango-impl-utils.h
+--- old/pango/pango-impl-utils.h	2008-12-06 14:35:22.291559359 +0800
++++ new/pango/pango-impl-utils.h	2008-12-06 14:35:03.550729660 +0800
+@@ -23,6 +23,7 @@
+ #ifndef __PANGO_IMPL_UTILS_H__
+ #define __PANGO_IMPL_UTILS_H__
+ 
++#include <glib.h>
+ #include <glib-object.h>
+ #include <pango/pango.h>
+ 
+@@ -92,6 +93,36 @@
+ 			       PangoRectangle   *ink_rect,
+ 			       PangoRectangle   *logical_rect);
+ 
++
++/* We define these functions static here because we don't want to add public API
++ * for them (if anything, it belongs to glib, but glib found it trivial enough
++ * not to add API for).  At some point metrics calculations will be
++ * centralized and this mess can be minimized.  Or so I hope.
++ */
++
++static inline G_GNUC_UNUSED int
++pango_unichar_width (gunichar c)
++{
++  return G_UNLIKELY (g_unichar_iszerowidth (c)) ? 0 :
++	   G_UNLIKELY (g_unichar_iswide (c)) ? 2 : 1;
++}
++
++static G_GNUC_UNUSED glong
++pango_utf8_strwidth (const gchar *p)
++{
++  glong len = 0;
++  g_return_val_if_fail (p != NULL, 0);
++
++  while (*p)
++    {
++      len += pango_unichar_width (g_utf8_get_char (p));
++      p = g_utf8_next_char (p);
++    }
++
++  return len;
++}
++
++
+ G_END_DECLS
+ 
+ #endif /* __PANGO_IMPL_UTILS_H__ */
+diff -aur old/pango/pangocairo-atsuifont.c new/pango/pangocairo-atsuifont.c
+--- old/pango/pangocairo-atsuifont.c	2008-12-06 14:35:23.464057615 +0800
++++ new/pango/pangocairo-atsuifont.c	2008-12-06 14:35:04.914061436 +0800
+@@ -24,6 +24,7 @@
+ 
+ #import <Cocoa/Cocoa.h>
+ 
++#include "pango-impl-utils.h"
+ #include "pangoatsui-private.h"
+ #include "pangocairo.h"
+ #include "pangocairo-private.h"
+@@ -148,7 +149,7 @@
+   pango_layout_set_text (layout, sample_str, -1);
+   pango_layout_get_extents (layout, NULL, &extents);
+ 
+-  metrics->approximate_char_width = extents.width / g_utf8_strlen (sample_str, -1);
++  metrics->approximate_char_width = extents.width / pango_utf8_strwidth (sample_str);
+ 
+   pango_layout_set_text (layout, "0123456789", -1);
+   metrics->approximate_digit_width = max_glyph_width (layout);
+@@ -174,6 +175,10 @@
+ static void
+ pango_cairo_atsui_font_finalize (GObject *object)
+ {
++  PangoCairoATSUIFont *cafont = (PangoCairoATSUIFont *) object;
++
++  _pango_cairo_font_private_finalize (&cafont->cf_priv);
++
+   G_OBJECT_CLASS (pango_cairo_atsui_font_parent_class)->finalize (object);
+ }
+ 
+@@ -191,7 +196,7 @@
+ }
+ 
+ static void
+-pango_cairo_atsui_font_init (PangoCairoATSUIFont *cafont)
++pango_cairo_atsui_font_init (PangoCairoATSUIFont *cafont G_GNUC_UNUSED)
+ {
+ }
+ 
+diff -aur old/pango/pangocairo-fcfont.c new/pango/pangocairo-fcfont.c
+--- old/pango/pangocairo-fcfont.c	2008-12-06 14:35:22.840724772 +0800
++++ new/pango/pangocairo-fcfont.c	2008-12-06 14:35:04.294060844 +0800
+@@ -88,7 +88,7 @@
+ static void
+ pango_cairo_fc_font_finalize (GObject *object)
+ {
+-  PangoCairoFcFont *cffont = (PangoCairoFcFont *) (object);
++  PangoCairoFcFont *cffont = (PangoCairoFcFont *) object;
+ 
+   _pango_cairo_font_private_finalize (&cffont->cf_priv);
+ 
+@@ -162,7 +162,7 @@
+ }
+ 
+ static void
+-pango_cairo_fc_font_init (PangoCairoFcFont *cffont)
++pango_cairo_fc_font_init (PangoCairoFcFont *cffont G_GNUC_UNUSED)
+ {
+ }
+ 
+diff -aur old/pango/pangocairo-font.c new/pango/pangocairo-font.c
+--- old/pango/pangocairo-font.c	2008-12-06 14:35:23.387391067 +0800
++++ new/pango/pangocairo-font.c	2008-12-06 14:35:04.840728398 +0800
+@@ -560,14 +560,18 @@
+ 
+   if (cf_priv->scaled_font)
+     cairo_scaled_font_destroy (cf_priv->scaled_font);
++  cf_priv->scaled_font = NULL;
+ 
+   _pango_cairo_font_hex_box_info_destroy (cf_priv->hbi);
++  cf_priv->hbi = NULL;
+ 
+   if (cf_priv->glyph_extents_cache)
+     g_free (cf_priv->glyph_extents_cache);
++  cf_priv->glyph_extents_cache = NULL;
+ 
+   g_slist_foreach (cf_priv->metrics_by_lang, (GFunc)free_metrics_info, NULL);
+   g_slist_free (cf_priv->metrics_by_lang);
++  cf_priv->metrics_by_lang = NULL;
+ }
+ 
+ gboolean
+diff -aur old/pango/pangocairo-win32font.c new/pango/pangocairo-win32font.c
+--- old/pango/pangocairo-win32font.c	2008-12-06 14:35:22.500726273 +0800
++++ new/pango/pangocairo-win32font.c	2008-12-06 14:35:03.990726207 +0800
+@@ -150,7 +150,7 @@
+   pango_layout_set_text (layout, sample_str, -1);
+   pango_layout_get_extents (layout, NULL, &extents);
+ 
+-  metrics->approximate_char_width = extents.width / g_utf8_strlen (sample_str, -1);
++  metrics->approximate_char_width = extents.width / pango_utf8_strwidth (sample_str);
+ 
+   pango_layout_set_text (layout, "0123456789", -1);
+   metrics->approximate_digit_width = max_glyph_width (layout);
+@@ -164,6 +164,10 @@
+ static void
+ pango_cairo_win32_font_finalize (GObject *object)
+ {
++  PangoCairoWin32Font *cwfont = (PangoCairoWin32Font *) object;
++
++  _pango_cairo_font_private_finalize (&cwfont->cf_priv);
++
+   G_OBJECT_CLASS (pango_cairo_win32_font_parent_class)->finalize (object);
+ }
+ 
+@@ -225,7 +229,7 @@
+ }
+ 
+ static void
+-pango_cairo_win32_font_init (PangoCairoWin32Font *cwfont)
++pango_cairo_win32_font_init (PangoCairoWin32Font *cwfont G_GNUC_UNUSED)
+ {
+ }
+ 
+diff -aur old/pango/pangofc-font.c new/pango/pangofc-font.c
+--- old/pango/pangofc-font.c	2008-12-06 14:35:23.117390557 +0800
++++ new/pango/pangofc-font.c	2008-12-06 14:35:04.564059609 +0800
+@@ -496,7 +496,7 @@
+   pango_layout_get_extents (layout, NULL, &extents);
+ 
+   metrics->approximate_char_width =
+-    extents.width / g_utf8_strlen (sample_str, -1);
++    extents.width / pango_utf8_strwidth (sample_str);
+ 
+   pango_layout_set_text (layout, "0123456789", -1);
+   metrics->approximate_digit_width = max_glyph_width (layout);
diff --git a/abs/extra-testing/pango/pango.install b/abs/extra-testing/pango/pango.install
new file mode 100644
index 0000000..9978739
--- /dev/null
+++ b/abs/extra-testing/pango/pango.install
@@ -0,0 +1,26 @@
+# arg 1:  the new package version
+post_install() {
+	# we need to ldconfig first, in case xfree86's libs aren't
+	# in ld.so.cache yet
+	sbin/ldconfig -r .
+	usr/bin/pango-querymodules >etc/pango/pango.modules
+}
+
+# arg 1:  the new package version
+# arg 2:  the old package version
+post_upgrade() {
+	if [ -f usr/etc/pango/pango.modules ]; then
+		rm usr/etc/pango/pango.modules
+	fi
+	post_install $1
+}
+
+# arg 1:  the old package version
+pre_remove() {
+	rm etc/pango/pango.modules
+}
+
+op=$1
+shift
+
+$op $*
diff --git a/abs/extra-testing/pixman/PKGBUILD b/abs/extra-testing/pixman/PKGBUILD
new file mode 100644
index 0000000..306acd9
--- /dev/null
+++ b/abs/extra-testing/pixman/PKGBUILD
@@ -0,0 +1,21 @@
+# $Id: PKGBUILD 12786 2008-09-20 08:34:14Z jgc $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Contributor: Alexander Baldeck <alexander@archlinux.org>
+pkgname=pixman
+pkgver=0.12.0
+pkgrel=1
+pkgdesc="Pixman library"
+arch=(i686 x86_64)
+url="http://xorg.freedesktop.org"
+license=()
+depends=('glibc')
+options=('!libtool')
+source=(http://xorg.freedesktop.org/releases/individual/lib/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('494af78c1c7d825c9ad6815d7b91f17d')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./configure --prefix=/usr --disable-static || return 1
+  make || return 1
+  make DESTDIR="${pkgdir}" install || return 1
+}
diff --git a/abs/extra-testing/policykit-gnome/PKGBUILD b/abs/extra-testing/policykit-gnome/PKGBUILD
new file mode 100644
index 0000000..e6a7d9c
--- /dev/null
+++ b/abs/extra-testing/policykit-gnome/PKGBUILD
@@ -0,0 +1,32 @@
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Contributor: onestep_ua <onestep@ukr.net>
+
+pkgname=policykit-gnome
+pkgver=0.9.2
+pkgrel=2
+pkgdesc="PolicyKit integration for the GNOME desktop"
+arch=('i686' 'x86_64')
+url="http://hal.freedesktop.org/docs/PolicyKit-gnome/"
+license=('GPL')
+depends=('gconf>=2.24.0')
+makedepends=('intltool' 'gtk-doc' 'gnome-doc-utils>=0.14.0')
+options=(!emptydirs !libtool)
+install=${pkgname}.install
+source=(http://hal.freedesktop.org/releases/PolicyKit-gnome-${pkgver}.tar.bz2)
+md5sums=('fc478b168d0c926a9766b0b415ff4bbf')
+
+build() {
+  cd "${srcdir}/PolicyKit-gnome-${pkgver}"
+
+  ./configure --prefix=/usr \
+      --sysconfdir=/etc \
+      --libexecdir=/usr/lib/PolicyKit \
+      --disable-gtk-doc \
+      --disable-examples || return 1
+  make || return 1
+  make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install || return 1
+
+  install -m 755 -d "${pkgdir}/usr/share/gconf/schemas"
+  gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" ${pkgdir}/etc/gconf/schemas/*.schemas || return 1
+  rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+}
diff --git a/abs/extra-testing/policykit-gnome/policykit-gnome.install b/abs/extra-testing/policykit-gnome/policykit-gnome.install
new file mode 100644
index 0000000..e2593d3
--- /dev/null
+++ b/abs/extra-testing/policykit-gnome/policykit-gnome.install
@@ -0,0 +1,23 @@
+pkgname=policykit-gnome
+
+## arg 1:  the new package version
+post_install() {
+  usr/sbin/gconfpkg --install ${pkgname}
+}
+
+## arg 1:  the new package version
+## arg 2:  the old package version
+pre_upgrade() {
+  pre_remove $1
+}
+
+## arg 1:  the new package version
+## arg 2:  the old package version
+post_upgrade() {
+  post_install $1
+}
+
+## arg 1:  the old package version
+pre_remove() {
+  usr/sbin/gconfpkg --uninstall ${pkgname}
+}
diff --git a/abs/extra-testing/policykit/PKGBUILD b/abs/extra-testing/policykit/PKGBUILD
new file mode 100644
index 0000000..b7cdb74
--- /dev/null
+++ b/abs/extra-testing/policykit/PKGBUILD
@@ -0,0 +1,38 @@
+# $Id: $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=policykit
+pkgver=0.9
+pkgrel=7
+pkgdesc="Application development toolkit for controlling system-wide privileges"
+arch=(i686 x86_64)
+license=('custom')
+url="http://hal.freedesktop.org/docs/PolicyKit/"
+depends=('dbus-glib>=0.76' 'expat>=2.0.1' 'pam')
+makedepends=('intltool' 'docbook-xsl')
+options=('!libtool')
+backup=('etc/PolicyKit/PolicyKit.conf')
+install=policykit.install
+source=(http://hal.freedesktop.org/releases/PolicyKit-${pkgver}.tar.gz
+	polkit.pam
+	pk-ck-api-change.patch)
+
+md5sums=('802fd13ae41f73d79359e5ecb0a98716'
+         '6564f95878297b954f0572bc1610dd15'
+         '15b42b41e98410d8d7ec4f91d0cff190')
+
+build() {
+  cd ${srcdir}/PolicyKit-${pkgver}
+  patch -Np1 -i ${srcdir}/pk-ck-api-change.patch || return 1
+  ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+              --libexecdir=/usr/lib/PolicyKit --disable-static \
+	      --with-polkit-user=policykit --with-polkit-group=policykit || return 1
+  make || return 1
+  make DESTDIR=${pkgdir} install || return 1
+
+  install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname}
+  install -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/ || return 1
+
+  rm -rf ${pkgdir}/etc/profile.d
+  install -m644 ${srcdir}/polkit.pam ${pkgdir}/etc/pam.d/polkit || return 1
+}
diff --git a/abs/extra-testing/policykit/pk-ck-api-change.patch b/abs/extra-testing/policykit/pk-ck-api-change.patch
new file mode 100644
index 0000000..ae477f9
--- /dev/null
+++ b/abs/extra-testing/policykit/pk-ck-api-change.patch
@@ -0,0 +1,83 @@
+diff --git a/src/polkit-dbus/polkit-dbus.c b/src/polkit-dbus/polkit-dbus.c
+index f7be03f..cad4a76 100644
+--- a/src/polkit-dbus/polkit-dbus.c
++++ b/src/polkit-dbus/polkit-dbus.c
+@@ -214,11 +214,17 @@ polkit_session_new_from_objpath (DBusConnection *con, const char *objpath, uid_t
+                                 dbus_message_unref (reply);
+                         goto out;
+                 }
++                /* GetUnixUser API Changed in CK 0.3.0 */
+                 if (!dbus_message_get_args (reply, NULL,
+-                                            DBUS_TYPE_INT32, &uid,
++                                            DBUS_TYPE_UINT32, &uid,
+                                             DBUS_TYPE_INVALID)) {
+-                        kit_warning ("Invalid GetUnixUser reply from CK");
+-                        goto out;
++                        /* try the older API */
++                        if (!dbus_message_get_args (reply, NULL,
++                                                    DBUS_TYPE_INT32, &uid,
++                                                    DBUS_TYPE_INVALID)) {
++                                kit_warning ("Invalid GetUnixUser reply from CK");
++                                goto out;
++                        }
+                 }
+                 dbus_message_unref (message);
+                 dbus_message_unref (reply);
+@@ -1326,16 +1332,21 @@ polkit_tracker_dbus_func (PolKitTracker *pk_tracker, DBusMessage *message)
+ 
+                 dbus_error_init (&error);
+                 seat_objpath = dbus_message_get_path (message);
+-                if (!dbus_message_get_args (message, &error, 
+-                                            DBUS_TYPE_STRING, &session_objpath, 
++                /* API fixed in CK 0.3 to match spec */
++                if (!dbus_message_get_args (message, &error,
++                                            DBUS_TYPE_OBJECT_PATH, &session_objpath,
+                                             DBUS_TYPE_INVALID)) {
++                        if (!dbus_message_get_args (message, &error,
++                                                    DBUS_TYPE_STRING, &session_objpath,
++                                                    DBUS_TYPE_INVALID)) {
+ 
+-                        /* TODO: should be _pk_critical */
+-                        kit_warning ("The SessionAdded signal on the org.freedesktop.ConsoleKit.Seat "
+-                                   "interface for object %s has the wrong signature! "
+-                                   "Your system is misconfigured.", seat_objpath);
++                                /* TODO: should be _pk_critical */
++                                kit_warning ("The SessionAdded signal on the org.freedesktop.ConsoleKit.Seat "
++                                             "interface for object %s has the wrong signature! "
++                                             "Your system is misconfigured.", seat_objpath);
+ 
+-                        goto out;
++                                goto out;
++                        }
+                 }
+ 
+                 /* TODO: add to sessions - see polkit_tracker_is_authorization_relevant() */
+@@ -1353,16 +1364,21 @@ polkit_tracker_dbus_func (PolKitTracker *pk_tracker, DBusMessage *message)
+ 
+                 dbus_error_init (&error);
+                 seat_objpath = dbus_message_get_path (message);
+-                if (!dbus_message_get_args (message, &error, 
+-                                            DBUS_TYPE_STRING, &session_objpath, 
++                /* API fixed in CK 0.3 to match spec */
++                if (!dbus_message_get_args (message, &error,
++                                            DBUS_TYPE_OBJECT_PATH, &session_objpath,
+                                             DBUS_TYPE_INVALID)) {
++                        if (!dbus_message_get_args (message, &error,
++                                                    DBUS_TYPE_STRING, &session_objpath,
++                                                    DBUS_TYPE_INVALID)) {
+ 
+-                        /* TODO: should be _pk_critical */
+-                        kit_warning ("The SessionRemoved signal on the org.freedesktop.ConsoleKit.Seat "
+-                                   "interface for object %s has the wrong signature! "
+-                                   "Your system is misconfigured.", seat_objpath);
++                                /* TODO: should be _pk_critical */
++                                kit_warning ("The SessionRemoved signal on the org.freedesktop.ConsoleKit.Seat "
++                                             "interface for object %s has the wrong signature! "
++                                             "Your system is misconfigured.", seat_objpath);
+ 
+-                        goto out;
++                                goto out;
++                        }
+                 }
+ 
+                 _remove_caller_by_session (pk_tracker, session_objpath);
diff --git a/abs/extra-testing/policykit/policykit.install b/abs/extra-testing/policykit/policykit.install
new file mode 100644
index 0000000..76a771e
--- /dev/null
+++ b/abs/extra-testing/policykit/policykit.install
@@ -0,0 +1,30 @@
+post_install() {
+  getent group policykit >/dev/null || usr/sbin/groupadd policykit
+  getent passwd policykit >/dev/null || usr/sbin/useradd -c 'PolicyKit' -u 102 -g policykit -d '/' -s /sbin/nologin policykit
+  usr/bin/passwd -l policykit &>/dev/null
+
+  # set correct permissions
+  chgrp policykit var/{run,lib}/PolicyKit
+  chown policykit var/lib/PolicyKit-public
+  chown policykit:policykit var/lib/misc/PolicyKit.reload
+
+  chown policykit usr/lib/PolicyKit/polkit-set-default-helper
+  chmod u+s usr/lib/PolicyKit/polkit-set-default-helper
+
+  for i in polkit-read-auth-helper polkit-revoke-helper polkit-grant-helper polkit-explicit-grant-helper; do
+    chgrp policykit usr/lib/PolicyKit/$i
+    chmod g+s usr/lib/PolicyKit/$i
+  done
+
+  chgrp policykit usr/lib/PolicyKit/polkit-grant-helper-pam
+  chmod u+s usr/lib/PolicyKit/polkit-grant-helper-pam
+}
+
+post_upgrade() {
+  post_install
+}
+
+post_remove() {
+  usr/sbin/userdel policykit &>/dev/null
+  usr/sbin/groupdel policykit &>/dev/null
+}
diff --git a/abs/extra-testing/policykit/polkit.pam b/abs/extra-testing/policykit/polkit.pam
new file mode 100644
index 0000000..04f53e0
--- /dev/null
+++ b/abs/extra-testing/policykit/polkit.pam
@@ -0,0 +1,7 @@
+auth            requisite       pam_nologin.so
+auth            required        pam_env.so
+auth            required        pam_unix.so
+account         required        pam_unix.so
+session         required        pam_limits.so
+session         required        pam_unix.so
+password        required        pam_unix.so
diff --git a/abs/extra-testing/pycairo/PKGBUILD b/abs/extra-testing/pycairo/PKGBUILD
new file mode 100644
index 0000000..507cd3d
--- /dev/null
+++ b/abs/extra-testing/pycairo/PKGBUILD
@@ -0,0 +1,21 @@
+# $Id: PKGBUILD 22071 2008-12-21 16:30:10Z jgc $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=pycairo
+pkgver=1.8.0
+pkgrel=1
+pkgdesc="Python bindings for the cairo graphics library"
+arch=(i686 x86_64)
+license=('LGPL' 'MPL')
+depends=('python' 'cairo>=1.8.6')
+options=('!libtool')
+source=(http://cairographics.org/releases/${pkgname}-${pkgver}.tar.gz)
+url="http://www.cairographics.org/"
+md5sums=('847f5377c32228a656819f5bd18eb6b4')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./configure --prefix=/usr || return 1
+  make || return 1
+  make DESTDIR="${pkgdir}" install || return 1
+}
diff --git a/abs/extra-testing/pygobject/PKGBUILD b/abs/extra-testing/pygobject/PKGBUILD
new file mode 100644
index 0000000..e6e4548
--- /dev/null
+++ b/abs/extra-testing/pygobject/PKGBUILD
@@ -0,0 +1,21 @@
+# $Id: PKGBUILD 16706 2008-10-22 02:32:50Z allan $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=pygobject
+pkgver=2.15.4
+pkgrel=2
+pkgdesc="Python bindings for GObject"
+arch=(i686 x86_64)
+license=('LGPL')
+depends=('python>=2.5.2-5' 'glib2>=2.18.1')
+source=(http://ftp.gnome.org/pub/gnome/sources/pygobject/2.15/${pkgname}-${pkgver}.tar.bz2)
+options=('!libtool')
+url="http://www.pygtk.org/"
+md5sums=('df59affe5b8fd7148506c3473d479868')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./configure --prefix=/usr || return 1
+  make || return 1
+  make DESTDIR="${pkgdir}" install || return 1
+}
diff --git a/abs/extra-testing/pygtk/PKGBUILD b/abs/extra-testing/pygtk/PKGBUILD
new file mode 100644
index 0000000..434af1c
--- /dev/null
+++ b/abs/extra-testing/pygtk/PKGBUILD
@@ -0,0 +1,23 @@
+# $Id: PKGBUILD 16726 2008-10-22 02:50:46Z allan $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
+
+pkgname=pygtk
+pkgver=2.13.0
+pkgrel=2
+pkgdesc="Python bindings for the GTK widget set"
+arch=(i686 x86_64)
+license=('LGPL')
+depends=('libglade>=2.6.3' 'pycairo>=1.6.4' 'pygobject>=2.15.4' 'python-numeric>=24.2-2')
+options=('!libtool')
+url="http://www.pygtk.org/"
+source=(http://ftp.gnome.org/pub/gnome/sources/pygtk/2.13/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('e1513921bfd3790b456899c483fceaea')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./configure --prefix=/usr || return 1
+  make || return 1
+  make DESTDIR="${pkgdir}" install || return 1
+  install -m644 gtk/gtk-extrafuncs.defs "${pkgdir}/usr/share/pygtk/2.0/defs/" || return 1
+}
diff --git a/abs/extra-testing/pyorbit/PKGBUILD b/abs/extra-testing/pyorbit/PKGBUILD
new file mode 100644
index 0000000..ac9f7c0
--- /dev/null
+++ b/abs/extra-testing/pyorbit/PKGBUILD
@@ -0,0 +1,22 @@
+# $Id: PKGBUILD 16716 2008-10-22 02:39:42Z allan $
+# Mantainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=pyorbit
+pkgver=2.24.0
+pkgrel=2
+pkgdesc="Python bindings for ORBit2"
+arch=(i686 x86_64)
+license=('LGPL')
+url="http://www.pygtk.org"
+depends=('python>=2.5.2' 'orbit2>=2.14.16')
+makedepends=('pkgconfig')
+options=('!libtool')
+source=(http://ftp.gnome.org/pub/GNOME/sources/pyorbit/2.24/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('574593815e75ee6e98062c75d6d1581f')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./configure --prefix=/usr || return 1
+  make || return 1
+  make DESTDIR="${pkgdir}" install
+}
diff --git a/abs/extra-testing/xcb-proto/PKGBUILD b/abs/extra-testing/xcb-proto/PKGBUILD
new file mode 100644
index 0000000..e59e26b
--- /dev/null
+++ b/abs/extra-testing/xcb-proto/PKGBUILD
@@ -0,0 +1,23 @@
+# $Id: PKGBUILD 17316 2008-10-28 12:25:37Z douglas $
+# Maintainer: Alexander Baldeck <alexander@archlinux.org>
+# Contributor: Jan de Groot <jgc@archlinux.org>
+
+pkgname=xcb-proto
+pkgver=1.2
+pkgrel=2
+pkgdesc="XML-XCB protocol descriptions"
+arch=(i686 x86_64)
+url="http://xcb.freedesktop.org/"
+license=('custom')
+makedepends=('python' 'libxml2')
+source=(${url}/dist/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('09f912486d8a2353bb4b99ddc28ba3c7')
+
+build() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+  ./configure --prefix=/usr || return 1
+  make || return 1
+  make DESTDIR=${pkgdir} install || return 1
+  install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname}
+  install -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/ || return 1
+}
diff --git a/abs/extra-testing/xcb-util/PKGBUILD b/abs/extra-testing/xcb-util/PKGBUILD
new file mode 100644
index 0000000..734f57d
--- /dev/null
+++ b/abs/extra-testing/xcb-util/PKGBUILD
@@ -0,0 +1,23 @@
+# $Id: $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Contributor: Andrea Scarpino <bash.lnx@gmail.com>
+
+pkgname=xcb-util
+pkgver=0.3.2
+pkgrel=1
+pkgdesc="Utility libraries for XC Binding"
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://xcb.freedesktop.org"
+depends=('libxcb>=1.1.90.1')
+makedepends=('gperf')
+options=('!libtool')
+source=(http://xcb.freedesktop.org/dist/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('fa41a147f5a63b01207cfd975fecc45c')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./configure --prefix=/usr --disable-static || return 1
+  make || return 1
+  make DESTDIR="${pkgdir}" install || return 1
+}
-- 
cgit v0.12

