summaryrefslogtreecommitdiff
path: root/community-testing
diff options
context:
space:
mode:
Diffstat (limited to 'community-testing')
-rw-r--r--community-testing/avr-gdb/PKGBUILD50
-rw-r--r--community-testing/blueman/PKGBUILD48
-rw-r--r--community-testing/blueman/blueman.install11
-rw-r--r--community-testing/cython/PKGBUILD38
-rw-r--r--community-testing/dee/PKGBUILD34
-rw-r--r--community-testing/duplicity/PKGBUILD36
-rw-r--r--community-testing/duplicity/botobackend.patch13
-rw-r--r--community-testing/duplicity/duplicity-0.6.17-fix-memleak.patch29
-rw-r--r--community-testing/gcompris/PKGBUILD36
-rw-r--r--community-testing/gigi/PKGBUILD9
-rw-r--r--community-testing/guake/PKGBUILD41
-rw-r--r--community-testing/guake/guake-fix-notification.patch42
-rw-r--r--community-testing/guake/guake.install22
-rw-r--r--community-testing/gwibber/PKGBUILD31
-rw-r--r--community-testing/gwibber/gwibber.install12
-rw-r--r--community-testing/ibus/PKGBUILD40
-rw-r--r--community-testing/ibus/ibus.install29
-rw-r--r--community-testing/ktoblzcheck/PKGBUILD30
-rw-r--r--community-testing/ktoblzcheck/ktoblzcheck-python3.patch57
-rw-r--r--community-testing/luxrays/PKGBUILD37
-rw-r--r--community-testing/luxrender/PKGBUILD50
-rw-r--r--community-testing/mezogis/ChangeLog3
-rw-r--r--community-testing/mezogis/PKGBUILD26
-rw-r--r--community-testing/neatx/PKGBUILD39
-rw-r--r--community-testing/neatx/constants.archlinux.patch42
-rw-r--r--community-testing/neatx/neatx.install18
-rw-r--r--community-testing/onboard/PKGBUILD27
-rw-r--r--community-testing/onboard/onboard.install13
-rw-r--r--community-testing/python-bsddb/LICENSE19
-rw-r--r--community-testing/python-bsddb/PKGBUILD49
-rw-r--r--community-testing/python-gnupginterface/PKGBUILD21
-rw-r--r--community-testing/python-mpi4py/PKGBUILD43
-rw-r--r--community-testing/python-numarray/LICENSE9
-rw-r--r--community-testing/python-numarray/PKGBUILD33
-rw-r--r--community-testing/python-openbabel/PKGBUILD38
-rw-r--r--community-testing/python-psutil/PKGBUILD43
-rw-r--r--community-testing/python-psycopg1/PKGBUILD34
-rw-r--r--community-testing/python-psycopg2/ChangeLog25
-rw-r--r--community-testing/python-psycopg2/PKGBUILD35
-rw-r--r--community-testing/python-pymongo/PKGBUILD37
-rw-r--r--community-testing/python-pyopencl/LICENSE.txt20
-rw-r--r--community-testing/python-pyopencl/PKGBUILD61
-rw-r--r--community-testing/python-pyproj/PKGBUILD49
-rw-r--r--community-testing/python-pyxattr/PKGBUILD33
-rw-r--r--community-testing/python-pyzmq/PKGBUILD20
-rw-r--r--community-testing/python-scipy/PKGBUILD82
-rw-r--r--community-testing/python-sqlalchemy/PKGBUILD44
-rw-r--r--community-testing/python-yaml/PKGBUILD36
-rw-r--r--community-testing/python-yaml/python-yaml.install7
-rw-r--r--community-testing/python2-cjson/PKGBUILD19
-rw-r--r--community-testing/python2-galago/PKGBUILD22
-rw-r--r--community-testing/python2-gnutls/PKGBUILD23
-rw-r--r--community-testing/python2-gnutls/gnutls3.patch271
-rw-r--r--community-testing/python2-imaging/PKGBUILD50
-rw-r--r--community-testing/python2-lcms/PKGBUILD37
-rw-r--r--community-testing/python2-m2crypto/PKGBUILD27
-rw-r--r--community-testing/python2-m2crypto/openssl1.patch531
-rw-r--r--community-testing/python2-pybluez/PKGBUILD23
-rw-r--r--community-testing/python2-pyxmpp/PKGBUILD20
-rw-r--r--community-testing/python2-simplejson/PKGBUILD30
-rw-r--r--community-testing/python2-simplejson/python2-simplejson.changelog20
-rw-r--r--community-testing/python2-vorbissimple/PKGBUILD21
-rw-r--r--community-testing/sdcc/PKGBUILD34
-rw-r--r--community-testing/tix/PKGBUILD46
-rw-r--r--community-testing/tix/tcl-tk-path.patch22
-rw-r--r--community-testing/ubuntuone-client/1339_1338.diff57
-rw-r--r--community-testing/ubuntuone-client/PKGBUILD46
-rw-r--r--community-testing/ubuntuone-client/fix-notify-hint.patch20
-rw-r--r--community-testing/ubuntuone-client/ubuntuone-client.install11
-rw-r--r--community-testing/uniconvertor/PKGBUILD29
-rw-r--r--community-testing/virtkey/PKGBUILD46
-rw-r--r--community-testing/znc/PKGBUILD50
72 files changed, 3054 insertions, 2 deletions
diff --git a/community-testing/avr-gdb/PKGBUILD b/community-testing/avr-gdb/PKGBUILD
new file mode 100644
index 000000000..2dbb56ee0
--- /dev/null
+++ b/community-testing/avr-gdb/PKGBUILD
@@ -0,0 +1,50 @@
+# Maintainer: schuay <jakob.gruber@gmail.com>
+# Contributor: Ivan Sichmann Freitas <ivansichfreitas at gmail dot com>
+# Contributor: Laszlo Papp <djszapi2 at gmail dot com>
+# Contributor: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
+# Contributor: Vladimir Cerny <blackvladimir@gmail.com>
+# Contributor: 4javier <4javieregATgmailDOTcom>
+
+pkgname=avr-gdb
+_pkgname=gdb
+pkgver=7.4
+pkgrel=2
+pkgdesc="The GNU Debugger for AVR"
+arch=('i686' 'x86_64')
+url="http://www.gnu.org/software/gdb/"
+license=('GPL3')
+depends=('python')
+options=('!libtool')
+source=(http://ftp.gnu.org/gnu/gdb/${_pkgname}-${pkgver}.tar.bz2)
+md5sums=('95a9a8305fed4d30a30a6dc28ff9d060')
+
+build() {
+ cd ${srcdir}/${_pkgname}-${pkgver}
+
+ unset LDFLAGS
+ export CFLAGS="-O2 -pipe"
+ export CXXFLAGS="$CFLAGS"
+
+ ./configure --prefix=/usr \
+ --target=avr \
+ --disable-nls \
+ --enable-languages=c,c++ \
+ --infodir=/usr/share/info \
+ --libdir=/usr/lib \
+ --program-prefix=avr- \
+ --libexecdir=/usr/lib \
+ --mandir=/usr/share/man \
+ --with-system-readline
+ make
+}
+
+package() {
+ cd ${srcdir}/${_pkgname}-${pkgver}
+
+ make DESTDIR=${pkgdir} install
+
+ rm -f ${pkgdir}/usr/lib/libiberty.a
+ rm -rf ${pkgdir}/usr/share/info
+ rm -rf ${pkgdir}/usr/share/gdb
+ rm -rf ${pkgdir}/usr/include/gdb
+}
diff --git a/community-testing/blueman/PKGBUILD b/community-testing/blueman/PKGBUILD
new file mode 100644
index 000000000..cb4ae826b
--- /dev/null
+++ b/community-testing/blueman/PKGBUILD
@@ -0,0 +1,48 @@
+# $Id: PKGBUILD 78034 2012-10-16 11:49:44Z allan $
+# Maintainer : Ionut Biru <ibiru@archlinux.org
+# Contributor: Abhishek Dasgupta <abhidg@gmail.com>
+
+pkgname=blueman
+pkgver=1.23
+pkgrel=5
+pkgdesc="GTK+ bluetooth manager"
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://blueman-project.org"
+depends=('python2-notify' 'bluez' 'python2-dbus' 'gtk2' 'python2-gobject2' 'startup-notification'
+ 'obex-data-server' 'polkit-gnome' 'xdg-utils' 'hicolor-icon-theme' 'libpulse'
+ 'notification-daemon')
+makedepends=('pyrex' 'intltool')
+optdepends=('dnsmasq: For creating PAN network'
+ 'gconf: For gconf configuration support'
+ 'pulseaudio: To use the pulseaudio plugin'
+ 'notification-daemon: for desktop notifications'
+ 'libnotify: for desktop notifications'
+ 'modemmanager: for modem management service'
+ 'gnome-icon-theme: icon theme')
+options=('!libtool')
+install=$pkgname.install
+source=(http://download.tuxfamily.org/blueman/${pkgname}-${pkgver}.tar.gz)
+md5sums=('f0bee59589f4c23e35bf08c2ef8acaef')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ export PYTHON=python2
+ for file in apps/blueman*; do
+ sed -i 's_#!/usr/bin/python_#!/usr/bin/python2_' $file
+ done
+ sed -i 's|"blueman-tray"|"blueman"|' blueman/plugins/applet/StatusIcon.py
+
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --libexecdir=/usr/lib/blueman \
+ --with-no-runtime-deps-check
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ echo "OnlyShowIn=GNOME;XFCE;" >> ${pkgdir}/etc/xdg/autostart/blueman.desktop
+}
diff --git a/community-testing/blueman/blueman.install b/community-testing/blueman/blueman.install
new file mode 100644
index 000000000..8bf021487
--- /dev/null
+++ b/community-testing/blueman/blueman.install
@@ -0,0 +1,11 @@
+post_install() {
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ post_install $1
+}
diff --git a/community-testing/cython/PKGBUILD b/community-testing/cython/PKGBUILD
new file mode 100644
index 000000000..3e20aed0f
--- /dev/null
+++ b/community-testing/cython/PKGBUILD
@@ -0,0 +1,38 @@
+# $Id: PKGBUILD 78039 2012-10-16 11:50:02Z allan $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Igor Scabini <furester @ gmail.com>
+
+pkgname=('cython' 'cython2')
+pkgbase=cython
+pkgver=0.17
+pkgrel=2
+pkgdesc="C-Extensions for Python "
+arch=(i686 x86_64)
+url="http://www.cython.org"
+license=('APACHE')
+makedepends=('python-distribute' 'python2-distribute')
+source=("http://cython.org/release/Cython-$pkgver.tar.gz")
+md5sums=('d6b669956b25babf7dd86db0a98539e4')
+
+build() {
+ true
+}
+
+package_cython() {
+ depends=('python')
+
+ cd $srcdir/Cython-$pkgver
+ python setup.py install --root=$pkgdir
+
+ sed -i 's|#!.*python|#!/usr/bin/python3|' $pkgdir/usr/bin/*
+}
+
+package_cython2() {
+ depends=('python2')
+
+ cd $srcdir/Cython-$pkgver
+ python2 setup.py install --root=$pkgdir
+
+ mv $pkgdir/usr/bin/cygdb $pkgdir/usr/bin/cygdb2
+ mv $pkgdir/usr/bin/cython $pkgdir/usr/bin/cython2
+}
diff --git a/community-testing/dee/PKGBUILD b/community-testing/dee/PKGBUILD
new file mode 100644
index 000000000..577c0efdb
--- /dev/null
+++ b/community-testing/dee/PKGBUILD
@@ -0,0 +1,34 @@
+# $Id: PKGBUILD 78040 2012-10-16 11:50:05Z allan $
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+
+pkgname=dee
+pkgver=1.0.14
+pkgrel=2
+pkgdesc="Library to provide objects allowing to create Model-View-Controller type programs across DBus"
+arch=('i686' 'x86_64')
+url="https://launchpad.net/dee"
+license=('LGPL')
+depends=('glib2' 'icu')
+makedepends=('python2' 'gobject-introspection' 'vala')
+options=('!libtool')
+source=(http://launchpad.net/$pkgname/1.0/$pkgver/+download/$pkgname-$pkgver.tar.gz)
+md5sums=('473b4181e26538af0fb753255da7945c')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --disable-static --disable-tests \
+ PYTHON=python2
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make DESTDIR="$pkgdir/" install
+
+ # Install GI overrides for python 3 as well
+ install -dm755 "$pkgdir/usr/lib/python3.3/site-packages/gi/overrides"
+ ln -s ../../../../python2.7/site-packages/gi/overrides/Dee.py "$pkgdir/usr/lib/python3.3/site-packages/gi/overrides/Dee.py"
+}
diff --git a/community-testing/duplicity/PKGBUILD b/community-testing/duplicity/PKGBUILD
new file mode 100644
index 000000000..fdfac734f
--- /dev/null
+++ b/community-testing/duplicity/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id: PKGBUILD 78042 2012-10-16 11:50:16Z allan $
+# Maintainer: Kaiting Chen <kaitocracy@gmail.com>
+# Contributor: Aaron Schaefer <aaron@elasticdog.com>
+
+pkgname=duplicity
+pkgver=0.6.19
+pkgrel=2
+pkgdesc='A utility for encrypted, bandwidth-efficient backups using the rsync algorithm.'
+arch=('i686' 'x86_64')
+url='http://www.nongnu.org/duplicity/'
+license=('GPL')
+depends=('librsync' 'ncftp' 'python2' 'python2-boto' 'python2-gnupginterface' 'python2-paramiko')
+source=("http://savannah.nongnu.org/download/$pkgname/$pkgname-$pkgver.tar.gz"{,.sig})
+md5sums=('c88122d0b651f84f3bfa42e55591c36b'
+ 'df672ed47b8eb4fd8ffa99711623b6b5')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ # python2 fix
+ for file in $(find . -name '*.py' -print); do
+ sed -i 's_^#!.*/usr/bin/python_#!/usr/bin/python2_' $file
+ sed -i 's_^#!.*/usr/bin/env.*python_#!/usr/bin/env python2_' $file
+ done
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ python2 setup.py install --root="$pkgdir" --optimize=1
+
+ # fix broken documentation permissions until upstream does (FS#27301)
+ chmod 644 "$pkgdir/usr/share/man/man1/$pkgname.1"
+ chmod 644 "$pkgdir/usr/share/man/man1/rdiffdir.1"
+ chmod 644 "$pkgdir/usr/share/doc/$pkgname-$pkgver"/*
+}
diff --git a/community-testing/duplicity/botobackend.patch b/community-testing/duplicity/botobackend.patch
new file mode 100644
index 000000000..302e1e2b1
--- /dev/null
+++ b/community-testing/duplicity/botobackend.patch
@@ -0,0 +1,13 @@
+=== modified file duplicity/backends/botobackend.py
+--- duplicity/backends/botobackend.py 2011-11-25 17:47:57 +0000
++++ duplicity/backends/botobackend.py 2011-12-01 16:15:25 +0000
+@@ -26,6 +26,6 @@
+ if sys.version_info[:2] < (2,6):
+ print "Sorry, S3 multiprocessing requires version 2.6 or later of python"
+ sys.exit(1)
+- import _boto_multi.py
++ import _boto_multi
+ else:
+- import _boto_single.py
++ import _boto_single
+
diff --git a/community-testing/duplicity/duplicity-0.6.17-fix-memleak.patch b/community-testing/duplicity/duplicity-0.6.17-fix-memleak.patch
new file mode 100644
index 000000000..1c4c8daff
--- /dev/null
+++ b/community-testing/duplicity/duplicity-0.6.17-fix-memleak.patch
@@ -0,0 +1,29 @@
+=== modified file 'duplicity/util.py'
+--- duplicity/util.py 2011-08-23 18:14:17 +0000
++++ duplicity/util.py 2012-01-20 21:50:01 +0000
+@@ -71,6 +71,10 @@
+ else:
+ raise
+
++class BlackHoleList(list):
++ def append(self, x):
++ pass
++
+ class FakeTarFile:
+ debug = 0
+ def __iter__(self):
+@@ -83,7 +87,12 @@
+ # yet. So we want to ignore ReadError exceptions, which are used to signal
+ # this.
+ try:
+- return tarfile.TarFile("arbitrary", mode, fp)
++ tf = tarfile.TarFile("arbitrary", mode, fp)
++ # Now we cause TarFile to not cache TarInfo objects. It would end up
++ # consuming a lot of memory over the lifetime of our long-lasting
++ # signature files otherwise.
++ tf.members = BlackHoleList()
++ return tf
+ except tarfile.ReadError:
+ return FakeTarFile()
+
+
diff --git a/community-testing/gcompris/PKGBUILD b/community-testing/gcompris/PKGBUILD
new file mode 100644
index 000000000..ef43565a4
--- /dev/null
+++ b/community-testing/gcompris/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id: PKGBUILD 78045 2012-10-16 11:50:27Z allan $
+# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
+# Contributor: Daniel Isenmann <daniel.isenmann [at] gmx.de>
+
+pkgname=gcompris
+pkgver=12.05
+pkgrel=2
+pkgdesc="Educational software suite comprising of numerous activities for children aged 2 to 10"
+arch=('i686' 'x86_64')
+url="http://gcompris.net/"
+license=('GPL3')
+depends=('pygtk' 'pyxml' 'librsvg' 'gnet' 'python2-pysqlite'
+ 'gstreamer0.10-base-plugins')
+optdepends=('gnucap: for computer simulation within the electricity activity'
+ 'tuxpaint: for the painting activity'
+ 'gnuchess: for the chess activity')
+makedepends=('texinfo' 'texi2html' 'intltool' 'gettext' 'gnuchess')
+options=('!libtool')
+source=(http://downloads.sourceforge.net/project/$pkgname/$pkgver/$pkgname-$pkgver.tar.bz2)
+sha256sums=('a4e9b9d04fd405c4b9ddc30f84a5f521f7ad1966c5f66c3e873bb84269ef55d0')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ depends+=('gcompris-data')
+
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install-exec
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community-testing/gigi/PKGBUILD b/community-testing/gigi/PKGBUILD
index 4a5bb74b8..860c05544 100644
--- a/community-testing/gigi/PKGBUILD
+++ b/community-testing/gigi/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 77537 2012-10-11 22:30:20Z lcarlier $
+# $Id: PKGBUILD 78047 2012-10-16 11:50:33Z allan $
# Maintainer: Alexander Rødseth <rodseth@gmail.com>
# Contributor: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: fana-m <geminin@gmx.net>
@@ -7,7 +7,7 @@
pkgname=gigi
pkgver=0.8.0
-pkgrel=13
+pkgrel=14
_fixedrevision=5208
pkgdesc="Small, efficient and feature rich GUI for C++ and OpenGL (freeorion fork)"
url="http://gigi.sourceforge.net/"
@@ -66,6 +66,11 @@ package() {
sed -i "s:$srcdir:/:g" "$f"
done
+ msg2 "Fixing python3 shebang..."
+ for f in `find "$pkgdir/usr" -name "*.py"`; do
+ sed -i "s:/env python:/python3:g" "$f"
+ done
+
msg2 "Packaging license..."
install -Dm 644 COPYING \
"$pkgdir/usr/share/licenses/$pkgname/COPYING"
diff --git a/community-testing/guake/PKGBUILD b/community-testing/guake/PKGBUILD
new file mode 100644
index 000000000..eda3e0c4d
--- /dev/null
+++ b/community-testing/guake/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 78050 2012-10-16 11:50:47Z allan $
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+# Contributor: Angel Velasquez <angvp@archlinux.org>
+# Contributor: Wilson Pinto Júnior (N3RD3X) <n3rd3x@linuxmail.org>
+
+pkgname=guake
+pkgver=0.4.4
+pkgrel=2
+pkgdesc='Drop-down terminal for GNOME'
+arch=('i686' 'x86_64')
+url="http://guake.org/"
+license=('GPL')
+depends=('python2-notify' 'vte' 'python2-gconf' 'python2-dbus' 'python2-xdg' 'hicolor-icon-theme' 'xdg-utils')
+makedepends=('intltool')
+options=('!libtool')
+install=$pkgname.install
+source=(http://guake.org/files/$pkgname-$pkgver.tar.gz
+ guake-fix-notification.patch)
+md5sums=('532adada29b8f0bb79dc15904aa6b70c'
+ '0b57227e6869dd84dd4fb0794ed0d082')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ sed -i 's|schemadir = $(sysconfdir)/gconf/schemas|schemadir = $(GCONF_SCHEMA_FILE_DIR)|' data/Makefile.in
+ sed -i 's|/usr/bin/env python|/usr/bin/python2|' src/{guake{,-prefs},prefs.py}
+
+ # http://guake.org/ticket/416
+ patch -Np1 -i "$srcdir/guake-fix-notification.patch"
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --disable-static --disable-schemas-install \
+ --with-gconf-schema-file-dir=/usr/share/gconf/schemas \
+ PYTHON=python2
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make DESTDIR="$pkgdir" install
+}
diff --git a/community-testing/guake/guake-fix-notification.patch b/community-testing/guake/guake-fix-notification.patch
new file mode 100644
index 000000000..847dac10e
--- /dev/null
+++ b/community-testing/guake/guake-fix-notification.patch
@@ -0,0 +1,42 @@
+--- a/src/guake 2011-02-09 20:00:35.000000000 +0100
++++ b/src/guake 2012-02-25 00:55:28.513075769 +0100
+@@ -46,7 +46,10 @@
+ TERMINAL_MATCH_EXPRS, TERMINAL_MATCH_TAGS, \
+ ALIGN_LEFT, ALIGN_RIGHT, ALIGN_CENTER
+
+-pynotify.init('Guake!')
++popup_works = True
++if not pynotify.init('Guake!') or pynotify.get_server_info() == None :
++ popup_works = False
++ print "WARNING: could not use popup notification"
+
+ GNOME_FONT_PATH = '/desktop/gnome/interface/monospace_font_name'
+
+@@ -637,7 +640,12 @@
+ 'Please use Guake Preferences dialog to choose another '
+ 'key (The trayicon was enabled)') % label, filename)
+ self.client.set_bool(KEY('/general/use_trayicon'), True)
+- notification.show()
++ if popup_works :
++ notification.show()
++ else :
++ print _('A problem happened when binding <b>%s</b> key.\n'
++ 'Please use Guake Preferences dialog to choose another '
++ 'key (The trayicon was enabled)') % label
+
+ elif self.client.get_bool(KEY('/general/use_popup')):
+ # Pop-up that shows that guake is working properly (if not
+@@ -646,7 +654,11 @@
+ _('Guake!'),
+ _('Guake is now running,\n'
+ 'press <b>%s</b> to use it.') % label, filename)
+- notification.show()
++ if popup_works :
++ notification.show()
++ else :
++ print _('Guake is now running,\n'
++ 'press <b>%s</b> to use it.') % label
+
+ def execute_command(self, command, tab=None):
+ """Execute the `command' in the `tab'. If tab is None, the
+
diff --git a/community-testing/guake/guake.install b/community-testing/guake/guake.install
new file mode 100644
index 000000000..8084333b1
--- /dev/null
+++ b/community-testing/guake/guake.install
@@ -0,0 +1,22 @@
+pkgname=guake
+
+post_install() {
+ usr/sbin/gconfpkg --install ${pkgname}
+ xdg-icon-resource forceupdate
+}
+
+pre_upgrade() {
+ pre_remove $1
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ usr/sbin/gconfpkg --uninstall ${pkgname}
+}
+
+post_remove() {
+ xdg-icon-resource forceupdate
+}
diff --git a/community-testing/gwibber/PKGBUILD b/community-testing/gwibber/PKGBUILD
new file mode 100644
index 000000000..d6c663411
--- /dev/null
+++ b/community-testing/gwibber/PKGBUILD
@@ -0,0 +1,31 @@
+# $Id: PKGBUILD 78051 2012-10-16 11:50:52Z allan $
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+
+pkgname=gwibber
+pkgver=3.4.2
+pkgrel=2
+pkgdesc="Microblogging client for GNOME, which supports Twitter, Identi.ca, StatusNet, Facebook, Flickr, Digg, FriendFeed and Qaiku"
+arch=('i686' 'x86_64')
+url="http://gwibber.com/"
+license=('GPL')
+depends=('libgee' 'libnotify' 'dee>=1.0.0' 'json-glib' 'gtkspell3' 'python2-gobject' 'libwnck3' 'libwebkit3' 'libgnome-keyring>=3.3' 'python2-dbus' 'python2-httplib2' 'python2-egenix-mx-base' 'python2-oauth' 'python2-imaging' 'python2-xdg' 'dconf' 'hicolor-icon-theme' 'xdg-utils')
+makedepends=('intltool' 'vala>=0.15.0')
+options=('!libtool')
+install=$pkgname.install
+source=(http://launchpad.net/$pkgname/${pkgver%.*}/$pkgver/+download/$pkgname-$pkgver.tar.gz)
+md5sums=('0ac544f8e626547312b9d0da0b57358e')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ find . -type f | xargs sed -i 's@^#!.*python$@#!/usr/bin/python2@'
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --disable-static --disable-schemas-compile --disable-unity
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make DESTDIR="$pkgdir" install
+}
diff --git a/community-testing/gwibber/gwibber.install b/community-testing/gwibber/gwibber.install
new file mode 100644
index 000000000..d973d53f7
--- /dev/null
+++ b/community-testing/gwibber/gwibber.install
@@ -0,0 +1,12 @@
+post_install() {
+ xdg-icon-resource forceupdate
+ glib-compile-schemas usr/share/glib-2.0/schemas
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ post_install $1
+}
diff --git a/community-testing/ibus/PKGBUILD b/community-testing/ibus/PKGBUILD
new file mode 100644
index 000000000..63dd39df2
--- /dev/null
+++ b/community-testing/ibus/PKGBUILD
@@ -0,0 +1,40 @@
+# $Id: PKGBUILD 78054 2012-10-16 11:51:03Z allan $
+# Contributor: Rainy <rainylau(at)gmail(dot)com>
+# Contributor: Lee.MaRS <leemars at gmail dot com>
+# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
+# Maintainer: Brad Fanella <bradfanella@archlinux.us>
+
+pkgname=ibus
+pkgver=1.4.2
+pkgrel=2
+pkgdesc="Next Generation Input Bus for Linux"
+arch=('i686' 'x86_64')
+url="http://ibus.googlecode.com"
+license=('LGPL')
+depends=('python2-dbus' 'gconf' 'dconf' 'python2-xdg' \
+ 'iso-codes' 'librsvg' 'python2-notify' 'hicolor-icon-theme')
+makedepends=('intltool' 'gobject-introspection')
+optdepends=('notification-daemon')
+options=('!libtool')
+install=ibus.install
+source=(http://ibus.googlecode.com/files/${pkgname}-${pkgver}.tar.gz)
+sha1sums=('a2d11d8bb64761691df918e9e50f0b35c711760d')
+
+build() {
+ cd ${pkgname}-${pkgver}
+ export PYTHON=python2
+ ./configure \
+ --prefix=/usr \
+ --libexecdir=/usr/lib/ibus \
+ --sysconfdir=/etc \
+ --with-gconf-schema-file-dir=/usr/share/gconf/schemas \
+ --enable-gtk3
+ make
+}
+
+package() {
+ cd ${pkgname}-${pkgver}
+ make DESTDIR="${pkgdir}" install
+ install -d "${pkgdir}/etc/xdg/autostart"
+ ln -s /usr/share/applications/ibus.desktop "${pkgdir}/etc/xdg/autostart/ibus.desktop"
+}
diff --git a/community-testing/ibus/ibus.install b/community-testing/ibus/ibus.install
new file mode 100644
index 000000000..f44e3be1d
--- /dev/null
+++ b/community-testing/ibus/ibus.install
@@ -0,0 +1,29 @@
+post_install() {
+ gtk-query-immodules-2.0 > etc/gtk-2.0/gtk.immodules
+
+ gconfpkg --install ibus
+ gtk-update-icon-cache -fq -t usr/share/icons/hicolor
+
+ # update for gkt3
+ gtk-query-immodules-3.0 --update-cache
+}
+
+pre_upgrade() {
+ pre_remove $1
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ gconfpkg --uninstall ibus
+}
+
+post_remove() {
+ gtk-query-immodules-2.0 > etc/gtk-2.0/gtk.immodules
+ gtk-update-icon-cache -fq -t usr/share/icons/hicolor
+
+ # update for gkt3
+ gtk-query-immodules-3.0 --update-cache
+}
diff --git a/community-testing/ktoblzcheck/PKGBUILD b/community-testing/ktoblzcheck/PKGBUILD
new file mode 100644
index 000000000..da749e7bd
--- /dev/null
+++ b/community-testing/ktoblzcheck/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 78059 2012-10-16 11:51:20Z allan $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Philipp Sandhaus <philipp.sandhaus@gmx.de>
+
+pkgname=ktoblzcheck
+pkgver=1.39
+pkgrel=3
+pkgdesc="A library to check account numbers and bank codes of German banks"
+arch=(i686 x86_64)
+url="http://ktoblzcheck.sourceforge.net"
+options=('!libtool')
+license=("LGPL")
+depends=('gcc-libs' 'python')
+optdepends=('perl')
+source=(http://downloads.sourceforge.net/sourceforge/ktoblzcheck/ktoblzcheck-$pkgver.tar.gz
+ ktoblzcheck-python3.patch)
+md5sums=('ef5efd6e2c31aaf6405060ec477c200c'
+ 'a81a697bb3aaeffb7fac0ad7d9166e3f')
+
+build() {
+ cd "$srcdir/ktoblzcheck-$pkgver"
+ ./configure --prefix=/usr
+ patch -p1 <$srcdir/ktoblzcheck-python3.patch
+ make
+}
+
+package() {
+ cd "$srcdir/ktoblzcheck-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
diff --git a/community-testing/ktoblzcheck/ktoblzcheck-python3.patch b/community-testing/ktoblzcheck/ktoblzcheck-python3.patch
new file mode 100644
index 000000000..5bfc53275
--- /dev/null
+++ b/community-testing/ktoblzcheck/ktoblzcheck-python3.patch
@@ -0,0 +1,57 @@
+diff -ur ktoblzcheck-1.28/src/python/ktoblzcheck.py ktoblzcheck-1.28.my/src/python/ktoblzcheck.py
+--- ktoblzcheck-1.28/src/python/ktoblzcheck.py 2008-08-12 16:48:54.000000000 +0000
++++ ktoblzcheck-1.28.my/src/python/ktoblzcheck.py 2010-09-20 09:08:36.000000000 +0000
+@@ -197,35 +197,35 @@
+
+ def test():
+ a = AccountNumberCheck()
+- print 'Number of Banks:', a.bankCount
+- print 'find 20010020:', a.findBank('20010020')
+- print 'find 20010033:', a.findBank('20010033')
+- print 'check 20070024/9291394:', a.check('20070024','9291394')
+- print 'check 20070024/9291394:', a.check('20070024','9291394023')
+- print
++ print('Number of Banks:', a.bankCount)
++ print('find 20010020:', a.findBank('20010020'))
++ print('find 20010033:', a.findBank('20010033'))
++ print('check 20070024/9291394:', a.check('20070024','9291394'))
++ print('check 20070024/9291394:', a.check('20070024','9291394023'))
++ print()
+ ck = IbanCheck()
+ if not kto.IbanCheck_selftest(ck): # not publicly defined
+- print "Self-Test failed!"
++ print("Self-Test failed!")
+ raise SystemExit
+ s = " iban fr14 2004 1010 0505 0001 3m02 606"
+- print "test for iban :", s
++ print("test for iban :", s)
+ iban = Iban(s)
+- print "transmission form:", iban.transmissionForm()
++ print("transmission form:", iban.transmissionForm())
+ res = ck.check(iban)
+- print "check result :", res, "("+IbanCheck.resultText(res)+")"
+- print "printable form :", iban.printableForm()
+- print
+- print "expect bad checksum:"
++ print("check result :", res, "("+IbanCheck.resultText(res)+")")
++ print("printable form :", iban.printableForm())
++ print()
++ print("expect bad checksum:")
+ s = "FR1420041010050500013X02606"
+ res = ck.check(s)
+- print s + ":", res, "("+IbanCheck.resultText(res)+")"
+- print
++ print(s + ":", res, "("+IbanCheck.resultText(res)+")")
++ print()
+ s = "IBAN DE66 2007 0024 0929 1394 00"
+- print s
++ print(s)
+ s = Iban(s).transmissionForm()
+ start, end = ck.bic_position(s)
+- print "prefix, checksum, BIC, account:"
+- print ', '.join((s[:2], s[2:4], s[start:end], s[end:].lstrip('0')))
++ print("prefix, checksum, BIC, account:")
++ print(', '.join((s[:2], s[2:4], s[start:end], s[end:].lstrip('0'))))
+
+
+ if __name__ == '__main__':
diff --git a/community-testing/luxrays/PKGBUILD b/community-testing/luxrays/PKGBUILD
new file mode 100644
index 000000000..6bc26c17c
--- /dev/null
+++ b/community-testing/luxrays/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 78154 2012-10-16 13:53:31Z allan $
+# Maintainer: Lukas Jirkovsky <l.jirkovsky@gmail.com>
+pkgname=luxrays
+pkgver=1.1
+_pkgver=589aa5dac899
+pkgrel=1
+epoch=0
+pkgdesc="Accelerate the ray intersection process by using GPUs"
+arch=('i686' 'x86_64')
+url="http://www.luxrender.net/"
+license=('GPL')
+depends=('freeimage' 'freeglut' 'glew' 'libcl')
+makedepends=('cmake' 'boost' 'opencl-headers')
+source=(https://bitbucket.org/luxrender/luxrays/get/$_pkgver.tar.bz2)
+md5sums=('7513d71148fa14bc1779b816816580b9')
+
+build() {
+ cd "$srcdir/luxrender-$pkgname-$_pkgver"
+
+ export CXXFLAGS="$CXXFLAGS -lpthread"
+ cmake -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_SKIP_RPATH=ON \
+ -DLUXRAYS_DISABLE_OPENCL=OFF \
+ .
+ make
+}
+
+package() {
+ cd "$srcdir/luxrender-$pkgname-$_pkgver"
+
+ install -d -m755 "$pkgdir"/usr/{bin,include,lib}
+ install -m755 bin/* "$pkgdir"/usr/bin
+ install -m644 lib/* "$pkgdir"/usr/lib
+ cp -a include/luxrays "$pkgdir"/usr/include
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community-testing/luxrender/PKGBUILD b/community-testing/luxrender/PKGBUILD
new file mode 100644
index 000000000..01680e4f8
--- /dev/null
+++ b/community-testing/luxrender/PKGBUILD
@@ -0,0 +1,50 @@
+# $Id: PKGBUILD 78061 2012-10-16 11:51:31Z allan $
+# Maintainer: Lukas Jirkovsky <l.jirkovsky@gmail.com>
+# Initial contributor: flixie <69one@gmx.net>
+# Contributor: Imanol Celaya <ornitorrincos@archlinux-es.org>
+pkgname=luxrender
+pkgver=1.1
+_pkgver=4b4289cda943
+pkgrel=1
+pkgdesc="Rendering system for physically correct, unbiased image synthesis"
+arch=('i686' 'x86_64')
+url="http://www.luxrender.net/"
+license=('GPL')
+depends=('boost-libs' 'freeimage' 'openexr' 'libcl')
+optdepends=('luxblend25: Blender exporter' 'qt: Qt GUI' \
+ 'python: Python interface (pylux)'
+ 'nvidia-utils: OpenCL support for nVidia GPUs' \
+ 'amdstream: OpenCL support for AMD GPUs' \
+ 'intel-opencl-sdk: OpenCL support for Intel CPUs')
+makedepends=('cmake' 'boost' 'qt' "luxrays=$pkgver" 'python' 'opencl-headers')
+source=(https://bitbucket.org/luxrender/lux/get/$_pkgver.tar.bz2)
+md5sums=('accca65afdc4cc38db49a6e54f20e0f2')
+
+build() {
+ cd "$srcdir"/luxrender-lux-$_pkgver
+
+ # fix the installation
+ sed -i '/.*wxgui.*/ d' CMakeLists.txt
+
+ export CXXFLAGS="$CXXFLAGS -lpthread"
+ cmake -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLUXRAYS_DISABLE_OPENCL=OFF \
+ -DPYTHON_CUSTOM=ON \
+ -DPYTHON_LIBRARIES=/usr/lib/libpython3.3m.so \
+ -DPYTHON_INCLUDE_PATH=/usr/include/python3.3m/ \
+ .
+ make
+}
+
+package() {
+ cd "$srcdir"/luxrender-lux-$_pkgver
+ make DESTDIR="$pkgdir" install
+
+ # fix library path on x86_64
+ [ "$CARCH" = "x86_64" ] && mv "$pkgdir"/usr/lib64 "$pkgdir"/usr/lib
+
+ #install pylux
+ install -D -m644 pylux.so "$pkgdir"/usr/lib/python3.3/pylux.so
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community-testing/mezogis/ChangeLog b/community-testing/mezogis/ChangeLog
new file mode 100644
index 000000000..dba4cf7ec
--- /dev/null
+++ b/community-testing/mezogis/ChangeLog
@@ -0,0 +1,3 @@
+2007-06-27 tardo <tardo@nagi-fanboi.net>
+* Built for x86_64
+
diff --git a/community-testing/mezogis/PKGBUILD b/community-testing/mezogis/PKGBUILD
new file mode 100644
index 000000000..4e0f09c6c
--- /dev/null
+++ b/community-testing/mezogis/PKGBUILD
@@ -0,0 +1,26 @@
+# $Id: PKGBUILD 78132 2012-10-16 12:09:28Z allan $
+# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+# Contributor: William Rea <sillywilly@gmail.com>
+
+pkgname=mezogis
+pkgver=0.1.5
+pkgrel=6
+pkgdesc="A GIS application to query and analyse spatial data"
+arch=('i686' 'x86_64')
+url="http://www.mezogis.org"
+license=('GPL')
+depends=('pygtk' 'python2-geotypes' 'postgis')
+source=("http://www.mezogis.org/files/mezogis-$pkgver.tar.gz")
+md5sums=('1f886b849109a1a1bd3e165353b82368')
+
+package() {
+ cd $srcdir/mezogis-$pkgver
+
+ # python2 fix
+ for file in $(find . -name '*.py' -print); do
+ sed -i 's_#!.*/usr/bin/python_#!/usr/bin/python2_' $file
+ sed -i 's_#!.*/usr/bin/env.*python_#!/usr/bin/env python2_' $file
+ done
+
+ python2 setup.py install --root=$pkgdir
+}
diff --git a/community-testing/neatx/PKGBUILD b/community-testing/neatx/PKGBUILD
new file mode 100644
index 000000000..3146452f5
--- /dev/null
+++ b/community-testing/neatx/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 78062 2012-10-16 11:51:38Z allan $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Nicolas Doualot <packages@slubman.info>
+
+pkgname=neatx
+pkgver=0.3.1
+pkgrel=13
+pkgdesc="A free NX server by google"
+arch=('i686' 'x86_64')
+url="http://code.google.com/p/neatx/"
+license=('GPL')
+depends=('nxserver' 'python2-pexpect' 'python2-simplejson' 'netcat' 'pygtk')
+makedepends=('docutils')
+optdepends=('xorg-xdm: if you want to use KDE or GNOME session'
+ 'xorg-fonts-misc: to use default font'
+ 'xterm: if you want console session')
+install=neatx.install
+source=(http://neatx.googlecode.com/files/$pkgname-$pkgver.tar.gz
+ constants.archlinux.patch)
+md5sums=('5748656738d5f04fef1af01b9fe5ef20'
+ 'a5ca4aa399cc25fa8435280e8b03c5a3')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ patch -i "$srcdir/constants.archlinux.patch" -p2
+
+ ./configure --prefix=/usr --localstatedir=/var RST2HTML=/usr/bin/rst2html2
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make DESTDIR="$pkgdir/" install
+ chmod 777 "$pkgdir/var/lib/neatx/sessions"
+
+ install -d -m755 ${pkgdir}/etc/ld.so.conf.d/
+ echo -e '/usr/lib\n/opt/NX/lib' > ${pkgdir}/etc/ld.so.conf.d/neatx.conf
+}
diff --git a/community-testing/neatx/constants.archlinux.patch b/community-testing/neatx/constants.archlinux.patch
new file mode 100644
index 000000000..dff5e2415
--- /dev/null
+++ b/community-testing/neatx/constants.archlinux.patch
@@ -0,0 +1,42 @@
+--- a/neatx-0.3.1/lib/constants.py 2009-06-24 21:19:55.000000000 +0200
++++ b/neatx-0.3.1/lib/constants.py 2009-07-08 10:50:30.000000000 +0200
+@@ -25,19 +25,19 @@
+ from neatx import _autoconf
+
+
+-NXDIR = "/usr/lib/nx"
++NXDIR = "/opt/NX/bin"
+
+ SYSLOG_ADDRESS = "/dev/log"
+ BASH = "/bin/bash"
+-NETCAT = "/bin/netcat"
++NETCAT = "/usr/bin/netcat"
+ XRDB = "/usr/bin/xrdb"
+ SU = "/bin/su"
+ SSH = "/usr/bin/ssh"
+ XAUTH = "/usr/bin/xauth"
+-XSESSION = "/etc/X11/Xsession"
++XSESSION = "/etc/X11/xdm/Xsession"
+
+ START_CONSOLE_COMMAND = "/usr/bin/xterm"
+-START_KDE_COMMAND = XSESSION + " startkde"
++START_KDE_COMMAND = " startkde"
+ START_GNOME_COMMAND = XSESSION + " gnome-session"
+
+ NXUSER = "nx"
+@@ -47,12 +47,13 @@
+ NXNC = _autoconf.PKGLIBDIR + "/nxnc"
+ NXDIALOG = _autoconf.PKGLIBDIR + "/nxdialog"
+ NXAGENT = NXDIR + "/nxagent"
+-NXAGENT_PKGNAME = "nxagent"
++#NXAGENT_PKGNAME = "nxagent"
++NXAGENT_PKGNAME = "nxserver"
+ FDCOPY = _autoconf.PKGLIBDIR + "/fdcopy"
+ TTYSETUP = _autoconf.PKGLIBDIR + "/ttysetup"
+
+ # Extract nxagent version using the following command.
+-NXAGENT_VERSION_COMMAND = ("dpkg-query -W --showformat='${Version}' %s" %
++NXAGENT_VERSION_COMMAND = ("pacman -Qi %s | grep Version | awk '{print $3}'" %
+ NXAGENT_PKGNAME)
+ NXAGENT_VERSION_SEP = ".-~"
+
diff --git a/community-testing/neatx/neatx.install b/community-testing/neatx/neatx.install
new file mode 100644
index 000000000..89356878c
--- /dev/null
+++ b/community-testing/neatx/neatx.install
@@ -0,0 +1,18 @@
+post_install() {
+ useradd -d /opt/NX/home/nx -s /usr/lib/neatx/nxserver-login-wrapper nx &> /dev/null
+ mkdir -p ~nx/.ssh
+ cp /usr/share/neatx/authorized_keys.nomachine ~nx/.ssh/authorized_keys
+ chmod 600 ~nx/.ssh/authorized_keys
+ chown -R nx ~nx
+ post_remove
+}
+
+pre_remove() {
+ userdel nx > /dev/null 2>&1
+ rm -rf ~nx
+}
+
+post_remove() {
+ sed -e '/\/opt\/NX\/lib/d' -i etc/ld.so.conf
+ ldconfig
+}
diff --git a/community-testing/onboard/PKGBUILD b/community-testing/onboard/PKGBUILD
new file mode 100644
index 000000000..0b4510956
--- /dev/null
+++ b/community-testing/onboard/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id: PKGBUILD 78064 2012-10-16 11:51:46Z allan $
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+
+pkgname=onboard
+pkgver=0.98.1
+pkgrel=1
+pkgdesc="On-screen keyboard useful on tablet PCs or for mobility impaired users"
+arch=('i686' 'x86_64')
+url="https://launchpad.net/onboard"
+license=('GPL')
+depends=('python-dbus' 'python-gobject' 'gtk3' 'python-virtkey' 'librsvg' 'gsettings-desktop-schemas' 'desktop-file-utils' 'dconf' 'hicolor-icon-theme' 'xdg-utils')
+makedepends=('python-distutils-extra')
+optdepends=('at-spi2-atk: auto-show when editing text'
+ 'mousetweaks: hover click with mouse')
+options=('!emptydirs')
+install=$pkgname.install
+source=(http://launchpad.net/$pkgname/${pkgver%.*}/$pkgver/+download/$pkgname-$pkgver.tar.gz)
+md5sums=('107e031b429329b71deb67c9b90195d6')
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ # Do not set getpreferredencoding, because it breaks getstatusoutput() in the setup script
+ sed -i '/getpreferredencoding =/ d' setup.py
+
+ python3 setup.py install --root=$pkgdir/ --optimize=1
+}
diff --git a/community-testing/onboard/onboard.install b/community-testing/onboard/onboard.install
new file mode 100644
index 000000000..aa4c3e059
--- /dev/null
+++ b/community-testing/onboard/onboard.install
@@ -0,0 +1,13 @@
+post_install() {
+ glib-compile-schemas usr/share/glib-2.0/schemas
+ update-desktop-database -q
+ xdg-icon-resource forceupdate
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ post_install $1
+}
diff --git a/community-testing/python-bsddb/LICENSE b/community-testing/python-bsddb/LICENSE
new file mode 100644
index 000000000..7d6035775
--- /dev/null
+++ b/community-testing/python-bsddb/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2008-2009 Jesus Cea Avion
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE. \ No newline at end of file
diff --git a/community-testing/python-bsddb/PKGBUILD b/community-testing/python-bsddb/PKGBUILD
new file mode 100644
index 000000000..64a455419
--- /dev/null
+++ b/community-testing/python-bsddb/PKGBUILD
@@ -0,0 +1,49 @@
+# $Id: PKGBUILD 78072 2012-10-16 11:52:09Z allan $
+# Maintainer: Kaiting Chen <kaitocracy@gmail.com>
+# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
+# Contributor: Douglas Soares de Andrade <dsandrade@gmail.com>
+# Contributor: William Rea <sillywilly@gmail.com>
+
+pkgbase=python-bsddb
+pkgname=('python2-bsddb' 'python-bsddb')
+pkgver=5.3.0
+pkgrel=3
+pkgdesc="Python interface for BerkeleyDB"
+license=('MIT')
+arch=('i686' 'x86_64')
+url="http://www.jcea.es/programacion/pybsddb.htm"
+makedepends=('python2-distribute' 'python-distribute')
+source=(http://pypi.python.org/packages/source/b/bsddb3/bsddb3-${pkgver}.tar.gz
+ LICENSE)
+sha1sums=('8743f6d7a2f5471094941a46859723aae88f3915'
+ 'ef4e4caf618781104dbf5824279ed39d127b4713')
+
+build () {
+ cd "${srcdir}"
+
+ cp -r bsddb3-${pkgver}{,-python2}
+
+ # Build python 3 module
+ cd bsddb3-${pkgver}
+ python3 setup.py --berkeley-db=/usr build
+
+ # Build python 2 module
+ cd ../bsddb3-${pkgver}-python2
+ python2 setup.py --berkeley-db=/usr build
+}
+
+package_python2-bsddb() {
+ depends=('db' 'python2>=2.7')
+ cd "${srcdir}/bsddb3-${pkgver}-python2"
+
+ python2 setup.py --berkeley-db=/usr install --root="${pkgdir}" --skip-build --optimize=1
+ install -Dm644 "${srcdir}"/LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_python-bsddb() {
+ depends=('db' 'python>=3.3')
+ cd "${srcdir}/bsddb3-${pkgver}"
+
+ python3 setup.py --berkeley-db=/usr install --root="${pkgdir}" --skip-build --optimize=1
+ install -Dm644 "${srcdir}"/LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
diff --git a/community-testing/python-gnupginterface/PKGBUILD b/community-testing/python-gnupginterface/PKGBUILD
new file mode 100644
index 000000000..33446e9b3
--- /dev/null
+++ b/community-testing/python-gnupginterface/PKGBUILD
@@ -0,0 +1,21 @@
+# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
+# Contributor: Aaron Schaefer <aaron@elasticdog.com>
+
+pkgbase=python-gnupginterface
+pkgname=python2-gnupginterface
+pkgver=0.3.2
+pkgrel=1
+pkgdesc='A Python interface to GNU Privacy Guard (GnuPG).'
+arch=('i686' 'x86_64')
+url='http://py-gnupg.sourceforge.net/'
+license=('GPL')
+depends=('gnupg' 'python2')
+conflicts=('python-gnupginterface<=0.3.2-6')
+replaces=('python-gnupginterface<=0.3.2-6')
+source=("http://downloads.sourceforge.net/sourceforge/py-gnupg/GnuPGInterface-$pkgver.tar.gz")
+md5sums=('d4627d83446f96bd8c22f8d15db3f7c2')
+
+package_python2-gnupginterface() {
+ cd "$srcdir/GnuPGInterface-$pkgver"
+ python2 setup.py install --root="$pkgdir" -O1
+}
diff --git a/community-testing/python-mpi4py/PKGBUILD b/community-testing/python-mpi4py/PKGBUILD
new file mode 100644
index 000000000..74cb41ee8
--- /dev/null
+++ b/community-testing/python-mpi4py/PKGBUILD
@@ -0,0 +1,43 @@
+# $Id: PKGBUILD 78088 2012-10-16 11:52:49Z allan $
+# Maintainer : Stéphane Gaudreault <stephane@archlinux.org>
+# Contributor: Sebastien Binet <binet@cern.ch>
+
+pkgbase=python-mpi4py
+pkgname=('python-mpi4py' 'python2-mpi4py')
+pkgver=1.3
+pkgrel=2
+arch=('i686' 'x86_64')
+url="http://mpi4py.scipy.org"
+license=('BSD')
+makedepends=('python' 'python2' 'python-distribute' 'python2-distribute' 'openmpi')
+source=(http://mpi4py.googlecode.com/files/mpi4py-${pkgver}.tar.gz)
+sha1sums=('282c1b9e35b242c9bd86126ebc5af6c70d8c2833')
+
+build() {
+ cd "${srcdir}"
+ cp -a mpi4py-${pkgver}{,-python2}
+
+ # Build python 3 module
+ cd mpi4py-${pkgver}
+ python3 setup.py build
+
+ # Build python 2 module
+ cd ../mpi4py-${pkgver}-python2
+ python2 setup.py build
+}
+
+package_python-mpi4py() {
+ pkgdesc="Python bindings of the Message Passing Interface (MPI)"
+ depends=('python>=3.3' 'openmpi')
+
+ cd "${srcdir}/mpi4py-${pkgver}"
+ python3 setup.py install --root "${pkgdir}" --optimize=1 --skip-build
+}
+
+package_python2-mpi4py() {
+ pkgdesc="Python2 bindings of the Message Passing Interface (MPI)"
+ depends=('python2>=2.7' 'openmpi')
+
+ cd "${srcdir}/mpi4py-${pkgver}-python2"
+ python2 setup.py install --root "${pkgdir}" --optimize=1 --skip-build
+}
diff --git a/community-testing/python-numarray/LICENSE b/community-testing/python-numarray/LICENSE
new file mode 100644
index 000000000..30ff57fc4
--- /dev/null
+++ b/community-testing/python-numarray/LICENSE
@@ -0,0 +1,9 @@
+Copyright (C) 2005 Association of Universities for Research in Astronomy (AURA)
+
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+3. The name of AURA and its representatives may not be used to endorse or promote products derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY AURA ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AURA BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/community-testing/python-numarray/PKGBUILD b/community-testing/python-numarray/PKGBUILD
new file mode 100644
index 000000000..327b286b5
--- /dev/null
+++ b/community-testing/python-numarray/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 78090 2012-10-16 11:52:56Z allan $
+# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
+# Contributor: Douglas Soares de Andrade <dsandrade@gmail.com>
+
+pkgbase=python-numarray
+pkgname=python2-numarray
+pkgver=1.5.2
+pkgrel=6
+pkgdesc='Provides array manipulation and computational capabilities.'
+arch=('i686' 'x86_64')
+url='http://numpy.scipy.org/'
+license=('BSD')
+depends=('python2')
+conflicts=('python2-numarray<=1.5.2-6')
+replaces=('python2-numarray<=1.5.2-6')
+source=("http://downloads.sourceforge.net/sourceforge/numpy/numarray-${pkgver}.tar.gz"
+ 'LICENSE')
+md5sums=('d2ecfc60fe4869c328b872540d04e0f7'
+ 'e32b4466453e530d7fb0dbeee0ca1044')
+
+build() {
+ cd "${srcdir}/numarray-${pkgver}"
+
+ # python2 fix
+ sed -i 's_#! /usr/bin/env python_#! /usr/bin/env python2_' Examples/convolve/benchmark.py
+}
+
+package_python2-numarray() {
+ cd "${srcdir}/numarray-${pkgver}"
+
+ python2 setup.py install --root="${pkgdir}"
+ install -D ../LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/community-testing/python-openbabel/PKGBUILD b/community-testing/python-openbabel/PKGBUILD
new file mode 100644
index 000000000..130117080
--- /dev/null
+++ b/community-testing/python-openbabel/PKGBUILD
@@ -0,0 +1,38 @@
+# $Id: PKGBUILD 78091 2012-10-16 11:53:00Z allan $
+# Maintainer: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Michal Bozon <bozonm@vscht.cz>
+
+pkgname=python-openbabel
+pkgver=2.3.1
+pkgrel=3
+pkgdesc="Python bindings of openbabel library"
+arch=('i686' 'x86_64')
+url="http://openbabel.org/wiki/Python"
+license=('GPL')
+depends=('python' 'gcc-libs' "openbabel=${pkgver}" 'eigen2')
+makedepends=('swig' 'cmake')
+options=('!libtool')
+source=(http://downloads.sourceforge.net/openbabel/openbabel-$pkgver.tar.gz)
+md5sums=('1f029b0add12a3b55582dc2c832b04f8')
+
+build() {
+ cd "${srcdir}/openbabel-$pkgver"
+
+ # Create babelconfig.h
+ cmake .
+
+ # Regenerate interface with the patched swig 2.0.2
+ cd scripts
+ swig -I../include/ -python -py3 -c++ openbabel-python.i
+ mv openbabel-python_wrap.cxx python/openbabel-python.cpp
+ mv openbabel.py python/
+
+ cd python
+ sed -i '19i os.path.join("/usr/include/openbabel-2.0"),' setup.py
+ sed -i '20i os.path.join("/usr/include/eigen2"),' setup.py
+}
+
+package() {
+ cd "${srcdir}/openbabel-$pkgver/scripts/python"
+ python setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1
+}
diff --git a/community-testing/python-psutil/PKGBUILD b/community-testing/python-psutil/PKGBUILD
new file mode 100644
index 000000000..2ea97fda2
--- /dev/null
+++ b/community-testing/python-psutil/PKGBUILD
@@ -0,0 +1,43 @@
+# $Id: PKGBUILD 78094 2012-10-16 11:53:08Z allan $
+# Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org>
+
+pkgbase=python-psutil
+pkgname=('python-psutil' 'python2-psutil')
+pkgver=0.6.1
+pkgrel=2
+arch=('i686' 'x86_64')
+url='http://code.google.com/p/psutil/'
+license=('custom: BSD')
+makedepends=('python' 'python-distribute' 'python2' 'python2-distribute')
+source=("https://psutil.googlecode.com/files/psutil-$pkgver.tar.gz")
+sha1sums=('f7a76e201601d8e06a1fdf434422f884888aac86')
+
+build() {
+ cd psutil-$pkgver
+ python setup.py build --build-lib=build/python
+ python2 setup.py build --build-lib=build/python2
+ find build/python2 -type f -exec \
+ sed -i '1s,^#! \?/usr/bin/\(env \|\)python$,#!/usr/bin/python2,' {} \;
+}
+
+package_python-psutil() {
+ pkgdesc='A cross-platform process and system utilities module for Python'
+ depends=('glibc' 'python')
+
+ cd psutil-$pkgver
+ python setup.py build --build-lib=build/python \
+ install --root="$pkgdir" --optimize=1
+ install -D -m 644 LICENSE "$pkgdir/"usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-psutil() {
+ pkgdesc='A cross-platform process and system utilities module for Python2'
+ depends=('glibc' 'python2')
+
+ cd psutil-$pkgver
+ python2 setup.py build --build-lib=build/python2 \
+ install --root="$pkgdir" --optimize=1
+ install -D -m 644 LICENSE "$pkgdir/"usr/share/licenses/$pkgname/LICENSE
+}
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community-testing/python-psycopg1/PKGBUILD b/community-testing/python-psycopg1/PKGBUILD
new file mode 100644
index 000000000..b2a54c3d5
--- /dev/null
+++ b/community-testing/python-psycopg1/PKGBUILD
@@ -0,0 +1,34 @@
+# $Id: PKGBUILD 78095 2012-10-16 11:53:11Z allan $
+# Contributor: William Rea <sillywilly@gmail.com>
+
+pkgbase=python-psycopg1
+pkgname=python2-psycopg1
+pkgver=1.1.21
+pkgrel=8
+pkgdesc="A PostgreSQL database adapter for Python"
+arch=('i686' 'x86_64')
+url="http://initd.org/projects/psycopg1"
+license=('GPL')
+depends=('python2-egenix-mx-base' 'postgresql')
+conflicts=('python-psycopg1<=1.1.21-7')
+replaces=('python-psycopg1<=1.1.21-7')
+source=(http://initd.org/psycopg/tarballs/PSYCOPG-1-1/psycopg-$pkgver.tar.gz)
+md5sums=('a31f79f68d6d32898d6f24e11369a106')
+sha1sums=('02d8a8b5dd682306117896c7c63a9a1b518997b6')
+
+build() {
+ cd "$srcdir/psycopg-$pkgver"
+
+ ./configure --prefix=/usr --with-python=/usr/bin/python2 \
+ --with-mxdatetime-includes=/usr/lib/python2.7/site-packages/mx/DateTime/mxDateTime
+ sed -e 's:\(echo " install -m 555 $$mod \)\($(PY_MOD_DIR)\)\("; \\\):\1${DESTDIR}\2/$$mod\3:' \
+ -e 's:\($(INSTALL) -m 555 $$mod \)\($(PY_MOD_DIR)\)\(; \\\):\1${DESTDIR}\2/$$mod\3:' \
+ -i Makefile
+ make
+}
+
+package_python2-psycopg1() {
+ cd "$srcdir/psycopg-$pkgver"
+
+ make DESTDIR="$pkgdir" install
+}
diff --git a/community-testing/python-psycopg2/ChangeLog b/community-testing/python-psycopg2/ChangeLog
new file mode 100644
index 000000000..f31be0aaa
--- /dev/null
+++ b/community-testing/python-psycopg2/ChangeLog
@@ -0,0 +1,25 @@
+
+2009-08-05 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated to: 2.0.11
+
+2009-03-24 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for i686: 2.0.9
+
+2009-01-11 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Rebuilt for python 2.6
+
+2008-04-25 Mateusz Herych <heniekk@gmail.com>
+
+ * Built for x86_64 - 2.0.7
+
+2008-04-23 Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+ * Built for i686 - 2.0.7
+
+2007-06-27 tardo <tardo@nagi-fanboi.net>
+
+ * Built for x86_64
+
diff --git a/community-testing/python-psycopg2/PKGBUILD b/community-testing/python-psycopg2/PKGBUILD
new file mode 100644
index 000000000..34534e06a
--- /dev/null
+++ b/community-testing/python-psycopg2/PKGBUILD
@@ -0,0 +1,35 @@
+# $Id: PKGBUILD 78096 2012-10-16 11:53:16Z allan $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve>
+# Maintainer: Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+pkgbase=python-psycopg2
+pkgname=('python-psycopg2' 'python2-psycopg2')
+pkgver=2.4.5
+pkgrel=2
+pkgdesc="A PostgreSQL database adapter for the Python programming language."
+arch=('i686' 'x86_64')
+url="http://initd.org/psycopg/"
+license=('LGPL3')
+makedepends=('python2' 'python' 'postgresql-libs>=8.4.1')
+source=(http://initd.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-$pkgver.tar.gz)
+md5sums=('075e4df465e9a863f288d5bdf6e6887e')
+
+build() {
+ cd "$srcdir/psycopg2-$pkgver"
+ sed -i 's/,PSYCOPG_DEBUG$//' setup.cfg
+}
+
+package_python-psycopg2() {
+ depends=('python' 'postgresql-libs>=8.4.1')
+
+ cd "$srcdir/psycopg2-$pkgver"
+ python setup.py install --root="$pkgdir"
+}
+
+package_python2-psycopg2() {
+ depends=('python2' 'postgresql-libs>=8.4.1')
+
+ cd "$srcdir/psycopg2-$pkgver"
+ python2 setup.py install --root="$pkgdir"
+}
diff --git a/community-testing/python-pymongo/PKGBUILD b/community-testing/python-pymongo/PKGBUILD
new file mode 100644
index 000000000..0106f3034
--- /dev/null
+++ b/community-testing/python-pymongo/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 78100 2012-10-16 11:53:25Z allan $
+# Maintainer: Alexander Rødseth <rodseth@gmail.com>
+# Contributor: Thomas S Hatch <thatch45@gmail.com>
+
+pkgbase=python-pymongo
+pkgname=('python-pymongo' 'python2-pymongo')
+pkgver=2.3
+pkgrel=2
+pkgdesc='Python driver for MongoDB'
+arch=('x86_64' 'i686')
+license=('APACHE')
+url='http://pypi.python.org/pypi/pymongo/'
+makedepends=('python-distribute' 'python2-distribute')
+source=("http://pypi.python.org/packages/source/p/pymongo/pymongo-$pkgver.tar.gz")
+sha256sums=('8e43fdd7ea8e2aa965791af1b6e24186248023c6fde70092d9631b1d9150b1dc')
+
+build() {
+ cd "$srcdir"
+ cp -a "pymongo-$pkgver" "pymongo2-$pkgver"
+
+}
+
+package_python2-pymongo() {
+ depends=('python2')
+ cd "$srcdir/pymongo2-$pkgver"
+
+ python2 setup.py install --root="$pkgdir" --optimize=1
+}
+
+package_python-pymongo() {
+ depends=('python')
+
+ cd "$srcdir/pymongo-$pkgver"
+
+ python setup.py install --root="$pkgdir" --optimize=1
+}
+# vim:set ts=2 sw=2 et:
diff --git a/community-testing/python-pyopencl/LICENSE.txt b/community-testing/python-pyopencl/LICENSE.txt
new file mode 100644
index 000000000..3ce400f9d
--- /dev/null
+++ b/community-testing/python-pyopencl/LICENSE.txt
@@ -0,0 +1,20 @@
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without
+restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
diff --git a/community-testing/python-pyopencl/PKGBUILD b/community-testing/python-pyopencl/PKGBUILD
new file mode 100644
index 000000000..c3bf9ef7a
--- /dev/null
+++ b/community-testing/python-pyopencl/PKGBUILD
@@ -0,0 +1,61 @@
+# $Id: PKGBUILD 78161 2012-10-16 15:46:57Z stephane $
+# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
+
+pkgbase=python-pyopencl
+pkgname=('python2-pyopencl' 'python-pyopencl' 'pyopencl-headers')
+pkgver=2012.1
+pkgrel=5
+pkgdesc="A complete, object-oriented language binding of OpenCL to Python"
+arch=('i686' 'x86_64')
+url="http://mathema.tician.de/software/pyopencl"
+license=('custom')
+makedepends=('ctags' 'python2-distribute' 'python-distribute' 'libcl' 'opencl-headers' 'mesa' 'boost' 'python2-mako' 'python-mako' 'python-numpy' 'python2-numpy')
+source=("http://pypi.python.org/packages/source/p/pyopencl/pyopencl-${pkgver}.tar.gz"
+ 'LICENSE.txt')
+sha1sums=('ef2460d5e9b883d8afe0ec47863a243b6f8ac7ff'
+ '2e6966b3d9b15603ce2c3ff79eeadd63c5d066b7')
+
+build() {
+ cd "$srcdir"
+
+ cp -a pyopencl-$pkgver{,-python2}
+
+ cd "${srcdir}/pyopencl-${pkgver}"
+ python3 ./configure.py --cl-enable-gl --no-use-shipped-boost
+ python3 setup.py build
+
+ cd "$srcdir/pyopencl-$pkgver-python2"
+ python2 ./configure.py --cl-enable-gl --no-use-shipped-boost
+ python2 setup.py build
+}
+
+package_python-pyopencl() {
+ depends=('libcl' 'opencl-headers' 'mesa' 'boost' 'python' 'python-numpy' 'python-mako' 'python-pytools' 'pyopencl-headers')
+
+ cd "${srcdir}/pyopencl-${pkgver}"
+ python3 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build
+
+ rm -fr "${pkgdir}"/usr/include
+
+ install -D -m644 ../LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_python2-pyopencl() {
+ depends=('libcl' 'opencl-headers' 'mesa' 'boost' 'python2' 'python2-numpy' 'python2-mako' 'python2-pytools' 'pyopencl-headers')
+
+ cd "${srcdir}/pyopencl-${pkgver}-python2"
+ python2 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build
+
+ rm -fr "${pkgdir}"/usr/include
+
+ install -D -m644 ../LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_pyopencl-headers() {
+ cd "${srcdir}/pyopencl-${pkgver}"
+ install -dm755 "${pkgdir}"/usr/include/pyopencl
+
+ for file in pyopencl-bessel-j.cl pyopencl-cephes.cl pyopencl-airy.cl pyopencl-ranluxcl.cl pyopencl-complex.h; do
+ install -m644 src/cl/${file} "${pkgdir}"/usr/include/pyopencl
+ done
+}
diff --git a/community-testing/python-pyproj/PKGBUILD b/community-testing/python-pyproj/PKGBUILD
new file mode 100644
index 000000000..5df85db9d
--- /dev/null
+++ b/community-testing/python-pyproj/PKGBUILD
@@ -0,0 +1,49 @@
+# $Id: PKGBUILD 78103 2012-10-16 11:53:33Z allan $
+# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
+
+pkgbase=python-pyproj
+pkgname=('python-pyproj' 'python2-pyproj')
+pkgver=1.9.2
+pkgrel=1
+pkgdesc="Python interfaces to PROJ.4 library"
+arch=('i686' 'x86_64')
+url="http://code.google.com/p/pyproj"
+license=('custom')
+source=(http://pyproj.googlecode.com/files/pyproj-${pkgver}.tar.gz)
+makedepends=('python' 'python2')
+sha1sums=('a7a4bf95f3492e45704bccd4aeafe3bbe32fb023')
+
+build() {
+ cd "${srcdir}"
+
+ cp -a pyproj-${pkgver}{,-python2}
+
+ # Build python 3 module
+ cd pyproj-${pkgver}
+ python3 setup.py build
+
+ # Build python 2 module
+ cd ../pyproj-${pkgver}-python2
+ python2 setup.py build
+}
+
+package_python-pyproj() {
+ depends=('proj' 'python>=3.3')
+
+ cd "${srcdir}"/pyproj-${pkgver}
+ python3 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build
+
+ install -dm755 "${pkgdir}"/usr/share/licenses/${pkgname}
+ install -m644 LICENSE_proj4 "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_python2-pyproj() {
+ depends=('proj' 'python2>=2.7')
+ replaces=('pyproj')
+
+ cd "${srcdir}"/pyproj-${pkgver}-python2
+ python2 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build
+
+ install -dm755 "${pkgdir}"/usr/share/licenses/${pkgname}
+ install -m644 LICENSE_proj4 "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
diff --git a/community-testing/python-pyxattr/PKGBUILD b/community-testing/python-pyxattr/PKGBUILD
new file mode 100644
index 000000000..a60dc386c
--- /dev/null
+++ b/community-testing/python-pyxattr/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 78107 2012-10-16 11:53:42Z allan $
+# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
+# Contributor: Jon Bergli Heier <snakebite@jvnv.net>
+
+pkgname=('python2-pyxattr' 'python-pyxattr')
+pkgbase=python-pyxattr
+_pkgname=pyxattr
+pkgver=0.5.0
+pkgrel=4
+pkgdesc='A python extension module that allows you to manipulate the extended attributes.'
+arch=('i686' 'x86_64')
+url='http://pyxattr.sourceforge.net/'
+license=('GPL')
+makedepends=('python2' 'python' 'python2-distribute' 'python-distribute')
+source=("http://downloads.sourceforge.net/${_pkgname}/${_pkgname}-${pkgver}.tar.gz")
+md5sums=('0f7ab1e185087329e40f7de218517c84')
+
+package_python2-pyxattr() {
+ depends=('python2')
+ provides=('pyxattr')
+ conflicts=('pyxattr')
+ replaces=('pyxattr')
+
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ python2 setup.py install --root="${pkgdir}"
+}
+
+package_python-pyxattr() {
+ depends=('python')
+
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ python setup.py install --root="${pkgdir}"
+}
diff --git a/community-testing/python-pyzmq/PKGBUILD b/community-testing/python-pyzmq/PKGBUILD
new file mode 100644
index 000000000..a2951c651
--- /dev/null
+++ b/community-testing/python-pyzmq/PKGBUILD
@@ -0,0 +1,20 @@
+# $Id: PKGBUILD 78108 2012-10-16 11:53:45Z allan $
+# Maintainer: Kyle Keen <keenerd at gmail dot com>
+pkgname=python-pyzmq
+pkgver=2.2.0.1
+pkgrel=2
+pkgdesc="Python3 bindings for zeromq, written in Cython"
+arch=(i686 x86_64)
+url="http://www.zeromq.org/bindings:python"
+license=('LGPL')
+depends=(zeromq python)
+source=(https://github.com/zeromq/pyzmq/downloads/pyzmq-$pkgver.tar.gz)
+md5sums=('f2f80709e84c8ac72d6671eee645d804')
+
+build() {
+ cd "$srcdir/pyzmq-$pkgver"
+ # py3 errors added in 2.2.0.1
+ sed -i 's|except socket.error, e:|except socket.error as e:|' zmq/eventloop/ioloop.py
+ sed -i 's|except gevent.Timeout, t:|except gevent.Timeout as t:|' zmq/green/core.py
+ python3 setup.py install --root="$pkgdir" --optimize=0
+}
diff --git a/community-testing/python-scipy/PKGBUILD b/community-testing/python-scipy/PKGBUILD
new file mode 100644
index 000000000..49f943dc5
--- /dev/null
+++ b/community-testing/python-scipy/PKGBUILD
@@ -0,0 +1,82 @@
+# Maintainer: Thomas Dziedzic < gostrc at gmail >
+# Contributor: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve>
+# Contributor: Ray Rashif <schiv@archlinux.org>
+# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org>
+# Contributor: Bodor Dávid Gábor <david.gabor.bodor@gmail.com>
+# Contributor: Andrzej Giniewicz <gginiu@gmail.com>
+
+pkgname=('python-scipy' 'python2-scipy')
+pkgver=0.11.0
+pkgrel=2
+pkgdesc="SciPy is open-source software for mathematics, science, and engineering."
+arch=('i686' 'x86_64')
+url="http://www.scipy.org/"
+license=('BSD')
+makedepends=('gcc-fortran' 'python-numpy' 'python2-numpy')
+checkdepends=('python-nose' 'python2-nose')
+source=("http://downloads.sourceforge.net/scipy/scipy-${pkgver}.tar.gz")
+md5sums=('842c81d35fd63579c41a8ca21a2419b9')
+
+build() {
+ unset LDFLAGS
+ unset FFLAGS
+
+ # Changing the arithmetic parameter (Thanks to Fabrizio Castellano)
+ sed -i "s/\#define\ UNK\ 1/\#define\ IBMPC\ 1/" \
+ scipy-${pkgver}/scipy/special/cephes/mconf.h
+
+ # 2 builds
+ cp -r scipy-${pkgver} scipy-${pkgver}-py2
+
+ # build for python3
+ cd scipy-${pkgver}
+ python setup.py config_fc --fcompiler=gnu95 build
+
+ # build for python2
+ cd ../scipy-${pkgver}-py2
+
+ for file in $(find . -name '*.py' -print); do
+ sed -i 's_^#!.*/usr/bin/python_#!/usr/bin/python2_' $file
+ sed -i 's_^#!.*/usr/bin/env.*python_#!/usr/bin/env python2_' $file
+ done
+
+ python2 setup.py config_fc --fcompiler=gnu95 build
+}
+
+check() {
+ cd scipy-${pkgver}
+# figure out how to run tests in the source tree easily
+# python -c "from scipy import test; test('full')"
+
+ cd ../scipy-${pkgver}-py2
+# figure out how to run tests in the source tree easily
+# python2 -c "from scipy import test; test('full')"
+}
+
+package_python-scipy() {
+ depends=('python-numpy')
+ provides=('python3-scipy' 'scipy')
+
+ cd scipy-${pkgver}
+
+ python setup.py config_fc --fcompiler=gnu95 install \
+ --prefix=/usr --root=${pkgdir} --optimize=1
+
+ install -Dm644 LICENSE.txt \
+ "${pkgdir}/usr/share/licenses/python-scipy/LICENSE"
+}
+
+package_python2-scipy() {
+ depends=('python2-numpy')
+ conflicts=('python-scipy<0.9.0')
+
+ cd scipy-${pkgver}-py2
+
+ python2 setup.py config_fc --fcompiler=gnu95 install \
+ --prefix=/usr --root=${pkgdir} --optimize=1
+
+ install -Dm644 LICENSE.txt \
+ "${pkgdir}/usr/share/licenses/python2-scipy/LICENSE"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community-testing/python-sqlalchemy/PKGBUILD b/community-testing/python-sqlalchemy/PKGBUILD
new file mode 100644
index 000000000..e6a1ded02
--- /dev/null
+++ b/community-testing/python-sqlalchemy/PKGBUILD
@@ -0,0 +1,44 @@
+# $Id: PKGBUILD 78113 2012-10-16 11:54:00Z allan $
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Contributor: Sébastien Luttringer <seblu@aur.archlinux.org>
+
+pkgbase=python-sqlalchemy
+pkgname=('python-sqlalchemy' 'python2-sqlalchemy')
+pkgver=0.7.9
+pkgrel=1
+arch=('i686' 'x86_64') # python2 package contain .so
+url="http://www.sqlalchemy.org/"
+license=('custom: MIT')
+makedepends=('python' 'python2' 'python-distribute' 'python2-distribute' 'python-nose' 'python2-nose')
+source=("http://downloads.sourceforge.net/sourceforge/sqlalchemy/SQLAlchemy-$pkgver.tar.gz")
+md5sums=('c4852d586d95a59fbc9358f4467875d5')
+
+build() {
+ cp -a SQLAlchemy-$pkgver SQLAlchemy2-$pkgver
+ cd SQLAlchemy-$pkgver
+ python setup.py build
+ cd ../SQLAlchemy2-$pkgver
+ python2 setup.py build
+}
+
+package_python-sqlalchemy() {
+ pkgdesc='Python SQL toolkit and Object Relational Mapper'
+ depends=('python')
+
+ cd SQLAlchemy-${pkgver}
+ python setup.py install --root="${pkgdir}"
+ install -D -m644 LICENSE \
+ "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+package_python2-sqlalchemy() {
+ pkgdesc='Python 2 SQL toolkit and Object Relational Mapper'
+ depends=('python2')
+
+ cd SQLAlchemy2-$pkgver
+ python2 setup.py install --root="$pkgdir"
+ install -D -m644 LICENSE \
+ "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community-testing/python-yaml/PKGBUILD b/community-testing/python-yaml/PKGBUILD
new file mode 100644
index 000000000..3d48ebc4e
--- /dev/null
+++ b/community-testing/python-yaml/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id: PKGBUILD 78118 2012-10-16 11:54:14Z allan $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Michal Bozon <michal.bozon__at__gmail.com>
+
+pkgbase=python-yaml
+pkgname=(python2-yaml python-yaml)
+pkgver=3.10
+pkgrel=3
+pkgdesc="Python bindings for YAML, using fast libYAML library"
+arch=('i686' 'x86_64')
+url="http://pyyaml.org"
+license=('MIT')
+makedepends=('python' 'python2' 'libyaml')
+install='python-yaml.install'
+source=(http://pyyaml.org/download/pyyaml/PyYAML-$pkgver.tar.gz)
+md5sums=('74c94a383886519e9e7b3dd1ee540247')
+
+build() {
+ true
+}
+
+package_python2-yaml() {
+ depends=('python2' 'libyaml')
+
+ cd $srcdir/PyYAML-$pkgver
+ python2 setup.py install --prefix=/usr --root=$pkgdir
+ install -m644 -D LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python-yaml() {
+ depends=('python' 'libyaml')
+
+ cd $srcdir/PyYAML-$pkgver
+ python setup.py install --prefix=/usr --root=$pkgdir
+ install -m644 -D LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
+}
diff --git a/community-testing/python-yaml/python-yaml.install b/community-testing/python-yaml/python-yaml.install
new file mode 100644
index 000000000..e2ae0674b
--- /dev/null
+++ b/community-testing/python-yaml/python-yaml.install
@@ -0,0 +1,7 @@
+post_install() {
+ cat << EOT
+==> Note that even though this package uses libyaml library,
+==> slower pure python implementation is used by default.
+==> See http://pyyaml.org/wiki/PyYAMLDocumentation
+EOT
+}
diff --git a/community-testing/python2-cjson/PKGBUILD b/community-testing/python2-cjson/PKGBUILD
new file mode 100644
index 000000000..2d95793a4
--- /dev/null
+++ b/community-testing/python2-cjson/PKGBUILD
@@ -0,0 +1,19 @@
+# $Id: PKGBUILD 66126 2012-02-23 01:35:30Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Lincoln de Sousa <lincoln@archlinux-br.org>
+
+pkgname=python2-cjson
+pkgver=1.0.5
+pkgrel=5
+arch=('i686' 'x86_64')
+license=('LGPL')
+pkgdesc="Fast JSON encoder/decoder for Python"
+url="http://pypi.python.org/pypi/python-cjson/"
+depends=('python2')
+source=("http://pypi.python.org/packages/source/p/python-cjson/python-cjson-$pkgver.tar.gz")
+md5sums=('4d55b66ecdf0300313af9d030d9644a3')
+
+build() {
+ cd $srcdir/python-cjson-$pkgver
+ python2 setup.py install --root=$pkgdir
+}
diff --git a/community-testing/python2-galago/PKGBUILD b/community-testing/python2-galago/PKGBUILD
new file mode 100644
index 000000000..6076c3a9e
--- /dev/null
+++ b/community-testing/python2-galago/PKGBUILD
@@ -0,0 +1,22 @@
+# $Id: PKGBUILD 66128 2012-02-23 01:37:06Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: William Rea <sillywilly@gmail.com>
+
+pkgname=python2-galago
+pkgver=0.5.0
+pkgrel=6
+pkgdesc="A library of simple functions that are optimized for various CPUs"
+arch=('i686' 'x86_64')
+url="http://galago-project.org"
+options=('!libtool')
+license=('LGPL')
+depends=('libgalago' 'pygtk')
+source=(http://galago-project.org/files/releases/source/galago-python/galago-python-$pkgver.tar.bz2)
+md5sums=('27be31fcf2886aa21823caec15dc34aa')
+
+build() {
+ cd $srcdir/galago-python-$pkgver
+ ./configure --prefix=/usr
+ make
+ make DESTDIR=$pkgdir install
+}
diff --git a/community-testing/python2-gnutls/PKGBUILD b/community-testing/python2-gnutls/PKGBUILD
new file mode 100644
index 000000000..3a7c86a04
--- /dev/null
+++ b/community-testing/python2-gnutls/PKGBUILD
@@ -0,0 +1,23 @@
+# $Id: PKGBUILD 74655 2012-08-01 13:54:20Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Hugo Doria <hugo@archlinux.org>
+# Contributor: N3RD3X <n3rd3x@linuxmail.org>
+
+pkgname=python2-gnutls
+pkgver=1.2.4
+pkgrel=2
+pkgdesc="Python wrapper for the GNUTLS library"
+arch=('i686' 'x86_64')
+url="http://cheeseshop.python.org/pypi/python-gnutls"
+depends=('python2' 'gnutls')
+license=('LGPL')
+source=(http://pypi.python.org/packages/source/p/python-gnutls/python-gnutls-${pkgver}.tar.gz
+ gnutls3.patch)
+md5sums=('e3536c421291a791869d875a41dcb26a'
+ '24bc95d9f5e71e9f5e180706cbb09248')
+
+build() {
+ cd ${srcdir}/python-gnutls-${pkgver}
+ patch -Np0 <$srcdir/gnutls3.patch
+ python2 setup.py install --root=${pkgdir}
+}
diff --git a/community-testing/python2-gnutls/gnutls3.patch b/community-testing/python2-gnutls/gnutls3.patch
new file mode 100644
index 000000000..5110de2f2
--- /dev/null
+++ b/community-testing/python2-gnutls/gnutls3.patch
@@ -0,0 +1,271 @@
+diff -ru gnutls/library/functions.py gnutls.fixed/library/functions.py
+--- gnutls/library/functions.py 2011-08-19 04:48:14.000000000 +0100
++++ gnutls.fixed/library/functions.py 2012-08-01 11:56:43.450975419 +0100
+@@ -4,7 +4,7 @@
+ import sys
+ from ctypes import *
+
+-from gnutls.library import libgnutls, libgnutls_extra
++from gnutls.library import libgnutls
+ from gnutls.library.types import *
+
+
+@@ -121,14 +121,6 @@
+ gnutls_certificate_get_peers.argtypes = [gnutls_session_t, POINTER(c_uint)]
+ gnutls_certificate_get_peers.restype = POINTER(gnutls_datum_t)
+
+-gnutls_certificate_get_x509_cas = libgnutls.gnutls_certificate_get_x509_cas
+-gnutls_certificate_get_x509_cas.argtypes = [gnutls_certificate_credentials_t, POINTER(POINTER(gnutls_x509_crt_t)), POINTER(c_uint)]
+-gnutls_certificate_get_x509_cas.restype = None
+-
+-gnutls_certificate_get_x509_crls = libgnutls.gnutls_certificate_get_x509_crls
+-gnutls_certificate_get_x509_crls.argtypes = [gnutls_certificate_credentials_t, POINTER(POINTER(gnutls_x509_crl_t)), POINTER(c_uint)]
+-gnutls_certificate_get_x509_crls.restype = None
+-
+ gnutls_certificate_send_x509_rdn_sequence = libgnutls.gnutls_certificate_send_x509_rdn_sequence
+ gnutls_certificate_send_x509_rdn_sequence.argtypes = [gnutls_session_t, c_int]
+ gnutls_certificate_send_x509_rdn_sequence.restype = None
+@@ -221,10 +213,6 @@
+ gnutls_certificate_type_set_priority.argtypes = [gnutls_session_t, POINTER(c_int)]
+ gnutls_certificate_type_set_priority.restype = c_int
+
+-gnutls_certificate_verify_peers = libgnutls.gnutls_certificate_verify_peers
+-gnutls_certificate_verify_peers.argtypes = [gnutls_session_t]
+-gnutls_certificate_verify_peers.restype = c_int
+-
+ gnutls_certificate_verify_peers2 = libgnutls.gnutls_certificate_verify_peers2
+ gnutls_certificate_verify_peers2.argtypes = [gnutls_session_t, POINTER(c_uint)]
+ gnutls_certificate_verify_peers2.restype = c_int
+@@ -393,10 +381,6 @@
+ gnutls_error_to_alert.argtypes = [c_int, POINTER(c_int)]
+ gnutls_error_to_alert.restype = c_int
+
+-gnutls_extra_check_version = libgnutls_extra.gnutls_extra_check_version
+-gnutls_extra_check_version.argtypes = [c_char_p]
+-gnutls_extra_check_version.restype = c_char_p
+-
+ gnutls_fingerprint = libgnutls.gnutls_fingerprint
+ gnutls_fingerprint.argtypes = [gnutls_digest_algorithm_t, POINTER(gnutls_datum_t), c_void_p, POINTER(size_t)]
+ gnutls_fingerprint.restype = c_int
+@@ -409,10 +393,6 @@
+ gnutls_global_init.argtypes = []
+ gnutls_global_init.restype = c_int
+
+-gnutls_global_init_extra = libgnutls_extra.gnutls_global_init_extra
+-gnutls_global_init_extra.argtypes = []
+-gnutls_global_init_extra.restype = c_int
+-
+ gnutls_global_set_log_function = libgnutls.gnutls_global_set_log_function
+ gnutls_global_set_log_function.argtypes = [gnutls_log_func]
+ gnutls_global_set_log_function.restype = None
+@@ -461,86 +441,6 @@
+ gnutls_hex_encode.argtypes = [POINTER(gnutls_datum_t), c_char_p, POINTER(size_t)]
+ gnutls_hex_encode.restype = c_int
+
+-gnutls_ia_allocate_client_credentials = libgnutls_extra.gnutls_ia_allocate_client_credentials
+-gnutls_ia_allocate_client_credentials.argtypes = [POINTER(gnutls_ia_client_credentials_t)]
+-gnutls_ia_allocate_client_credentials.restype = c_int
+-
+-gnutls_ia_allocate_server_credentials = libgnutls_extra.gnutls_ia_allocate_server_credentials
+-gnutls_ia_allocate_server_credentials.argtypes = [POINTER(gnutls_ia_server_credentials_t)]
+-gnutls_ia_allocate_server_credentials.restype = c_int
+-
+-gnutls_ia_enable = libgnutls_extra.gnutls_ia_enable
+-gnutls_ia_enable.argtypes = [gnutls_session_t, c_int]
+-gnutls_ia_enable.restype = None
+-
+-gnutls_ia_endphase_send = libgnutls_extra.gnutls_ia_endphase_send
+-gnutls_ia_endphase_send.argtypes = [gnutls_session_t, c_int]
+-gnutls_ia_endphase_send.restype = c_int
+-
+-gnutls_ia_extract_inner_secret = libgnutls_extra.gnutls_ia_extract_inner_secret
+-gnutls_ia_extract_inner_secret.argtypes = [gnutls_session_t, c_char_p]
+-gnutls_ia_extract_inner_secret.restype = None
+-
+-gnutls_ia_free_client_credentials = libgnutls_extra.gnutls_ia_free_client_credentials
+-gnutls_ia_free_client_credentials.argtypes = [gnutls_ia_client_credentials_t]
+-gnutls_ia_free_client_credentials.restype = None
+-
+-gnutls_ia_free_server_credentials = libgnutls_extra.gnutls_ia_free_server_credentials
+-gnutls_ia_free_server_credentials.argtypes = [gnutls_ia_server_credentials_t]
+-gnutls_ia_free_server_credentials.restype = None
+-
+-gnutls_ia_generate_challenge = libgnutls_extra.gnutls_ia_generate_challenge
+-gnutls_ia_generate_challenge.argtypes = [gnutls_session_t, size_t, c_char_p]
+-gnutls_ia_generate_challenge.restype = c_int
+-
+-gnutls_ia_get_client_avp_ptr = libgnutls_extra.gnutls_ia_get_client_avp_ptr
+-gnutls_ia_get_client_avp_ptr.argtypes = [gnutls_ia_client_credentials_t]
+-gnutls_ia_get_client_avp_ptr.restype = c_void_p
+-
+-gnutls_ia_get_server_avp_ptr = libgnutls_extra.gnutls_ia_get_server_avp_ptr
+-gnutls_ia_get_server_avp_ptr.argtypes = [gnutls_ia_server_credentials_t]
+-gnutls_ia_get_server_avp_ptr.restype = c_void_p
+-
+-gnutls_ia_handshake = libgnutls_extra.gnutls_ia_handshake
+-gnutls_ia_handshake.argtypes = [gnutls_session_t]
+-gnutls_ia_handshake.restype = c_int
+-
+-gnutls_ia_handshake_p = libgnutls_extra.gnutls_ia_handshake_p
+-gnutls_ia_handshake_p.argtypes = [gnutls_session_t]
+-gnutls_ia_handshake_p.restype = c_int
+-
+-gnutls_ia_permute_inner_secret = libgnutls_extra.gnutls_ia_permute_inner_secret
+-gnutls_ia_permute_inner_secret.argtypes = [gnutls_session_t, size_t, c_char_p]
+-gnutls_ia_permute_inner_secret.restype = c_int
+-
+-gnutls_ia_recv = libgnutls_extra.gnutls_ia_recv
+-gnutls_ia_recv.argtypes = [gnutls_session_t, c_char_p, size_t]
+-gnutls_ia_recv.restype = ssize_t
+-
+-gnutls_ia_send = libgnutls_extra.gnutls_ia_send
+-gnutls_ia_send.argtypes = [gnutls_session_t, c_char_p, size_t]
+-gnutls_ia_send.restype = ssize_t
+-
+-gnutls_ia_set_client_avp_function = libgnutls_extra.gnutls_ia_set_client_avp_function
+-gnutls_ia_set_client_avp_function.argtypes = [gnutls_ia_client_credentials_t, gnutls_ia_avp_func]
+-gnutls_ia_set_client_avp_function.restype = None
+-
+-gnutls_ia_set_client_avp_ptr = libgnutls_extra.gnutls_ia_set_client_avp_ptr
+-gnutls_ia_set_client_avp_ptr.argtypes = [gnutls_ia_client_credentials_t, c_void_p]
+-gnutls_ia_set_client_avp_ptr.restype = None
+-
+-gnutls_ia_set_server_avp_function = libgnutls_extra.gnutls_ia_set_server_avp_function
+-gnutls_ia_set_server_avp_function.argtypes = [gnutls_ia_server_credentials_t, gnutls_ia_avp_func]
+-gnutls_ia_set_server_avp_function.restype = None
+-
+-gnutls_ia_set_server_avp_ptr = libgnutls_extra.gnutls_ia_set_server_avp_ptr
+-gnutls_ia_set_server_avp_ptr.argtypes = [gnutls_ia_server_credentials_t, c_void_p]
+-gnutls_ia_set_server_avp_ptr.restype = None
+-
+-gnutls_ia_verify_endphase = libgnutls_extra.gnutls_ia_verify_endphase
+-gnutls_ia_verify_endphase.argtypes = [gnutls_session_t, c_char_p]
+-gnutls_ia_verify_endphase.restype = c_int
+-
+ gnutls_init = libgnutls.gnutls_init
+ gnutls_init.argtypes = [POINTER(gnutls_session_t), gnutls_connection_end_t]
+ gnutls_init.restype = c_int
+@@ -733,10 +633,6 @@
+ gnutls_psk_free_server_credentials.argtypes = [gnutls_psk_server_credentials_t]
+ gnutls_psk_free_server_credentials.restype = None
+
+-gnutls_psk_netconf_derive_key = libgnutls.gnutls_psk_netconf_derive_key
+-gnutls_psk_netconf_derive_key.argtypes = [c_char_p, c_char_p, c_char_p, POINTER(gnutls_datum_t)]
+-gnutls_psk_netconf_derive_key.restype = c_int
+-
+ gnutls_psk_server_get_username = libgnutls.gnutls_psk_server_get_username
+ gnutls_psk_server_get_username.argtypes = [gnutls_session_t]
+ gnutls_psk_server_get_username.restype = c_char_p
+@@ -857,10 +753,6 @@
+ gnutls_session_enable_compatibility_mode.argtypes = [gnutls_session_t]
+ gnutls_session_enable_compatibility_mode.restype = None
+
+-gnutls_session_get_client_random = libgnutls.gnutls_session_get_client_random
+-gnutls_session_get_client_random.argtypes = [gnutls_session_t]
+-gnutls_session_get_client_random.restype = c_void_p
+-
+ gnutls_session_get_data = libgnutls.gnutls_session_get_data
+ gnutls_session_get_data.argtypes = [gnutls_session_t, c_void_p, POINTER(size_t)]
+ gnutls_session_get_data.restype = c_int
+@@ -873,18 +765,10 @@
+ gnutls_session_get_id.argtypes = [gnutls_session_t, c_void_p, POINTER(size_t)]
+ gnutls_session_get_id.restype = c_int
+
+-gnutls_session_get_master_secret = libgnutls.gnutls_session_get_master_secret
+-gnutls_session_get_master_secret.argtypes = [gnutls_session_t]
+-gnutls_session_get_master_secret.restype = c_void_p
+-
+ gnutls_session_get_ptr = libgnutls.gnutls_session_get_ptr
+ gnutls_session_get_ptr.argtypes = [gnutls_session_t]
+ gnutls_session_get_ptr.restype = c_void_p
+
+-gnutls_session_get_server_random = libgnutls.gnutls_session_get_server_random
+-gnutls_session_get_server_random.argtypes = [gnutls_session_t]
+-gnutls_session_get_server_random.restype = c_void_p
+-
+ gnutls_session_is_resumed = libgnutls.gnutls_session_is_resumed
+ gnutls_session_is_resumed.argtypes = [gnutls_session_t]
+ gnutls_session_is_resumed.restype = c_int
+@@ -905,10 +789,6 @@
+ gnutls_set_default_priority.argtypes = [gnutls_session_t]
+ gnutls_set_default_priority.restype = c_int
+
+-gnutls_sign_algorithm_get_name = libgnutls.gnutls_sign_algorithm_get_name
+-gnutls_sign_algorithm_get_name.argtypes = [gnutls_sign_algorithm_t]
+-gnutls_sign_algorithm_get_name.restype = c_char_p
+-
+ gnutls_sign_callback_get = libgnutls.gnutls_sign_callback_get
+ gnutls_sign_callback_get.argtypes = [gnutls_session_t, POINTER(c_void_p)]
+ gnutls_sign_callback_get.restype = gnutls_sign_func
+@@ -937,14 +817,6 @@
+ gnutls_transport_set_errno.argtypes = [gnutls_session_t, c_int]
+ gnutls_transport_set_errno.restype = None
+
+-gnutls_transport_set_global_errno = libgnutls.gnutls_transport_set_global_errno
+-gnutls_transport_set_global_errno.argtypes = [c_int]
+-gnutls_transport_set_global_errno.restype = None
+-
+-gnutls_transport_set_lowat = libgnutls.gnutls_transport_set_lowat
+-gnutls_transport_set_lowat.argtypes = [gnutls_session_t, c_int]
+-gnutls_transport_set_lowat.restype = None
+-
+ gnutls_transport_set_ptr = libgnutls.gnutls_transport_set_ptr
+ gnutls_transport_set_ptr.argtypes = [gnutls_session_t, gnutls_transport_ptr_t]
+ gnutls_transport_set_ptr.restype = None
+@@ -1501,10 +1373,6 @@
+ gnutls_x509_privkey_sign_hash.argtypes = [gnutls_x509_privkey_t, POINTER(gnutls_datum_t), POINTER(gnutls_datum_t)]
+ gnutls_x509_privkey_sign_hash.restype = c_int
+
+-gnutls_x509_privkey_verify_data = libgnutls.gnutls_x509_privkey_verify_data
+-gnutls_x509_privkey_verify_data.argtypes = [gnutls_x509_privkey_t, c_uint, POINTER(gnutls_datum_t), POINTER(gnutls_datum_t)]
+-gnutls_x509_privkey_verify_data.restype = c_int
+-
+ gnutls_x509_rdn_get = libgnutls.gnutls_x509_rdn_get
+ gnutls_x509_rdn_get.argtypes = [POINTER(gnutls_datum_t), c_char_p, POINTER(size_t)]
+ gnutls_x509_rdn_get.restype = c_int
+diff -ru gnutls/library/__init__.py gnutls.fixed/library/__init__.py
+--- gnutls/library/__init__.py 2011-11-11 17:23:49.000000000 +0000
++++ gnutls.fixed/library/__init__.py 2012-08-01 11:57:42.284290997 +0100
+@@ -53,6 +53,9 @@
+ else:
+ raise RuntimeError('cannot find lib%s on this system' % name)
+
++def do_nothing(*args, **kwargs):
++ pass
++
+
+ def initialize_gcrypt():
+ from ctypes import c_void_p
+@@ -104,7 +107,7 @@
+ libgcrypt = load_library(name='gcrypt', version=11)
+ gcry_control = libgcrypt.gcry_control
+ else:
+- gcry_control = libgnutls.gcry_control
++ gcry_control = do_nothing
+
+ gcry_control(GCRYCTL_SET_THREAD_CBS, c_void_p(gcrypt_thread_callbacks_ptr))
+ if system == 'cygwin':
+@@ -117,12 +120,10 @@
+
+
+
+-libgnutls = load_library(name='gnutls', version=26)
+-libgnutls_extra = load_library(name='gnutls-extra', version=26)
++libgnutls = load_library(name='gnutls', version=28)
+
+ initialize_gcrypt()
+ libgnutls.gnutls_global_init()
+-libgnutls_extra.gnutls_global_init_extra()
+
+
+ from gnutls.library import constants
+@@ -136,9 +137,6 @@
+ if functions.gnutls_check_version(__need_version__) is None:
+ version = functions.gnutls_check_version(None)
+ raise RuntimeError("Found GNUTLS library version %s, but at least version %s is required" % (version, __need_version__))
+-if functions.gnutls_extra_check_version(__need_version__) is None:
+- version = functions.gnutls_extra_check_version(None)
+- raise RuntimeError("Found GNUTLS extra library version %s, but at least version %s is required" % (version, __need_version__))
+
+
+ del get_system_name, library_locations, load_library, initialize_gcrypt
diff --git a/community-testing/python2-imaging/PKGBUILD b/community-testing/python2-imaging/PKGBUILD
new file mode 100644
index 000000000..397dfceba
--- /dev/null
+++ b/community-testing/python2-imaging/PKGBUILD
@@ -0,0 +1,50 @@
+# $Id: PKGBUILD 78139 2012-10-16 12:09:48Z allan $
+# Maintainer: Kyle Keen <keenerd@gmail.com>
+# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
+# Contributor: simo <simo@archlinux.org>
+
+pkgname=python2-imaging
+pkgver=1.1.7
+pkgrel=5
+pkgdesc="PIL. Provides image processing capabilities for python"
+arch=('i686' 'x86_64')
+url="http://www.pythonware.com/products/pil/index.htm"
+license=('custom:"pil"')
+depends=('python2' 'libjpeg' 'freetype2' 'lcms')
+makedepends=('tk' 'sane')
+optdepends=('tk: for the ImageTK module'
+ 'sane: for the ImageSane module')
+provides=("pil=${pkgver}" "python-imaging=${pkgver}")
+conflicts=('pil' 'python-imaging')
+replaces=('pil' 'python-imaging')
+source=(http://effbot.org/downloads/Imaging-${pkgver}.tar.gz)
+md5sums=('fc14a54e1ce02a0225be8854bfba478e')
+
+build() {
+ cd "${srcdir}/Imaging-${pkgver}"
+ python2 setup.py build_ext
+ cd Sane
+ python2 setup.py build_ext
+}
+
+package() {
+ cd "${srcdir}/Imaging-${pkgver}"
+ python2 setup.py install --root="${pkgdir}" --optimize=1
+
+ pushd Sane
+ python2 setup.py install --root="${pkgdir}" --optimize=1
+ popd
+
+ install -dm755 "${pkgdir}/usr/include/python2.7/"
+ install -m644 -t "${pkgdir}/usr/include/python2.7/" libImaging/*.h
+
+ # do not have files ending in .py in /usr/bin
+ for f in pildriver pilprint pilconvert pilfile pilfont; do
+ mv "${pkgdir}"/usr/bin/${f}{.py,}
+ done
+
+ # Install license
+ install -Dm644 "${srcdir}/Imaging-${pkgver}/README" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/README"
+}
diff --git a/community-testing/python2-lcms/PKGBUILD b/community-testing/python2-lcms/PKGBUILD
new file mode 100644
index 000000000..3b75364ab
--- /dev/null
+++ b/community-testing/python2-lcms/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 66130 2012-02-23 01:39:55Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Connor Behan <connor.behan@gmail.com>
+
+pkgname=python2-lcms
+pkgver=1.19
+_mver=1.19
+pkgrel=4
+pkgdesc="LittleCMS Python bindings"
+arch=(i686 x86_64)
+license=('CUSTOM')
+depends=('libtiff' 'python2' 'lcms')
+url="http://www.littlecms.com"
+options=('!libtool')
+source=(http://downloads.sourceforge.net/project/lcms/lcms/${_mver}/lcms-$pkgver.tar.gz)
+md5sums=('8af94611baf20d9646c7c2c285859818')
+
+build() {
+ cd $srcdir/lcms-${_mver}
+ ./configure --prefix=/usr --with-python
+ make
+}
+
+package() {
+ cd $srcdir/lcms-${_mver}
+ make DESTDIR=$pkgdir install
+ install -D -m0644 COPYING $pkgdir/usr/share/licenses/$pkgname/COPYING
+ rm -rf $pkgdir/usr/bin \
+ $pkgdir/usr/include \
+ $pkgdir/usr/lib/pkgconfig \
+ $pkgdir/usr/lib/liblcms.* \
+ $pkgdir/usr/share/man/man1/icc2ps.1 \
+ $pkgdir/usr/share/man/man1/icclink.1 \
+ $pkgdir/usr/share/man/man1/jpegicc.1 \
+ $pkgdir/usr/share/man/man1/tifficc.1 \
+ $pkgdir/usr/share/man/man1/wtpt.1
+}
diff --git a/community-testing/python2-m2crypto/PKGBUILD b/community-testing/python2-m2crypto/PKGBUILD
new file mode 100644
index 000000000..a68c5a35d
--- /dev/null
+++ b/community-testing/python2-m2crypto/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id: PKGBUILD 140196 2011-10-09 08:27:16Z angvp $
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Contributor: Sergej Pupykin <sergej@aur.archlinux.org>
+# Contributor: William Rea <sillywilly@gmail.com>
+
+pkgname=python2-m2crypto
+pkgver=0.21.1
+pkgrel=2
+pkgdesc="A crypto and SSL toolkit for Python"
+arch=('i686' 'x86_64')
+url="http://wiki.osafoundation.org/bin/view/Projects/MeTooCrypto"
+license=('BSD')
+depends=('python2' 'openssl')
+makedepends=('swig')
+source=("http://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-${pkgver}.tar.gz")
+md5sums=('f93d8462ff7646397a9f77a2fe602d17')
+
+build() {
+ cd "${srcdir}/M2Crypto-${pkgver}"
+ python2 setup.py build
+}
+
+package() {
+ cd "${srcdir}/M2Crypto-${pkgver}"
+ python2 setup.py install --root="${pkgdir}/" --optimize=1
+ install -D -m644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/community-testing/python2-m2crypto/openssl1.patch b/community-testing/python2-m2crypto/openssl1.patch
new file mode 100644
index 000000000..59dba554d
--- /dev/null
+++ b/community-testing/python2-m2crypto/openssl1.patch
@@ -0,0 +1,531 @@
+Index: tests/test_ssl.py
+===================================================================
+--- tests/test_ssl.py (revision 698)
++++ tests/test_ssl.py (working copy)
+@@ -405,8 +405,11 @@
+ try:
+ ctx = SSL.Context('sslv23', weak_crypto=1)
+ s = SSL.Connection(ctx)
+- s.connect(self.srv_addr)
+- self.failUnlessEqual(s.get_version(), 'SSLv2')
++ if m2.OPENSSL_VERSION_NUMBER < 0x10000000: # SSLv2 ciphers disabled by default in newer OpenSSL
++ s.connect(self.srv_addr)
++ self.failUnlessEqual(s.get_version(), 'SSLv2')
++ else:
++ self.assertRaises(SSL.SSLError, s.connect, self.srv_addr)
+ s.close()
+ finally:
+ self.stop_server(pid)
+Index: tests/test_x509.py
+===================================================================
+--- tests/test_x509.py (revision 698)
++++ tests/test_x509.py (working copy)
+@@ -142,7 +142,7 @@
+ cn.set_data("Hello There!")
+ assert cn.get_data().as_text() == "Hello There!", cn.get_data().as_text()
+
+- assert n.as_hash() == 1697185131
++ self.assertEquals(n.as_hash(), 1697185131)
+
+ self.assertRaises(IndexError, lambda: n[100])
+ self.assert_(n[10])
+Index: tests/test_smime.py
+===================================================================
+--- tests/test_smime.py (revision 698)
++++ tests/test_smime.py (working copy)
+@@ -6,7 +6,7 @@
+ """
+
+ import unittest
+-from M2Crypto import SMIME, BIO, Rand, X509, EVP
++from M2Crypto import SMIME, BIO, Rand, X509, EVP, Err
+
+ class SMIMETestCase(unittest.TestCase):
+ cleartext = 'some text to manipulate'
+@@ -213,7 +213,7 @@
+
+ self.filenameSmime = 'tests/sig.p7s'
+ f = BIO.openfile(self.filenameSmime, 'wb')
+- assert s.write(f, p7, BIO.MemoryBuffer('some text')) == 1
++ assert s.write(f, p7, BIO.MemoryBuffer('some text')) == 1, Err.get_error()
+ f.close()
+
+ def test_write_pkcs7_der(self):
+Index: SWIG/_evp.i
+===================================================================
+--- SWIG/_evp.i (revision 695)
++++ SWIG/_evp.i (working copy)
+@@ -180,7 +180,7 @@
+
+ PKCS5_PBKDF2_HMAC_SHA1(passbuf, passlen, saltbuf, saltlen, iter,
+ keylen, key);
+- ret = PyString_FromStringAndSize(key, keylen);
++ ret = PyString_FromStringAndSize((char*)key, keylen);
+ OPENSSL_cleanse(key, keylen);
+ return ret;
+ }
+@@ -339,7 +339,7 @@
+ klen = EVP_BytesToKey(cipher, md, (unsigned char *)sbuf,
+ (unsigned char *)dbuf, dlen, iter,
+ key, NULL); /* Since we are not returning IV no need to derive it */
+- ret = PyString_FromStringAndSize(key, klen);
++ ret = PyString_FromStringAndSize((char*)key, klen);
+ return ret;
+ }
+
+@@ -435,7 +435,7 @@
+ PyErr_SetString(_evp_err, ERR_reason_error_string(ERR_get_error()));
+ return NULL;
+ }
+- ret = PyString_FromStringAndSize(sigbuf, siglen);
++ ret = PyString_FromStringAndSize((char*)sigbuf, siglen);
+ OPENSSL_cleanse(sigbuf, siglen);
+ OPENSSL_free(sigbuf);
+ return ret;
+@@ -513,7 +513,7 @@
+ PyErr_SetString(PyExc_ValueError, "EVP_PKEY as DER failed");
+ return NULL;
+ }
+- der = PyString_FromStringAndSize(pp, len);
++ der = PyString_FromStringAndSize((char*)pp, len);
+ OPENSSL_free(pp);
+ return der;
+ }
+Index: SWIG/_ssl.i
+===================================================================
+--- SWIG/_ssl.i (revision 695)
++++ SWIG/_ssl.i (working copy)
+@@ -17,13 +17,17 @@
+ %apply Pointer NONNULL { SSL_CTX * };
+ %apply Pointer NONNULL { SSL * };
+ %apply Pointer NONNULL { SSL_CIPHER * };
+-%apply Pointer NONNULL { STACK * };
++%apply Pointer NONNULL { STACK_OF(SSL_CIPHER) * };
++%apply Pointer NONNULL { STACK_OF(X509) * };
+ %apply Pointer NONNULL { BIO * };
+ %apply Pointer NONNULL { DH * };
+ %apply Pointer NONNULL { RSA * };
+ %apply Pointer NONNULL { EVP_PKEY *};
+ %apply Pointer NONNULL { PyObject *pyfunc };
+
++%rename(ssl_get_ciphers) SSL_get_ciphers;
++extern STACK_OF(SSL_CIPHER) *SSL_get_ciphers(const SSL *ssl);
++
+ %rename(ssl_get_version) SSL_get_version;
+ extern const char *SSL_get_version(CONST SSL *);
+ %rename(ssl_get_error) SSL_get_error;
+@@ -668,29 +672,25 @@
+ return SSL_CIPHER_get_bits(c, NULL);
+ }
+
+-STACK *ssl_get_ciphers(SSL *ssl) {
+- return (STACK *)SSL_get_ciphers(ssl);
++int sk_ssl_cipher_num(STACK_OF(SSL_CIPHER) *stack) {
++ return sk_SSL_CIPHER_num(stack);
+ }
+
+-int sk_ssl_cipher_num(STACK *stack) {
+- return sk_num(stack);
++SSL_CIPHER *sk_ssl_cipher_value(STACK_OF(SSL_CIPHER) *stack, int idx) {
++ return sk_SSL_CIPHER_value(stack, idx);
+ }
+
+-SSL_CIPHER *sk_ssl_cipher_value(STACK *stack, int idx) {
+- return (SSL_CIPHER *)sk_value(stack, idx);
++STACK_OF(X509) *ssl_get_peer_cert_chain(SSL *ssl) {
++ return SSL_get_peer_cert_chain(ssl);
+ }
+
+-STACK *ssl_get_peer_cert_chain(SSL *ssl) {
+- return (STACK *)SSL_get_peer_cert_chain(ssl);
++int sk_x509_num(STACK_OF(X509) *stack) {
++ return sk_X509_num(stack);
+ }
+
+-int sk_x509_num(STACK *stack) {
+- return sk_num(stack);
++X509 *sk_x509_value(STACK_OF(X509) *stack, int idx) {
++ return sk_X509_value(stack, idx);
+ }
+-
+-X509 *sk_x509_value(STACK *stack, int idx) {
+- return (X509 *)sk_value(stack, idx);
+-}
+ %}
+
+ %threadallow i2d_ssl_session;
+Index: SWIG/_x509.i
+===================================================================
+--- SWIG/_x509.i (revision 695)
++++ SWIG/_x509.i (working copy)
+@@ -148,8 +148,15 @@
+ extern int X509_NAME_print_ex(BIO *, X509_NAME *, int, unsigned long);
+ %rename(x509_name_print_ex_fp) X509_NAME_print_ex_fp;
+ extern int X509_NAME_print_ex_fp(FILE *, X509_NAME *, int, unsigned long);
++
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++%rename(x509_name_hash) X509_NAME_hash_old;
++extern unsigned long X509_NAME_hash_old(X509_NAME *);
++#else
+ %rename(x509_name_hash) X509_NAME_hash;
+ extern unsigned long X509_NAME_hash(X509_NAME *);
++#endif
++
+ %rename(x509_name_get_index_by_nid) X509_NAME_get_index_by_NID;
+ extern int X509_NAME_get_index_by_NID(X509_NAME *, int, int);
+
+@@ -171,7 +178,7 @@
+ if (PyString_Check($input)) {
+ Py_ssize_t len;
+
+- $1 = PyString_AsString($input);
++ $1 = (unsigned char *)PyString_AsString($input);
+ len = PyString_Size($input);
+ if (len > INT_MAX) {
+ PyErr_SetString(PyExc_ValueError, "object too large");
+@@ -184,7 +191,7 @@
+ }
+ }
+ %rename(x509_name_entry_set_data) X509_NAME_ENTRY_set_data;
+-extern int X509_NAME_ENTRY_set_data( X509_NAME_ENTRY *, int, CONST unsigned char *, int);
++extern int X509_NAME_ENTRY_set_data(X509_NAME_ENTRY *, int, CONST unsigned char *, int);
+ %typemap(in) (CONST unsigned char *, int);
+
+ %rename(x509_req_new) X509_REQ_new;
+@@ -230,7 +237,7 @@
+ %rename(x509_store_ctx_free) X509_STORE_CTX_free;
+ extern void X509_STORE_CTX_free(X509_STORE_CTX *);
+ %rename(x509_store_ctx_get1_chain) X509_STORE_CTX_get1_chain;
+-extern STACK *X509_STORE_CTX_get1_chain(X509_STORE_CTX *);
++extern STACK_OF(X509) *X509_STORE_CTX_get1_chain(X509_STORE_CTX *);
+
+ %rename(x509_extension_get_critical) X509_EXTENSION_get_critical;
+ extern int X509_EXTENSION_get_critical(X509_EXTENSION *);
+@@ -348,7 +355,7 @@
+ PyErr_SetString(_x509_err, ERR_reason_error_string(ERR_get_error()));
+ }
+ else {
+- ret = PyString_FromStringAndSize(buf, len);
++ ret = PyString_FromStringAndSize((char*)buf, len);
+ OPENSSL_free(buf);
+ }
+ return ret;
+@@ -435,12 +442,12 @@
+ }
+
+ int x509_name_set_by_nid(X509_NAME *name, int nid, PyObject *obj) {
+- return X509_NAME_add_entry_by_NID(name, nid, MBSTRING_ASC, PyString_AsString(obj), -1, -1, 0);
++ return X509_NAME_add_entry_by_NID(name, nid, MBSTRING_ASC, (unsigned char *)PyString_AsString(obj), -1, -1, 0);
+ }
+
+ /* x509_name_add_entry_by_txt */
+ int x509_name_add_entry_by_txt(X509_NAME *name, char *field, int type, char *bytes, int len, int loc, int set) {
+- return X509_NAME_add_entry_by_txt(name, field, type, bytes, len, loc, set);
++ return X509_NAME_add_entry_by_txt(name, field, type, (unsigned char *)bytes, len, loc, set);
+ }
+
+ PyObject *x509_name_get_der(X509_NAME *name)
+@@ -450,23 +457,23 @@
+ }
+
+ /* sk_X509_new_null() is a macro returning "STACK_OF(X509) *". */
+-STACK *sk_x509_new_null(void) {
+- return (STACK *)sk_X509_new_null();
++STACK_OF(X509) *sk_x509_new_null(void) {
++ return sk_X509_new_null();
+ }
+
+ /* sk_X509_free() is a macro. */
+-void sk_x509_free(STACK *stack) {
+- sk_X509_free((STACK_OF(X509) *)stack);
++void sk_x509_free(STACK_OF(X509) *stack) {
++ sk_X509_free(stack);
+ }
+
+ /* sk_X509_push() is a macro. */
+-int sk_x509_push(STACK *stack, X509 *x509) {
+- return sk_X509_push((STACK_OF(X509) *)stack, x509);
++int sk_x509_push(STACK_OF(X509) *stack, X509 *x509) {
++ return sk_X509_push(stack, x509);
+ }
+
+ /* sk_X509_pop() is a macro. */
+-X509 *sk_x509_pop(STACK *stack) {
+- return sk_X509_pop((STACK_OF(X509) *)stack);
++X509 *sk_x509_pop(STACK_OF(X509) *stack) {
++ return sk_X509_pop(stack);
+ }
+
+ int x509_store_load_locations(X509_STORE *store, const char *file) {
+@@ -493,21 +500,29 @@
+ return X509_REQ_set_version(x, version);
+ }
+
+-int x509_req_add_extensions(X509_REQ *req, STACK *exts) {
+- return X509_REQ_add_extensions(req, (STACK_OF(X509_EXTENSION) *)exts);
++int x509_req_add_extensions(X509_REQ *req, STACK_OF(X509_EXTENSION) *exts) {
++ return X509_REQ_add_extensions(req, exts);
+ }
+
+-X509_NAME_ENTRY *x509_name_entry_create_by_txt( X509_NAME_ENTRY **ne, char *field, int type, char *bytes, int len) {
+- return X509_NAME_ENTRY_create_by_txt( ne, field, type, bytes, len);
++X509_NAME_ENTRY *x509_name_entry_create_by_txt(X509_NAME_ENTRY **ne, char *field, int type, char *bytes, int len) {
++ return X509_NAME_ENTRY_create_by_txt( ne, field, type, (unsigned char *)bytes, len);
+ }
+
+-LHASH *
+-x509v3_lhash(){
+- return lh_new(NULL,NULL);
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++LHASH_OF(CONF_VALUE)
++#else
++LHASH
++#endif
++*x509v3_lhash() {
++ return lh_new(NULL, NULL); /* Should probably be lh_CONF_VALUE_new but won't compile. */
+ }
+
+ X509V3_CTX *
+-x509v3_set_conf_lhash(LHASH * lhash){
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++x509v3_set_conf_lhash(LHASH_OF(CONF_VALUE) * lhash) {
++#else
++x509v3_set_conf_lhash(LHASH * lhash) {
++#endif
+ X509V3_CTX * ctx;
+ if (!(ctx=(X509V3_CTX *)PyMem_Malloc(sizeof(X509V3_CTX)))) {
+ PyErr_SetString(PyExc_MemoryError, "x509v3_set_conf_lhash");
+@@ -517,11 +532,20 @@
+ return ctx;
+ }
+
+-X509_EXTENSION *x509v3_ext_conf(LHASH *conf, X509V3_CTX *ctx, char *name, char *value) {
++X509_EXTENSION *
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++x509v3_ext_conf(LHASH_OF(CONF_VALUE) *conf, X509V3_CTX *ctx, char *name, char *value) {
++#else
++x509v3_ext_conf(LHASH *conf, X509V3_CTX *ctx, char *name, char *value) {
++#endif
+ X509_EXTENSION * ext = NULL;
+ ext = X509V3_EXT_conf(conf, ctx, name, value);
+ PyMem_Free(ctx);
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ lh_CONF_VALUE_free(conf);
++#else
+ lh_free(conf);
++#endif
+ return ext;
+ }
+
+@@ -543,33 +567,33 @@
+ }
+
+ /* sk_X509_EXTENSION_new_null is a macro. */
+-STACK *sk_x509_extension_new_null(void) {
+- return (STACK *)sk_X509_EXTENSION_new_null();
++STACK_OF(X509_EXTENSION) *sk_x509_extension_new_null(void) {
++ return sk_X509_EXTENSION_new_null();
+ }
+
+ /* sk_X509_EXTENSION_free() is a macro. */
+-void sk_x509_extension_free(STACK *stack) {
+- sk_X509_EXTENSION_free((STACK_OF(X509_EXTENSION) *)stack);
++void sk_x509_extension_free(STACK_OF(X509_EXTENSION) *stack) {
++ sk_X509_EXTENSION_free(stack);
+ }
+
+ /* sk_X509_EXTENSION_push() is a macro. */
+-int sk_x509_extension_push(STACK *stack, X509_EXTENSION *x509_ext) {
+- return sk_X509_EXTENSION_push((STACK_OF(X509_EXTENSION) *)stack, x509_ext);
++int sk_x509_extension_push(STACK_OF(X509_EXTENSION) *stack, X509_EXTENSION *x509_ext) {
++ return sk_X509_EXTENSION_push(stack, x509_ext);
+ }
+
+ /* sk_X509_EXTENSION_pop() is a macro. */
+-X509_EXTENSION *sk_x509_extension_pop(STACK *stack) {
+- return sk_X509_EXTENSION_pop((STACK_OF(X509_EXTENSION) *)stack);
++X509_EXTENSION *sk_x509_extension_pop(STACK_OF(X509_EXTENSION) *stack) {
++ return sk_X509_EXTENSION_pop(stack);
+ }
+
+ /* sk_X509_EXTENSION_num() is a macro. */
+-int sk_x509_extension_num(STACK *stack) {
+- return sk_X509_EXTENSION_num((STACK_OF(X509_EXTENSION) *)stack);
++int sk_x509_extension_num(STACK_OF(X509_EXTENSION) *stack) {
++ return sk_X509_EXTENSION_num(stack);
+ }
+
+ /* sk_X509_EXTENSION_value() is a macro. */
+-X509_EXTENSION *sk_x509_extension_value(STACK *stack, int i) {
+- return sk_X509_EXTENSION_value((STACK_OF(X509_EXTENSION) *)stack, i);
++X509_EXTENSION *sk_x509_extension_value(STACK_OF(X509_EXTENSION) *stack, int i) {
++ return sk_X509_EXTENSION_value(stack, i);
+ }
+
+ /* X509_STORE_CTX_get_app_data is a macro. */
+@@ -590,7 +614,7 @@
+ #define I2DTYPE int (*)()
+ #endif
+
+-STACK *
++STACK_OF(X509) *
+ make_stack_from_der_sequence(PyObject * pyEncodedString){
+ STACK_OF(X509) *certs;
+ Py_ssize_t encoded_string_len;
+@@ -606,7 +630,7 @@
+ return NULL;
+ }
+
+- certs = ASN1_seq_unpack((unsigned char *)encoded_string, encoded_string_len, (D2ITYPE)d2i_X509, (void(*)())X509_free );
++ certs = ASN1_seq_unpack_X509((unsigned char *)encoded_string, encoded_string_len, d2i_X509, X509_free );
+ if (!certs) {
+ PyErr_SetString(_x509_err, ERR_reason_error_string(ERR_get_error()));
+ return NULL;
+@@ -616,13 +640,13 @@
+ }
+
+ PyObject *
+-get_der_encoding_stack(STACK * stack){
++get_der_encoding_stack(STACK_OF(X509) *stack){
+ PyObject * encodedString;
+
+ unsigned char * encoding;
+ int len;
+
+- encoding = ASN1_seq_pack((STACK_OF(X509)*) stack, (I2DTYPE)i2d_X509, NULL, &len);
++ encoding = ASN1_seq_pack_X509(stack, i2d_X509, NULL, &len);
+ if (!encoding) {
+ PyErr_SetString(_x509_err, ERR_reason_error_string(ERR_get_error()));
+ return NULL;
+Index: SWIG/_aes.i
+===================================================================
+--- SWIG/_aes.i (revision 695)
++++ SWIG/_aes.i (working copy)
+@@ -76,7 +76,7 @@
+ AES_encrypt((const unsigned char *)in, out, key);
+ else
+ AES_decrypt((const unsigned char *)in, out, key);
+- return PyString_FromStringAndSize(out, outlen);
++ return PyString_FromStringAndSize((char*)out, outlen);
+ }
+
+ int AES_type_check(AES_KEY *key) {
+Index: SWIG/_util.i
+===================================================================
+--- SWIG/_util.i (revision 695)
++++ SWIG/_util.i (working copy)
+@@ -48,7 +48,7 @@
+ PyErr_SetString(_util_err, ERR_reason_error_string(ERR_get_error()));
+ return NULL;
+ }
+- obj = PyString_FromStringAndSize(ret, len);
++ obj = PyString_FromStringAndSize((char*)ret, len);
+ OPENSSL_free(ret);
+ return obj;
+ }
+Index: SWIG/_m2crypto.i
+===================================================================
+--- SWIG/_m2crypto.i (revision 695)
++++ SWIG/_m2crypto.i (working copy)
+@@ -38,6 +38,19 @@
+ #define CONST098
+ #endif
+
++/* Bring in STACK_OF macro definition */
++%include <openssl/safestack.h>
++
++/* Bring in LHASH_OF macro definition */
++/* XXX Can't include lhash.h where LHASH_OF is defined, because it includes
++ XXX stdio.h etc. which we fail to include. So we have to (re)define
++ XXX LHASH_OF here instead.
++%include <openssl/lhash.h>
++*/
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++#define LHASH_OF(type) struct lhash_st_##type
++#endif
++
+ %include constraints.i
+ %include _threads.i
+ %include _lib.i
+Index: SWIG/_rand.i
+===================================================================
+--- SWIG/_rand.i (revision 695)
++++ SWIG/_rand.i (working copy)
+@@ -87,7 +87,7 @@
+ Py_INCREF(Py_None);
+ return Py_None;
+ } else {
+- PyTuple_SET_ITEM(tuple, 0, PyString_FromStringAndSize(blob, n));
++ PyTuple_SET_ITEM(tuple, 0, PyString_FromStringAndSize((char*)blob, n));
+ PyMem_Free(blob);
+ PyTuple_SET_ITEM(tuple, 1, PyInt_FromLong((long)ret));
+ return tuple;
+Index: SWIG/_pkcs7.i
+===================================================================
+--- SWIG/_pkcs7.i (revision 695)
++++ SWIG/_pkcs7.i (working copy)
+@@ -12,7 +12,7 @@
+ %apply Pointer NONNULL { EVP_CIPHER * };
+ %apply Pointer NONNULL { EVP_PKEY * };
+ %apply Pointer NONNULL { PKCS7 * };
+-%apply Pointer NONNULL { STACK * };
++%apply Pointer NONNULL { STACK_OF(X509) * };
+ %apply Pointer NONNULL { X509 * };
+
+ %rename(pkcs7_new) PKCS7_new;
+@@ -54,8 +54,8 @@
+
+ %threadallow pkcs7_encrypt;
+ %inline %{
+-PKCS7 *pkcs7_encrypt(STACK *stack, BIO *bio, EVP_CIPHER *cipher, int flags) {
+- return PKCS7_encrypt((STACK_OF(X509) *)stack, bio, cipher, flags);
++PKCS7 *pkcs7_encrypt(STACK_OF(X509) *stack, BIO *bio, EVP_CIPHER *cipher, int flags) {
++ return PKCS7_encrypt(stack, bio, cipher, flags);
+ }
+
+ PyObject *pkcs7_decrypt(PKCS7 *pkcs7, EVP_PKEY *pkey, X509 *cert, int flags) {
+@@ -96,14 +96,14 @@
+
+ %threadallow pkcs7_sign1;
+ %inline %{
+-PKCS7 *pkcs7_sign1(X509 *x509, EVP_PKEY *pkey, STACK *stack, BIO *bio, int flags) {
+- return PKCS7_sign(x509, pkey, (STACK_OF(X509) *)stack, bio, flags);
++PKCS7 *pkcs7_sign1(X509 *x509, EVP_PKEY *pkey, STACK_OF(X509) *stack, BIO *bio, int flags) {
++ return PKCS7_sign(x509, pkey, stack, bio, flags);
+ }
+ %}
+
+ %threadallow pkcs7_verify1;
+ %inline %{
+-PyObject *pkcs7_verify1(PKCS7 *pkcs7, STACK *stack, X509_STORE *store, BIO *data, int flags) {
++PyObject *pkcs7_verify1(PKCS7 *pkcs7, STACK_OF(X509) *stack, X509_STORE *store, BIO *data, int flags) {
+ int outlen;
+ char *outbuf;
+ BIO *bio;
+@@ -113,7 +113,7 @@
+ PyErr_SetString(PyExc_MemoryError, "pkcs7_verify1");
+ return NULL;
+ }
+- if (!PKCS7_verify(pkcs7, (STACK_OF(X509) *)stack, store, data, bio, flags)) {
++ if (!PKCS7_verify(pkcs7, stack, store, data, bio, flags)) {
+ PyErr_SetString(_pkcs7_err, ERR_reason_error_string(ERR_get_error()));
+ BIO_free(bio);
+ return NULL;
+@@ -131,7 +131,7 @@
+ return ret;
+ }
+
+-PyObject *pkcs7_verify0(PKCS7 *pkcs7, STACK *stack, X509_STORE *store, int flags) {
++PyObject *pkcs7_verify0(PKCS7 *pkcs7, STACK_OF(X509) *stack, X509_STORE *store, int flags) {
+ return pkcs7_verify1(pkcs7, stack, store, NULL, flags);
+ }
+ %}
+@@ -229,7 +229,7 @@
+ }
+
+ /* return STACK_OF(X509)* */
+-STACK *pkcs7_get0_signers(PKCS7 *p7, STACK *certs, int flags) {
++STACK_OF(X509) *pkcs7_get0_signers(PKCS7 *p7, STACK_OF(X509) *certs, int flags) {
+ return PKCS7_get0_signers(p7, certs, flags);
+ }
+
diff --git a/community-testing/python2-pybluez/PKGBUILD b/community-testing/python2-pybluez/PKGBUILD
new file mode 100644
index 000000000..6007614a6
--- /dev/null
+++ b/community-testing/python2-pybluez/PKGBUILD
@@ -0,0 +1,23 @@
+# $Id: PKGBUILD 66132 2012-02-23 01:40:38Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: cs-cam - me.at.camdaniel.com
+
+pkgname=python2-pybluez
+pkgver=0.18
+pkgrel=4
+pkgdesc="Python wrapper for the BlueZ Bluetooth stack"
+arch=('i686' 'x86_64')
+url="http://code.google.com/p/pybluez/"
+license=('GPL')
+provides=('pybluez')
+conflicts=('pybluez')
+replaces=('pybluez')
+depends=('python2' 'bluez')
+source=(http://pybluez.googlecode.com/files/PyBluez-$pkgver.tar.gz)
+md5sums=('be8c8ce615c3189fda1aaf3d568314b2')
+
+build() {
+ cd $srcdir/PyBluez-$pkgver
+ python2 setup.py install --root=$pkgdir
+ ln -s bluetooth/_bluetooth.so $pkgdir/usr/lib/python2.7/site-packages/_bluetooth.so
+}
diff --git a/community-testing/python2-pyxmpp/PKGBUILD b/community-testing/python2-pyxmpp/PKGBUILD
new file mode 100644
index 000000000..49096a86f
--- /dev/null
+++ b/community-testing/python2-pyxmpp/PKGBUILD
@@ -0,0 +1,20 @@
+# $Id: PKGBUILD 72078 2012-06-08 09:35:02Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: William Rea <sillywilly@gmail.com>
+
+pkgname=python2-pyxmpp
+pkgver=1.1.2
+pkgrel=2
+pkgdesc="A Python XMPP and Jabber implementation based on libxml2"
+arch=('i686' 'x86_64')
+url="http://pyxmpp.jajcus.net/"
+license=('LGPL')
+depends=('python2-dnspython' 'libxml2' 'python2-m2crypto')
+source=(http://pyxmpp.jajcus.net/downloads/pyxmpp-$pkgver.tar.gz)
+md5sums=('a38abf032aca0408b6055cd94296eb75')
+
+build() {
+ cd $srcdir/pyxmpp-$pkgver
+ python2 setup.py build
+ python2 setup.py install --root=$pkgdir
+}
diff --git a/community-testing/python2-simplejson/PKGBUILD b/community-testing/python2-simplejson/PKGBUILD
new file mode 100644
index 000000000..1ec0a97b5
--- /dev/null
+++ b/community-testing/python2-simplejson/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 74926 2012-08-09 22:02:03Z jlichtblau $
+# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
+# Contributor: David Moore <davidm@sjsoft.com>
+
+pkgname=python2-simplejson
+pkgver=2.6.1
+pkgrel=3
+pkgdesc="Simple, fast, extensible JSON encoder/decoder for Python"
+license=('MIT')
+arch=('i686' 'x86_64')
+url="http://undefined.org/python/#simplejson"
+depends=('python2')
+makedepends=('python2-distribute')
+provides=("python-simplejson=$pkgver")
+conflicts=('python-simplejson')
+replaces=('python-simplejson')
+changelog=$pkgname.changelog
+source=($pkgname-$pkgver.tar.gz::https://github.com/simplejson/simplejson/tarball/v${pkgver})
+sha256sums=('484b4cf0a545fc59a19ea8eed3a957919a89be116804b53712ec63466d7c3a31')
+
+build() {
+ cd ${srcdir}/simplejson-simplejson-*
+
+ python2 setup.py install --root=${pkgdir}
+
+# License
+ install -Dm644 ${srcdir}/simplejson-simplejson-*/LICENSE.txt \
+ ${pkgdir}/usr/share/licenses/$pkgname/LICENSE
+}
diff --git a/community-testing/python2-simplejson/python2-simplejson.changelog b/community-testing/python2-simplejson/python2-simplejson.changelog
new file mode 100644
index 000000000..c1e227d24
--- /dev/null
+++ b/community-testing/python2-simplejson/python2-simplejson.changelog
@@ -0,0 +1,20 @@
+2012-07-09 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * python-simplejson 2.6.1-1
+
+2012-05-24 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * python-simplejson 2.5.2-1
+
+2012-03-08 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * python-simplejson 2.3.3-1
+
+2011-10-26 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * python-simplejson 2.2.1-1
+
+2011-05-01 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * python-simplejson 2.1.3-1
+
+2010-05-15 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * Update to major release 2.1.1
+
+2010-03-27 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * Update to major release 2.1.0
diff --git a/community-testing/python2-vorbissimple/PKGBUILD b/community-testing/python2-vorbissimple/PKGBUILD
new file mode 100644
index 000000000..ba0a8be63
--- /dev/null
+++ b/community-testing/python2-vorbissimple/PKGBUILD
@@ -0,0 +1,21 @@
+# $Id: PKGBUILD 66136 2012-02-23 01:43:46Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: William Rea <sillywilly@gmail.com>
+
+pkgname=python2-vorbissimple
+pkgver=0.0.2
+pkgrel=6
+pkgdesc="Python bindings for vorbissimple"
+arch=('i686' 'x86_64')
+url="http://kamaelia.sourceforge.net"
+license=('MPL')
+depends=('python2' 'vorbissimple')
+makedepends=('pyrex')
+source=(http://downloads.sourceforge.net/kamaelia/vorbissimple-$pkgver.tar.gz)
+md5sums=('332077b25a4c9547947ab0922361ffda')
+
+build() {
+ cd $srcdir/vorbissimple-$pkgver/python
+ sed -i 's#__new__#__cinit__#' vorbissimple.pyx
+ python2 setup.py install --root=$pkgdir
+}
diff --git a/community-testing/sdcc/PKGBUILD b/community-testing/sdcc/PKGBUILD
new file mode 100644
index 000000000..378727faa
--- /dev/null
+++ b/community-testing/sdcc/PKGBUILD
@@ -0,0 +1,34 @@
+# $Id: PKGBUILD 78121 2012-10-16 11:54:21Z allan $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Jose Negron <josenj.arch@mailnull.net>
+
+pkgname=sdcc
+pkgver=3.2.0
+pkgrel=2
+pkgdesc="Retargettable ANSI C compiler (Intel 8051, Maxim 80DS390, Zilog Z80 and the Motorola 68HC08)"
+arch=('i686' 'x86_64')
+license=('GPL')
+depends=('bash' 'gcc-libs' 'boost-libs')
+makedepends=('gputils' 'flex' 'bison' 'patch' 'boost')
+optdepends=('python')
+url="http://sdcc.sourceforge.net/"
+options=(!strip)
+source=(http://downloads.sourceforge.net/sourceforge/sdcc/$pkgname-src-$pkgver.tar.bz2)
+md5sums=('0808a9b4109d2ba6046ddd7b679a0012')
+
+build() {
+ cd $srcdir/$pkgname
+ ./configure \
+ --prefix=/usr \
+ --includedir=/usr/include/sdcc \
+ --libdir=/usr/lib/sdcc
+ make
+ make install DESTDIR=$pkgdir
+
+ if [ -d $pkgdir/usr/lib/lib ]; then
+ mv $pkgdir/usr/lib/lib/* $pkgdir/usr/lib/sdcc/
+ rm -rf $pkgdir/usr/lib/lib
+ fi
+
+ sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python3|' $pkgdir/usr/bin/as2gbmap
+}
diff --git a/community-testing/tix/PKGBUILD b/community-testing/tix/PKGBUILD
new file mode 100644
index 000000000..e5a35e2b2
--- /dev/null
+++ b/community-testing/tix/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id: PKGBUILD 78122 2012-10-16 11:54:26Z allan $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Brice Méalier <mealier_brice@yahoo.fr>
+
+pkgname=tix
+pkgver=8.4.3
+pkgrel=4
+pkgdesc="Tk Interface eXtension, a powerful set of user interface components"
+arch=(i686 'x86_64')
+url="http://tix.sourceforge.net/"
+license=("BSD")
+depends=('tk' 'libx11')
+source=(http://downloads.sourceforge.net/tix/Tix$pkgver-src.tar.gz
+ tcl-tk-path.patch)
+md5sums=('2b8bf4b10a852264678182652f477e59'
+ 'd4df48da39dd51872d58706a51bab505')
+
+build() {
+ cd $srcdir/Tix$pkgver
+
+ patch -p1 <$srcdir/tcl-tk-path.patch
+
+ export CFLAGS="$CFLAGS -DERR_IN_PROGRESS=2"
+
+ ./configure --prefix=/usr
+ make
+ make DESTDIR=$pkgdir install
+ # move things around
+
+ install -m755 tools/tixindex $pkgdir/usr/bin/tixindex
+ rm -rf $pkgdir/usr/lib/Tix8.4/html
+ rm -f $pkgdir/usr/lib/Tix8.4/{README.txt,license.terms}
+ ln -s Tix$pkgver/libTix$pkgver.so $pkgdir/usr/lib/libTix$pkgver.so
+
+ mkdir -p $pkgdir/usr/share/man/man1
+ mkdir -p $pkgdir/usr/share/man/man3
+ cp -p man/tixwish.1 $pkgdir/usr/share/man/man1
+ cd $srcdir/Tix$pkgver/man
+ for i in *.n; do
+ cp -p $i $pkgdir/usr/share/man/man3/${i%n}3
+ done
+
+ mkdir -p $pkgdir/usr/share/licenses/tix
+ cp $srcdir/Tix$pkgver/license.terms $pkgdir/usr/share/licenses/tix/
+}
+
diff --git a/community-testing/tix/tcl-tk-path.patch b/community-testing/tix/tcl-tk-path.patch
new file mode 100644
index 000000000..2fc12671e
--- /dev/null
+++ b/community-testing/tix/tcl-tk-path.patch
@@ -0,0 +1,22 @@
+diff -wbBur Tix8.4.3/configure Tix8.4.3.my/configure
+--- Tix8.4.3/configure 2008-02-28 04:35:01.000000000 +0000
++++ Tix8.4.3.my/configure 2009-12-28 10:57:33.000000000 +0000
+@@ -6645,7 +6645,7 @@
+ ;;
+ esac
+ else
+- if test ! -f "${TCL_SRC_DIR}/generic/tclInt.h" ; then
++ if test ! -f "${TCL_SRC_DIR}/tclInt.h" ; then
+ { { echo "$as_me:$LINENO: error: Cannot find private header tclInt.h in ${TCL_SRC_DIR}" >&5
+ echo "$as_me: error: Cannot find private header tclInt.h in ${TCL_SRC_DIR}" >&2;}
+ { (exit 1); exit 1; }; }
+@@ -6700,7 +6700,7 @@
+ ;;
+ esac
+ else
+- if test ! -f "${TK_SRC_DIR}/generic/tkInt.h" ; then
++ if test ! -f "${TK_SRC_DIR}/tk-private/generic/tkInt.h" ; then
+ { { echo "$as_me:$LINENO: error: Cannot find private header tkInt.h in ${TK_SRC_DIR}" >&5
+ echo "$as_me: error: Cannot find private header tkInt.h in ${TK_SRC_DIR}" >&2;}
+ { (exit 1); exit 1; }; }
+
diff --git a/community-testing/ubuntuone-client/1339_1338.diff b/community-testing/ubuntuone-client/1339_1338.diff
new file mode 100644
index 000000000..cbd966a70
--- /dev/null
+++ b/community-testing/ubuntuone-client/1339_1338.diff
@@ -0,0 +1,57 @@
+=== modified file 'tests/platform/sync_menu/test_linux.py'
+--- tests/platform/sync_menu/test_linux.py 2012-10-10 14:54:49 +0000
++++ tests/platform/sync_menu/test_linux.py 2012-10-11 12:01:27 +0000
+@@ -124,6 +124,7 @@
+ """Check that the dummy has the proper methods required by the API."""
+ dummy = linux.DummySyncMenu('random', 'args')
+ self.assertIsInstance(dummy.update_transfers, Callable)
++ self.assertIsInstance(dummy.sync_status_changed, Callable)
+
+
+ class SyncMenuTestCase(TestCase):
+
+=== modified file 'ubuntuone/platform/sync_menu/linux.py'
+--- ubuntuone/platform/sync_menu/linux.py 2012-10-10 17:06:14 +0000
++++ ubuntuone/platform/sync_menu/linux.py 2012-10-11 13:00:10 +0000
+@@ -183,7 +183,7 @@
+ self.timer.addCallback(self._timeout)
+
+
+-class TransfersMenu(Dbusmenu.Menuitem):
++class TransfersMenu(Dbusmenu.Menuitem if use_syncmenu else object):
+ """Menu that handles the recent and current transfers."""
+
+ def __init__(self, status_frontend):
+@@ -227,7 +227,7 @@
+ items_added = 0
+ remove = []
+ for item in self._uploading_items:
+- if item in uploading_data:
++ if item in uploading_data.keys():
+ size, written = uploading_data[item]
+ percentage = written * 100 / size
+ upload_item = self._uploading_items[item]
+@@ -243,7 +243,7 @@
+ for item in remove:
+ self._uploading_items.pop(item)
+ if items_added < 5:
+- for item in uploading_data:
++ for item in uploading_data.keys():
+ if item not in self._uploading_items and items_added < 5:
+ size, written = uploading_data[item]
+ percentage = written * 100 / size
+@@ -270,4 +270,12 @@
+ def update_transfers(self):
+ """Do nothing."""
+
+-UbuntuOneSyncMenu = UbuntuOneSyncMenuLinux if use_syncmenu else DummySyncMenu
++ def sync_status_changed(self):
++ """Do nothing."""
++
++
++if use_syncmenu:
++ UbuntuOneSyncMenu = UbuntuOneSyncMenuLinux
++else:
++ UbuntuOneSyncMenu = DummySyncMenu
++ TransfersMenu = None
+
diff --git a/community-testing/ubuntuone-client/PKGBUILD b/community-testing/ubuntuone-client/PKGBUILD
new file mode 100644
index 000000000..e2f8b8b43
--- /dev/null
+++ b/community-testing/ubuntuone-client/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id: PKGBUILD 78124 2012-10-16 11:54:37Z allan $
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+
+pkgname=ubuntuone-client
+pkgver=4.0.0
+pkgrel=2
+pkgdesc="Ubuntu One helps you store, sync and share files between your computers"
+arch=('i686' 'x86_64')
+url="https://launchpad.net/ubuntuone-client"
+license=('GPL')
+depends=('dbus-glib' 'python2-configglue' 'python2-distribute' 'libnotify' 'python2-gobject2' 'python2-pyinotify' 'python2-simplejson' 'ubuntu-sso-client' 'python2-ubuntuone-storageprotocol' 'hicolor-icon-theme' 'xdg-utils')
+makedepends=('intltool' 'imake' 'gobject-introspection')
+options=('!libtool')
+install=$pkgname.install
+source=(http://launchpad.net/ubuntuone-client/stable-4-0/$pkgver/+download/$pkgname-$pkgver.tar.gz
+ 1339_1338.diff
+ fix-notify-hint.patch)
+md5sums=('738039703d4dcf54518a725f8ffbc4de'
+ 'e82e80c229de06692988c1f938a34fb9'
+ '54dfeb2be011f0a12ea7cfa0f0c19bec')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ sed -i 's@^#!.*python$@#!/usr/bin/python2@' bin/*
+
+ # Improve TransfersMenu declaration to avoid problems
+ patch -Np0 -i "$srcdir/1339_1338.diff"
+
+ # Workaround for crash in notification-daemon
+ # https://bugzilla.gnome.org/show_bug.cgi?id=665166
+ patch -Np1 -i "$srcdir/fix-notify-hint.patch"
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libexecdir=/usr/lib/$pkgname \
+ --disable-static \
+ PYTHON=python2
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make DESTDIR="$pkgdir/" install
+
+ # We don't have Apport in Arch Linux
+ rm -r "$pkgdir"/{etc/apport,usr/share/apport}
+}
diff --git a/community-testing/ubuntuone-client/fix-notify-hint.patch b/community-testing/ubuntuone-client/fix-notify-hint.patch
new file mode 100644
index 000000000..f32280de9
--- /dev/null
+++ b/community-testing/ubuntuone-client/fix-notify-hint.patch
@@ -0,0 +1,20 @@
+diff -Naur ubuntuone-client-4.0.0.orig/ubuntuone/platform/notification/linux.py ubuntuone-client-4.0.0/ubuntuone/platform/notification/linux.py
+--- ubuntuone-client-4.0.0.orig/ubuntuone/platform/notification/linux.py 2012-06-19 15:51:01.000000000 +0200
++++ ubuntuone-client-4.0.0/ubuntuone/platform/notification/linux.py 2012-10-15 01:14:01.019476818 +0200
+@@ -40,7 +40,7 @@
+
+ if 'gi' in sys.modules and sys.modules['gi'] is not None:
+ try:
+- from gi.repository import Notify
++ from gi.repository import GLib, Notify
+ Notify # pyflakes
+ NOTIFY_MODULE = 'gi'
+ except ImportError:
+@@ -85,5 +85,6 @@
+ if append:
+ self.notification.set_hint_string('x-canonical-append', '')
+
+- self.notification.set_hint_int32('transient', int(True))
++ if NOTIFY_MODULE == 'gi':
++ self.notification.set_hint('transient', GLib.Variant.new_boolean(1))
+ self.notification.show()
diff --git a/community-testing/ubuntuone-client/ubuntuone-client.install b/community-testing/ubuntuone-client/ubuntuone-client.install
new file mode 100644
index 000000000..2c455e952
--- /dev/null
+++ b/community-testing/ubuntuone-client/ubuntuone-client.install
@@ -0,0 +1,11 @@
+post_install() {
+ xdg-icon-resource forceupdate
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ post_install $1
+}
diff --git a/community-testing/uniconvertor/PKGBUILD b/community-testing/uniconvertor/PKGBUILD
new file mode 100644
index 000000000..6c15816af
--- /dev/null
+++ b/community-testing/uniconvertor/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 78126 2012-10-16 11:54:43Z allan $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Roberto Alsina <ralsina@kde.org>
+
+pkgname=uniconvertor
+pkgver=1.1.5
+pkgrel=6
+pkgdesc="A universal vector graphics translator using sK1 engine."
+arch=('i686' 'x86_64')
+url="http://sk1project.org/modules.php?name=Products&product=uniconvertor"
+license=('GPL')
+depends=('python2' 'python2-imaging' 'python2-reportlab' 'sk1libs')
+makedepends=('gcc')
+source=(http://uniconvertor.googlecode.com/files/uniconvertor-$pkgver.tar.gz)
+md5sums=('d1272315a58304ece2ff588834e23f72')
+
+build() {
+ cd "$srcdir/uniconvertor-$pkgver"
+
+ # python2 fix
+ sed -i 's_#! /usr/bin/python_#! /usr/bin/python2_' src/__init__.py
+
+ python2 setup.py build
+}
+
+package() {
+ cd "$srcdir/uniconvertor-$pkgver"
+ python2 setup.py install --root="$pkgdir"
+}
diff --git a/community-testing/virtkey/PKGBUILD b/community-testing/virtkey/PKGBUILD
new file mode 100644
index 000000000..7d350b553
--- /dev/null
+++ b/community-testing/virtkey/PKGBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+# Contributor: codl <codl@aquageek.net>
+# Contributor: Megamixman <Megamixman@gmail.com>
+
+pkgbase=virtkey
+pkgname=('python2-virtkey' 'python-virtkey')
+pkgver=0.61.0
+pkgrel=2
+arch=('i686' 'x86_64')
+url="https://launchpad.net/virtkey"
+license=('LGPL')
+makedepends=('python2' 'python' 'libxtst' 'gtk2')
+source=(http://launchpad.net/$pkgbase/${pkgver%.*}/$pkgver/+download/$pkgbase-$pkgver.tar.gz)
+md5sums=('536d30acb2c8ddadc6b4a26fc01e8390')
+
+build() {
+ cd "$srcdir"
+
+ cp -a {,python2-}$pkgbase-$pkgver
+
+ # Build python 2 module
+ cd "$srcdir/python2-$pkgbase-$pkgver"
+ python2 setup.py build
+
+ # Build python 3 module
+ cd "$srcdir/$pkgbase-$pkgver"
+ python setup.py build
+}
+
+package_python2-virtkey() {
+ pkgdesc="Python 2 extension for emulating keypresses and getting layout information from the X server"
+ depends=('python2' 'libxtst' 'gtk2')
+
+ cd "$srcdir/python2-$pkgbase-$pkgver"
+
+ python2 setup.py install --root=$pkgdir/ --optimize=1
+}
+
+package_python-virtkey() {
+ pkgdesc="Python extension for emulating keypresses and getting layout information from the X server"
+ depends=('python' 'libxtst' 'gtk2')
+
+ cd "$srcdir/$pkgbase-$pkgver"
+
+ python3 setup.py install --root=$pkgdir/ --optimize=1
+}
diff --git a/community-testing/znc/PKGBUILD b/community-testing/znc/PKGBUILD
new file mode 100644
index 000000000..7222f1953
--- /dev/null
+++ b/community-testing/znc/PKGBUILD
@@ -0,0 +1,50 @@
+# $Id: PKGBUILD 78129 2012-10-16 11:54:52Z allan $
+# Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org>
+# Contributor: Kaiting Chen <kaitocracy@gmail.com>
+# Contributor: mickael9 <mickael9 at gmail dot com>
+
+pkgname=znc
+pkgver=0.206
+pkgrel=3
+pkgdesc='An IRC bouncer with modules & scripts support'
+url='http://en.znc.in/wiki/index.php/ZNC'
+license=('GPL2')
+arch=('i686' 'x86_64')
+depends=('c-ares' 'libsasl')
+#makedepends=('swig' 'tcl' 'python' 'perl')
+makedepends=('tcl' 'python' 'perl')
+optdepends=('tcl: modtcl module'
+ 'python: modpython module'
+ 'perl: modperl module'
+ 'cyrus-sasl: saslauth module')
+source=("http://znc.in/releases/$pkgname-$pkgver.tar.gz"
+ "http://people.znc.in/~darthgandalf/znc/modperl/modperl-znc-0.204.tar.bz2"
+ "http://people.znc.in/~darthgandalf/znc/modpython/modpython-znc-0.204.tar.bz2")
+md5sums=('b7d3f21da81abaeb553066b0e10beb53'
+ 'a9c72d556d9a4ef100520433f17d71ae'
+ '19bf033c5cb9243171c215043c594f07')
+
+build() {
+ # swig 2.0.6 is bugged, see http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=672035
+ # use an alternate ways of building znc explain here:
+ # - http://wiki.znc.in/Modperl
+ # - http://wiki.znc.in/Modpython
+ mv -v modperl/* $pkgname-$pkgver/modules/modperl
+ mv -v modpython/* $pkgname-$pkgver/modules/modpython
+ cd $pkgname-$pkgver
+ ./configure --prefix=/usr \
+ --enable-sasl \
+ --enable-python \
+ --enable-perl \
+ --enable-tcl \
+ --disable-swig \
+ --enable-extra
+ make
+}
+
+package() {
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
+}
+
+# vim:set ts=2 sw=2 et: