From 4eb56e1b3a80c84f2dddf2692310369dc9cbd31a Mon Sep 17 00:00:00 2001 From: root Date: Sun, 14 Oct 2012 00:46:01 -0700 Subject: Sun Oct 14 00:45:38 PDT 2012 --- community-staging/gigi/PKGBUILD | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) (limited to 'community-staging') diff --git a/community-staging/gigi/PKGBUILD b/community-staging/gigi/PKGBUILD index 3a7c2321d..66e4f6b09 100644 --- a/community-staging/gigi/PKGBUILD +++ b/community-staging/gigi/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 73559 2012-07-09 20:29:24Z arodseth $ +# $Id: PKGBUILD 77673 2012-10-13 12:05:23Z lcarlier $ # Maintainer: Alexander Rødseth # Contributor: Sven-Hendrik Haase # Contributor: fana-m @@ -7,15 +7,14 @@ pkgname=gigi pkgver=0.8.0 -pkgrel=11 -_fixedrevision=1074 -pkgdesc="Small, efficient and feature rich GUI for C++ and OpenGL" +pkgrel=14 +_fixedrevision=5208 +pkgdesc="Small, efficient and feature rich GUI for C++ and OpenGL (freeorion fork)" url="http://gigi.sourceforge.net/" arch=('x86_64' 'i686') license=('LGPL') -depends=('boost' 'mesa' 'libpng' 'libjpeg' 'libtiff' 'freetype2' 'ogre' 'sdl' 'ois' 'python') -makedepends=('subversion' 'cmake' 'setconf' 'doxygen') -conflicts=('gigi-svn' 'mesa-full') +depends=('boost' 'libpng' 'libtiff' 'ogre' 'sdl' 'python') +makedepends=('subversion' 'cmake' 'setconf' 'doxygen' 'mesa') build() { cd "$srcdir" @@ -24,7 +23,8 @@ build() { if [ -d gigi/.svn ]; then (cd gigi && svn up -r "$_fixedrevision") else - svn co https://gigi.svn.sourceforge.net/svnroot/gigi/trunk/GG/ \ + #svn co https://gigi.svn.sourceforge.net/svnroot/gigi/trunk/GG/ \ + svn co https://freeorion.svn.sourceforge.net/svnroot/freeorion/trunk/FreeOrion/GG/ \ --config-dir ./ -r "$_fixedrevision" gigi fi @@ -32,12 +32,6 @@ build() { svn export gigi gigi-build cd gigi-build - msg2 "Patching..." - sed -i 's/move_backward(/adobe::move_backward(/g' GG/adobe/vector.hpp - sed -i 's/__GNUC_MINOR__ <= 6/__GNUC_MINOR__ <= 999/g' GG/adobe/cmath.hpp - sed -i 's/insert(adobe/this->insert(adobe/g' GG/adobe/closed_hash.hpp - sed -i 's:TIME_UTC:TIME_UTC_:' src/GUI.cpp - msg2 "Configuring..." setconf cmake/GiGiOgre.pc.in prefix /usr setconf cmake/GiGi.pc.in prefix /usr @@ -72,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" -- cgit v1.2.3-54-g00ecf From e9dd04abd0ede1143ea4af10059e37c2f599e1fd Mon Sep 17 00:00:00 2001 From: root Date: Mon, 15 Oct 2012 00:36:27 -0700 Subject: Mon Oct 15 00:36:26 PDT 2012 --- community-staging/dee/PKGBUILD | 34 ++ community-staging/lxdm/PKGBUILD | 38 +- community-staging/lxdm/lxdm-pam | 2 + community-staging/lxdm/lxdm.install | 26 +- community-staging/lxdm/pam-env-vars.patch | 50 ++ community-staging/lxdm/service | 2 +- community-staging/python-bsddb/LICENSE | 19 + community-staging/python-bsddb/PKGBUILD | 49 ++ community-staging/python-openbabel/PKGBUILD | 38 ++ community-staging/python-pymongo/PKGBUILD | 37 ++ community-staging/python-sqlalchemy/PKGBUILD | 44 ++ community/calf/PKGBUILD | 38 +- community/calf/calf.install | 14 + community/easystroke/PKGBUILD | 6 +- community/go/PKGBUILD | 71 +-- community/haskell-tar/PKGBUILD | 37 +- community/rygel/PKGBUILD | 10 +- community/seahorse-nautilus/PKGBUILD | 15 +- community/seahorse-nautilus/fix-schema.patch | 20 + .../seahorse-nautilus/seahorse-nautilus.install | 1 + community/tig/PKGBUILD | 4 +- community/ubuntuone-client-gnome/PKGBUILD | 20 +- community/ubuntuone-client/1339_1338.diff | 57 ++ community/ubuntuone-client/PKGBUILD | 31 +- community/ubuntuone-client/fix-notify-hint.patch | 20 + community/uget/PKGBUILD | 11 +- core/curl/PKGBUILD | 10 +- extra/gcin/PKGBUILD | 10 +- extra/graphicsmagick/PKGBUILD | 6 +- extra/gtk-vnc/PKGBUILD | 10 +- extra/kdebase-workspace/PKGBUILD | 18 +- extra/kdebase-workspace/kde-np.pam | 19 +- extra/kdebase-workspace/kde.pam | 15 +- extra/kdebase-workspace/kdm.logrotate | 6 + extra/ruby/PKGBUILD | 43 +- extra/x11vnc/PKGBUILD | 5 +- extra/xfce4-mixer/PKGBUILD | 12 +- gnome-unstable/networkmanager/PKGBUILD | 6 +- gnome-unstable/networkmanager/systemd-sleep.patch | 645 ++++++++++----------- multilib/lib32-sqlite/PKGBUILD | 10 +- staging/python-iwscan/PKGBUILD | 26 + staging/python-notify/PKGBUILD | 43 ++ staging/python-notify/libnotify07.patch | 36 ++ .../notify-python-0.1.1-fix-GTK-symbols.patch | 25 + staging/python-pysqlite/PKGBUILD | 38 ++ staging/python-pysqlite/setup.cfg | 5 + staging/python-wpactrl/PKGBUILD | 26 + staging/slim/PKGBUILD | 63 ++ staging/slim/fix-glibc-segfault-1.3.4.patch | 13 + staging/slim/libpng-1.4+-support.patch | 14 + staging/slim/logrotate | 9 + staging/slim/pam.d | 10 + staging/slim/rc.d | 36 ++ staging/slim/session-name.patch | 21 + staging/slim/slim.service | 9 + staging/slim/tty-slowness.patch | 30 + staging/sonata/PKGBUILD | 30 + staging/sonata/info.py.patch | 15 + staging/xfce4-session/PKGBUILD | 22 +- .../xfce4-session-4.10.0-add-systemd-support.patch | 388 +++++++++++++ testing/mod_wsgi/PKGBUILD | 28 + testing/mod_wsgi/mod_wsgi.install | 14 + 62 files changed, 1836 insertions(+), 574 deletions(-) create mode 100644 community-staging/dee/PKGBUILD create mode 100644 community-staging/lxdm/pam-env-vars.patch create mode 100644 community-staging/python-bsddb/LICENSE create mode 100644 community-staging/python-bsddb/PKGBUILD create mode 100644 community-staging/python-openbabel/PKGBUILD create mode 100644 community-staging/python-pymongo/PKGBUILD create mode 100644 community-staging/python-sqlalchemy/PKGBUILD create mode 100644 community/calf/calf.install create mode 100644 community/seahorse-nautilus/fix-schema.patch create mode 100644 community/ubuntuone-client/1339_1338.diff create mode 100644 community/ubuntuone-client/fix-notify-hint.patch create mode 100644 extra/kdebase-workspace/kdm.logrotate create mode 100644 staging/python-iwscan/PKGBUILD create mode 100644 staging/python-notify/PKGBUILD create mode 100644 staging/python-notify/libnotify07.patch create mode 100644 staging/python-notify/notify-python-0.1.1-fix-GTK-symbols.patch create mode 100644 staging/python-pysqlite/PKGBUILD create mode 100644 staging/python-pysqlite/setup.cfg create mode 100644 staging/python-wpactrl/PKGBUILD create mode 100644 staging/slim/PKGBUILD create mode 100644 staging/slim/fix-glibc-segfault-1.3.4.patch create mode 100644 staging/slim/libpng-1.4+-support.patch create mode 100644 staging/slim/logrotate create mode 100644 staging/slim/pam.d create mode 100755 staging/slim/rc.d create mode 100644 staging/slim/session-name.patch create mode 100644 staging/slim/slim.service create mode 100644 staging/slim/tty-slowness.patch create mode 100644 staging/sonata/PKGBUILD create mode 100644 staging/sonata/info.py.patch create mode 100644 staging/xfce4-session/xfce4-session-4.10.0-add-systemd-support.patch create mode 100644 testing/mod_wsgi/PKGBUILD create mode 100644 testing/mod_wsgi/mod_wsgi.install (limited to 'community-staging') diff --git a/community-staging/dee/PKGBUILD b/community-staging/dee/PKGBUILD new file mode 100644 index 000000000..00b13d216 --- /dev/null +++ b/community-staging/dee/PKGBUILD @@ -0,0 +1,34 @@ +# $Id: PKGBUILD 77761 2012-10-14 15:22:02Z bgyorgy $ +# Maintainer: Balló György + +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-staging/lxdm/PKGBUILD b/community-staging/lxdm/PKGBUILD index a35c35f31..1430d5160 100644 --- a/community-staging/lxdm/PKGBUILD +++ b/community-staging/lxdm/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 72524 2012-06-16 08:50:39Z bpiotrowski $ -# Maintainer: Bartłomiej Piotrowski +# $Id: PKGBUILD 77741 2012-10-14 07:48:01Z bpiotrowski $ +# Maintainer: Bartłomiej Piotrowski # Contributor: AndyRTR # Contributor: kiefer pkgname=lxdm pkgver=0.4.1 -pkgrel=12 +pkgrel=16 pkgdesc='Lightweight X11 Display Manager' arch=('i686' 'x86_64') url="http://sourceforge.net/projects/lxdm/" license=('GPL') groups=('lxde') -depends=('gtk2' 'xorg-server' 'consolekit') +depends=('gtk2' 'xorg-server') makedepends=('intltool') install=${pkgname}.install backup=('etc/lxdm/lxdm.conf' 'etc/pam.d/lxdm' 'etc/lxdm/Xsession' @@ -19,43 +19,45 @@ backup=('etc/lxdm/lxdm.conf' 'etc/pam.d/lxdm' 'etc/lxdm/Xsession' 'etc/lxdm/PostLogout' 'etc/lxdm/PreReboot' 'etc/lxdm/PreShutdown') source=(http://downloads.sourceforge.net/lxde/$pkgname-$pkgver.tar.gz glib2-2.32.0.patch lxdm.patch lxdm.conf.patch Xsession.patch - greeter-session.patch rc.d lxdm-pam service) + greeter-session.patch pam-env-vars.patch rc.d lxdm-pam service) md5sums=('8da1cfc2be6dc9217c85a7cf51e1e821' 'a1e3c46a8bef691bc544028f5b6cfe22' 'baed9055e8825a5511712bc095197519' 'c50dd01b715b0a236407d48066191601' 'd2e4a4a22ee2aa1a986be154c647b6c6' '28475239d0c8b4fd778ec49f5ec72962' + '4c1d43e81e9a256e8d1ea7686c24b3d3' '705f394052fdd0dec22e95321d170de0' - 'b20fe3c8487a039050986d60e45233a9' - '4aaa9a7175cf327d9f7651c2586ef922') + '34908bc0ec15b6ae4e1074f39fce44df' + 'e8cc66eb1a2405d2d9d184a727cbd9d8') build() { - cd $srcdir/$pkgname-$pkgver + cd $srcdir/$pkgname-$pkgver - patch -Np1 -i $srcdir/glib2-2.32.0.patch + patch -Np1 -i $srcdir/glib2-2.32.0.patch patch -Np1 -i $srcdir/greeter-session.patch + patch -Np1 -i $srcdir/pam-env-vars.patch ./configure --sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib/lxdm - make + make - patch -Np0 -i $srcdir/lxdm.patch + patch -Np0 -i $srcdir/lxdm.patch patch -Np0 -i $srcdir/lxdm.conf.patch patch -Np0 -i $srcdir/Xsession.patch } package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR=$pkgdir install + cd $srcdir/$pkgname-$pkgver + make DESTDIR=$pkgdir install - install -m644 $srcdir/lxdm-pam $pkgdir/etc/pam.d/lxdm - install -Dm755 $srcdir/rc.d $pkgdir/etc/rc.d/lxdm - install -Dm644 $srcdir/service $pkgdir/usr/lib/systemd/system/lxdm.service + install -m644 $srcdir/lxdm-pam $pkgdir/etc/pam.d/lxdm + install -Dm755 $srcdir/rc.d $pkgdir/etc/rc.d/lxdm + install -Dm644 $srcdir/service $pkgdir/usr/lib/systemd/system/lxdm.service install -d $pkgdir/var/{lib,run}/lxdm - # fix the greeter location - sed -i -e 's/local\/libexec/lib\/lxdm/' $pkgdir/etc/lxdm/lxdm.conf + # fix the greeter location + sed -i -e 's/local\/libexec/lib\/lxdm/' $pkgdir/etc/lxdm/lxdm.conf # avoid conflict with filesystem>=2012.06 rm -r $pkgdir/var/run diff --git a/community-staging/lxdm/lxdm-pam b/community-staging/lxdm/lxdm-pam index 3f5df04a7..c62f62721 100644 --- a/community-staging/lxdm/lxdm-pam +++ b/community-staging/lxdm/lxdm-pam @@ -6,3 +6,5 @@ account required pam_unix.so session required pam_limits.so session required pam_unix.so password required pam_unix.so +-session optional pam_systemd.so +-session optional pam_loginuid.so diff --git a/community-staging/lxdm/lxdm.install b/community-staging/lxdm/lxdm.install index eaf2339cd..4d1285dc5 100644 --- a/community-staging/lxdm/lxdm.install +++ b/community-staging/lxdm/lxdm.install @@ -1,24 +1,18 @@ -pkgname=lxdm - post_install() { - if [ -z "`getent group "lxdm" 2> /dev/null`" ]; then - groupadd lxdm - chown root:lxdm /etc/lxdm/lxdm.conf - fi - chown -R root:lxdm /var/lib/lxdm > /dev/null - chmod +r /etc/lxdm/lxdm.conf + if ! getent group lxdm > /dev/null ; then + groupadd --system lxdm + chgrp -R lxdm /var/lib/lxdm + chgrp lxdm /etc/lxdm/lxdm.conf + chmod +r /etc/lxdm/lxdm.conf + fi } post_upgrade() { - post_install + post_install $1 } post_remove() { - getent group "lxdm" &>/dev/null && groupdel lxdm #1>/dev/null - return 0 + if ! getent group lxdm > /dev/null ; then + groupdel lxdm + fi } - -op=$1 -shift - -$op "$@" diff --git a/community-staging/lxdm/pam-env-vars.patch b/community-staging/lxdm/pam-env-vars.patch new file mode 100644 index 000000000..ab8605ff1 --- /dev/null +++ b/community-staging/lxdm/pam-env-vars.patch @@ -0,0 +1,50 @@ +diff --git a/src/lxdm.c b/src/lxdm.c +index 369aedf..cd1d486 100644 +--- a/src/lxdm.c ++++ b/src/lxdm.c +@@ -935,16 +935,23 @@ void setup_pam_session(LXSession *s,struct passwd *pw,char *session_name) + g_warning( "pam open session error \"%s\"\n", pam_strerror(s->pamh, err)); + } + +-void append_pam_environ(pam_handle_t *pamh,char **env) ++static char **append_pam_environ(pam_handle_t *pamh,char **env) + { +- int i,j,n; ++ int i,j,n,a; + char **penv; +- if(!pamh) return; ++ if(!pamh) return env; + penv=pam_getenvlist(pamh); +- if(!penv) return; ++ if(!penv) return env; ++ a=g_strv_length(penv); ++ if(a==0) ++ { ++ free(penv); ++ return env; ++ } ++ env=g_renew(char *,env,g_strv_length(env)+1+a+10); + for(i=0;penv[i]!=NULL;i++) + { +- //printf("PAM %s\n",penv[i]); ++ fprintf(stderr,"PAM %s\n",penv[i]); + n=strcspn(penv[i],"=")+1; + for(j=0;env[j]!=NULL;j++) + { +@@ -960,6 +967,7 @@ void append_pam_environ(pam_handle_t *pamh,char **env) + free(penv[i]); + } + free(penv); ++ return env; + } + + #endif +@@ -1540,7 +1548,7 @@ void lxdm_do_login(struct passwd *pw, char *session, char *lang, char *option) + if(s->child==0) + { + #if HAVE_LIBPAM +- append_pam_environ(s->pamh,env); ++ env=append_pam_environ(s->pamh,env); + pam_end(s->pamh,0); + #endif + switch_user(pw, session_exec, env); diff --git a/community-staging/lxdm/service b/community-staging/lxdm/service index b76e1190e..e1840476c 100644 --- a/community-staging/lxdm/service +++ b/community-staging/lxdm/service @@ -6,4 +6,4 @@ After=systemd-user-sessions.service ExecStart=/usr/sbin/lxdm [Install] -WantedBy=graphical.target +Alias=display-manager.service diff --git a/community-staging/python-bsddb/LICENSE b/community-staging/python-bsddb/LICENSE new file mode 100644 index 000000000..7d6035775 --- /dev/null +++ b/community-staging/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-staging/python-bsddb/PKGBUILD b/community-staging/python-bsddb/PKGBUILD new file mode 100644 index 000000000..1f83cd005 --- /dev/null +++ b/community-staging/python-bsddb/PKGBUILD @@ -0,0 +1,49 @@ +# $Id: PKGBUILD 77787 2012-10-14 18:15:13Z stephane $ +# Maintainer: Kaiting Chen +# Maintainer: Stéphane Gaudreault +# Contributor: Douglas Soares de Andrade +# Contributor: William Rea + +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-staging/python-openbabel/PKGBUILD b/community-staging/python-openbabel/PKGBUILD new file mode 100644 index 000000000..1c229f553 --- /dev/null +++ b/community-staging/python-openbabel/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 77768 2012-10-14 16:13:27Z ebelanger $ +# Maintainer: Andrea Scarpino +# Contributor: Michal Bozon + +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-staging/python-pymongo/PKGBUILD b/community-staging/python-pymongo/PKGBUILD new file mode 100644 index 000000000..91df7cb6a --- /dev/null +++ b/community-staging/python-pymongo/PKGBUILD @@ -0,0 +1,37 @@ +# $Id: PKGBUILD 77784 2012-10-14 18:11:53Z jelle $ +# Maintainer: Alexander Rødseth +# Contributor: Thomas S Hatch + +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-staging/python-sqlalchemy/PKGBUILD b/community-staging/python-sqlalchemy/PKGBUILD new file mode 100644 index 000000000..c59dcf0da --- /dev/null +++ b/community-staging/python-sqlalchemy/PKGBUILD @@ -0,0 +1,44 @@ +# $Id: PKGBUILD 77772 2012-10-14 16:35:27Z ebelanger $ +# Maintainer: Angel Velasquez +# Contributor: Sébastien Luttringer + +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/calf/PKGBUILD b/community/calf/PKGBUILD index 078681e5a..87415eeea 100644 --- a/community/calf/PKGBUILD +++ b/community/calf/PKGBUILD @@ -1,35 +1,31 @@ -# Maintainer: Ray Rashif +# $Id: PKGBUILD 77743 2012-10-14 09:43:37Z arodseth $ +# Maintainer: Alexander Rødseth +# Contributor: Ray Rashif pkgname=calf -pkgver=0.0.18.6 +pkgver=0.0.19 +_rc=8 pkgrel=1 -pkgdesc="LV2/DSSI/LADSPA plug-ins suite and standalone JACK host" -arch=('i686' 'x86_64') -url="http://calf.sf.net/" +pkgdesc='LV2/DSSI/LADSPA plug-ins suite and standalone JACK host' +arch=('x86_64' 'i686') +url='http://calf.sf.net/' license=('LGPL') -depends=('libglade' 'lash') +depends=('libglade' 'fftw' 'lash' 'dssi' 'fluidsynth' 'hicolor-icon-theme' 'desktop-file-utils') makedepends=('lv2core' 'ladspa' 'dssi') -source=("http://downloads.sf.net/$pkgname/$pkgname-$pkgver.tar.gz" - 'include_fix.patch') -md5sums=('780854561dad1cb873041d7a0b98cbcd' - '5aab4d057fb3646c43e6dfcad4c7128f') +source=("http://downloads.sf.net/$pkgname/$pkgname-$pkgver-rc$_rc.tar.gz") +install=calf.install +options=('!libtool') +sha256sums=('57cb536a24a7b9df890dc665fd75c2f4d307859e55f3b25015c73cdc726a56b5') build() { - cd "$srcdir/$pkgname-$pkgver" - - patch -Np1 -i "$srcdir/include_fix.patch" - - ./configure --prefix=/usr \ - --enable-experimental + cd $srcdir/$pkgname-$pkgver-rc$_rc + ./configure --prefix=/usr --enable-experimental --enable-sse make } package() { - cd "$srcdir/$pkgname-$pkgver" - - make DESTDIR="$pkgdir/" install - - rm "$pkgdir/usr/share/icons/hicolor/icon-theme.cache" + cd $srcdir/$pkgname-$pkgver-rc$_rc + make DESTDIR=$pkgdir install } # vim:set ts=2 sw=2 et: diff --git a/community/calf/calf.install b/community/calf/calf.install new file mode 100644 index 000000000..b83f56c72 --- /dev/null +++ b/community/calf/calf.install @@ -0,0 +1,14 @@ +post_install() { + gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor + update-desktop-database /usr/share/applications +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} + +# vim:set ts=2 sw=2 et: diff --git a/community/easystroke/PKGBUILD b/community/easystroke/PKGBUILD index e07fc5c7d..75a71810d 100644 --- a/community/easystroke/PKGBUILD +++ b/community/easystroke/PKGBUILD @@ -2,8 +2,8 @@ # Contributor: Kevin Sullivan pkgname=easystroke -pkgver=0.5.5.1 -pkgrel=2 +pkgver=0.5.6 +pkgrel=1 pkgdesc='Use mouse gestures to initiate commands and hotkeys.' arch=('i686' 'x86_64') url='http://easystroke.sourceforge.net/' @@ -12,7 +12,7 @@ depends=('gtkmm' 'boost' 'libxtst' 'dbus-glib' 'xorg-server') makedepends=('inputproto' 'intltool' 'gettext' 'xorg-server-devel' 'help2man') install=easystroke.install source=("http://downloads.sourceforge.net/easystroke/${pkgname}-${pkgver}.tar.gz") -md5sums=('ba989d1745415be94afd567e33d124bb') +md5sums=('a9f06576a47deaf6f612bb993685af0f') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/go/PKGBUILD b/community/go/PKGBUILD index 1bb6e6868..d57e9373a 100644 --- a/community/go/PKGBUILD +++ b/community/go/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 76749 2012-09-28 22:40:14Z arodseth $ +# $Id: PKGBUILD 77818 2012-10-15 00:41:07Z arodseth $ # Maintainer: Vesa Kaihlavirta # Maintainer: Alexander Rødseth # Contributor: Rémy Oudompheng @@ -10,11 +10,11 @@ pkgname=go pkgver=1.0.3 -pkgrel=1 +pkgrel=2 epoch=2 pkgdesc='Google Go compiler and tools' arch=('x86_64' 'i686') -url="http://golang.org/" +url='http://golang.org/' license=('custom') depends=('perl' 'gawk') makedepends=('inetutils') @@ -22,7 +22,7 @@ options=('!strip' '!emptydirs') install=go.install backup=('usr/lib/go/bin') source=("http://go.googlecode.com/files/${pkgname}$pkgver.src.tar.gz" - "$pkgname.sh") + $pkgname.sh) sha256sums=('7fba3533d172f13629d3d8a79e57c620632b0bd075abe11d7698b338be0ae3df' 'a03db71d323ed2794123bb31b5c8ad5febd551c490b5c0b341052c8e5f0ba892') @@ -36,69 +36,70 @@ build() { # Set GOARCH to arm for crosscompilation (currently doesn't work) - cd "$srcdir/$pkgname" - export GOROOT_FINAL="/usr/lib/go" + cd $srcdir/$pkgname + export GOROOT_FINAL=/usr/lib/go export GOOS=linux cd src bash make.bash } check() { - cd "$srcdir/$pkgname" + cd $srcdir/$pkgname - export GOROOT="$srcdir/$pkgname" - export PATH="$srcdir/$pkgname/bin:$PATH" + export GOROOT=$srcdir/$pkgname + export PATH=$srcdir/$pkgname/bin:$PATH # TestSimpleMulticastListener will fail in standard chroot. cd src && bash run.bash --no-rebuild || true } package() { - cd "$srcdir/$pkgname" + cd $srcdir/$pkgname install -Dm644 LICENSE \ - "$pkgdir/usr/share/licenses/go/LICENSE" + $pkgdir/usr/share/licenses/go/LICENSE install -Dm644 misc/bash/go \ - "$pkgdir/usr/share/bash-completion/completions/go" + $pkgdir/usr/share/bash-completion/completions/go install -Dm644 misc/emacs/go-mode-load.el \ - "$pkgdir/usr/share/emacs/site-lisp/go-mode-load.el" + $pkgdir/usr/share/emacs/site-lisp/go-mode-load.el install -Dm644 misc/emacs/go-mode.el \ - "$pkgdir/usr/share/emacs/site-lisp/go-mode.el" + $pkgdir/usr/share/emacs/site-lisp/go-mode.el install -Dm644 misc/zsh/go \ - "$pkgdir/usr/share/zsh/site-functions/_go" + $pkgdir/usr/share/zsh/site-functions/_go for f in ftdetect/gofiletype.vim autoload/go/complete.vim indent/go.vim \ ftplugin/go/fmt.vim ftplugin/go/godoc.vim ftplugin/go/import.vim \ syntax/go.vim syntax/godoc.vim plugin/godoc.vim; do - install -Dm644 "misc/vim/$f" "$pkgdir/usr/share/vim/vimfiles/$f" + install -Dm644 misc/vim/$f $pkgdir/usr/share/vim/vimfiles/$f done - mkdir -p "$pkgdir/"{etc/profile.d,usr/{share/go,lib/go,lib/go/src}} + mkdir -p $pkgdir/{etc/profile.d,usr/{share/go,lib/go,lib/go/src}} - cp -r doc misc -t "$pkgdir/usr/share/go" - ln -s /usr/share/go/doc "$pkgdir/usr/lib/go/doc" - cp -a bin "$pkgdir/usr" - cp -a pkg "$pkgdir/usr/lib/go" - cp -a $GOROOT/src/pkg "$pkgdir/usr/lib/go/src/" - cp -a $GOROOT/src/cmd "$pkgdir/usr/lib/go/src/cmd" - cp -a $GOROOT/src/lib9 "$pkgdir/usr/lib/go/src/" - cp -a $GOROOT/lib "$pkgdir/usr/lib/go/" + cp -r doc misc -t $pkgdir/usr/share/go + ln -s /usr/share/go/doc $pkgdir/usr/lib/go/doc + cp -a bin $pkgdir/usr + cp -a pkg $pkgdir/usr/lib/go + cp -a $GOROOT/src/pkg $pkgdir/usr/lib/go/src/ + cp -a $GOROOT/src/cmd $pkgdir/usr/lib/go/src/cmd + cp -a $GOROOT/src/lib9 $pkgdir/usr/lib/go/src/ + cp -a $GOROOT/lib $pkgdir/usr/lib/go/ + cp -a $GOROOT/include $pkgdir/usr/lib/go/ - install -Dm644 src/Make.* "$pkgdir/usr/lib/go/src" + install -Dm644 src/Make.* $pkgdir/usr/lib/go/src # Remove object files from target src dir - find "$pkgdir/usr/lib/go/src/" -type f -name '*.[ao]' -delete - find "$pkgdir/usr/lib/go/src/pkg" -type f -executable -delete + find $pkgdir/usr/lib/go/src/ -type f -name '*.[ao]' -delete + find $pkgdir/usr/lib/go/src/pkg -type f -executable -delete # Headers for C modules install -Dm644 src/pkg/runtime/runtime.h \ - "$pkgdir/usr/lib/go/src/pkg/runtime/runtime.h" + $pkgdir/usr/lib/go/src/pkg/runtime/runtime.h install -Dm644 src/pkg/runtime/cgocall.h \ - "$pkgdir/usr/lib/go/src/pkg/runtime/cgocall.h" + $pkgdir/usr/lib/go/src/pkg/runtime/cgocall.h # For packages that source /etc/profile.d/go.sh - install -Dm755 "$srcdir/$pkgname.sh" "$pkgdir/etc/profile.d/$pkgname.sh" + install -Dm755 $srcdir/$pkgname.sh $pkgdir/etc/profile.d/$pkgname.sh # This is to make go get code.google.com/p/go-tour/gotour and # then running the gotour executable work out of the box. @@ -107,12 +108,14 @@ package() { # not /usr/lib/go/bin. Users should use different paths by # setting the appropriate environment variables. # - ln -sf /usr/bin "$pkgdir/usr/lib/go/bin" + ln -sf /usr/bin $pkgdir/usr/lib/go/bin # For godoc - install -Dm644 favicon.ico "$pkgdir/usr/lib/go/favicon.ico" + install -Dm644 favicon.ico $pkgdir/usr/lib/go/favicon.ico - rm -f "$pkgdir/usr/share/go/doc/articles/wiki/get.bin" + rm -f $pkgdir/usr/share/go/doc/articles/wiki/get.bin + + install -Dm644 VERSION $pkgdir/usr/lib/go/VERSION } # vim:set ts=2 sw=2 et: diff --git a/community/haskell-tar/PKGBUILD b/community/haskell-tar/PKGBUILD index 629285c73..573b5188d 100644 --- a/community/haskell-tar/PKGBUILD +++ b/community/haskell-tar/PKGBUILD @@ -1,26 +1,21 @@ -# $Id: PKGBUILD 77356 2012-10-09 04:18:31Z tdziedzic $ +# $Id: PKGBUILD 77797 2012-10-14 20:10:04Z arodseth $ # Maintainer: Alexander Rødseth # Contributor: Arch Haskell Team pkgname=haskell-tar -pkgver=0.4.0.0 -pkgrel=3 -pkgdesc="Reading, writing and manipulating \".tar\" archive files." +pkgver=0.4.0.1 +pkgrel=1 +pkgdesc="Reading, writing and manipulating tar archive files" url="http://hackage.haskell.org/package/tar" license=('custom:BSD3') arch=('x86_64' 'i686') depends=('ghc=7.6.1-1') -source=("http://hackage.haskell.org/packages/archive/tar/$pkgver/tar-$pkgver.tar.gz" - '0001-update-changed-time-code-for-ghc-7.6.1.patch') +source=("http://hackage.haskell.org/packages/archive/tar/$pkgver/tar-$pkgver.tar.gz") install=haskell-tar.install -sha256sums=('a3d37be1b8666c16c6371d193a0795b8abe7b0216e81870a2666e1e85d931113' - '17b8afc519db5bed5d89807e6e659788f5d9c2f5c569150a9d1c6faac52e98e6') +sha256sums=('a408274d8325f4e3144c5aa154d72f1ee7b0a7342570fd6805e3be3fe0d97a6d') build() { - cd "$srcdir/tar-$pkgver" - - # time functions have changed in ghc 7.6.1 - patch -Np1 -i ${srcdir}/0001-update-changed-time-code-for-ghc-7.6.1.patch + cd $srcdir/tar-$pkgver runhaskell Setup configure -O -p --enable-split-objs --enable-shared \ --prefix=/usr --docdir="/usr/share/doc/$pkgname" \ @@ -33,18 +28,18 @@ build() { } package() { - cd "$srcdir/tar-$pkgver" + cd $srcdir/tar-$pkgver install -Dm 744 register.sh \ - "$pkgdir/usr/share/haskell/$pkgname/register.sh" + $pkgdir/usr/share/haskell/$pkgname/register.sh install -m 744 unregister.sh \ - "$pkgdir/usr/share/haskell/$pkgname/unregister.sh" - install -dm 755 "$pkgdir/usr/share/doc/ghc/html/libraries" - ln -s "/usr/share/doc/$pkgname/html" \ - "$pkgdir/usr/share/doc/ghc/html/libraries/tar" - runhaskell Setup copy --destdir="$pkgdir" - install -Dm 644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" - rm -f "$pkgdir/usr/share/doc/$pkgname/LICENSE" + $pkgdir/usr/share/haskell/$pkgname/unregister.sh + install -dm 755 $pkgdir/usr/share/doc/ghc/html/libraries + ln -s /usr/share/doc/$pkgname/html \ + $pkgdir/usr/share/doc/ghc/html/libraries/tar + runhaskell Setup copy --destdir=$pkgdir + install -Dm 644 LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE + rm -f $pkgdir/usr/share/doc/$pkgname/LICENSE } # vim:set ts=2 sw=2 et: diff --git a/community/rygel/PKGBUILD b/community/rygel/PKGBUILD index 2d0b771a3..d9d5ec4bc 100644 --- a/community/rygel/PKGBUILD +++ b/community/rygel/PKGBUILD @@ -1,14 +1,14 @@ -# $Id: PKGBUILD 75414 2012-08-22 16:11:51Z bgyorgy $ +# $Id: PKGBUILD 77776 2012-10-14 17:40:17Z bgyorgy $ # Maintainer: Balló György pkgname=rygel -pkgver=0.14.3 -pkgrel=2 +pkgver=0.16.1 +pkgrel=1 pkgdesc="UPnP AV MediaServer and MediaRenderer that allows you to easily share audio, video and pictures, and control of media player on your home network" arch=('i686' 'x86_64') url="http://live.gnome.org/Rygel" license=('LGPL') -depends=('gupnp-av' 'gupnp-dlna' 'libgee' 'gtk3' 'hicolor-icon-theme' 'xdg-utils') +depends=('gupnp-av' 'gupnp-dlna' 'libgee' 'gtk3' 'libunistring' 'libtracker-sparql' 'hicolor-icon-theme' 'xdg-utils') makedepends=('vala' 'intltool') optdepends=('gstreamer0.10-good-plugins: Extra media codecs' 'gstreamer0.10-bad-plugins: Extra media codecs' @@ -19,7 +19,7 @@ backup=('etc/rygel.conf') options=('!libtool') install=$pkgname.install source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) -sha256sums=('e615d4fea616ecaedfaba57e70a455ac8339048490a423af66a70d05c7186ace') +sha256sums=('c8ffc0492c60b1c66f13f3f72cbee622307225d7e4cb20b43e299601463cd28d') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/seahorse-nautilus/PKGBUILD b/community/seahorse-nautilus/PKGBUILD index 884840d1f..92f94c6dd 100644 --- a/community/seahorse-nautilus/PKGBUILD +++ b/community/seahorse-nautilus/PKGBUILD @@ -1,26 +1,29 @@ -# $Id: PKGBUILD 69331 2012-04-14 01:17:42Z bgyorgy $ +# $Id: PKGBUILD 77770 2012-10-14 16:18:22Z bgyorgy $ # Maintainer: Balló György pkgname=seahorse-nautilus -pkgver=3.4.0 +pkgver=3.6.0 pkgrel=1 pkgdesc="PGP encryption and signing for nautilus" arch=('i686' 'x86_64') url="http://git.gnome.org/browse/seahorse-nautilus/" license=('GPL') -depends=('gconf' 'libcryptui' 'nautilus') +depends=('libcryptui' 'gcr' 'nautilus') makedepends=('intltool') replaces=('seahorse-plugins') options=('!libtool') install=$pkgname.install -source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) -sha256sums=('4724438b8c09d5c25c30a304cbc398950d5a2fdd1e2ef3f6389ffbf18ac01480') +source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz + fix-schema.patch) +sha256sums=('edae97cf7bab38ed928e25a7805913977f892ec9b9120783d874cda07912519d' + '3c5a3fe557fc56d5d5cda12d4b4909f513260da9b439d8bbaca2bf42b4fd114c') build() { cd "$srcdir/$pkgname-$pkgver" + patch -Np1 -i "$srcdir/fix-schema.patch" ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ - --disable-static + --disable-static --disable-schemas-compile make } diff --git a/community/seahorse-nautilus/fix-schema.patch b/community/seahorse-nautilus/fix-schema.patch new file mode 100644 index 000000000..cd68e7a7f --- /dev/null +++ b/community/seahorse-nautilus/fix-schema.patch @@ -0,0 +1,20 @@ +From 8f48809c0fb6633bb45eac2144c1125f79933053 Mon Sep 17 00:00:00 2001 +From: Stef Walter +Date: Mon, 01 Oct 2012 08:15:13 +0000 +Subject: Fix the schema identifier for GSettings window settings + +https://bugzilla.gnome.org/show_bug.cgi?id=685124 +--- +diff --git a/data/org.gnome.seahorse.nautilus.window.gschema.xml b/data/org.gnome.seahorse.nautilus.window.gschema.xml +index 9263a25..89f49f1 100644 +--- a/data/org.gnome.seahorse.nautilus.window.gschema.xml ++++ b/data/org.gnome.seahorse.nautilus.window.gschema.xml +@@ -1,5 +1,5 @@ + +- ++ + + -1 + Width of the window +-- +cgit v0.9.0.2 diff --git a/community/seahorse-nautilus/seahorse-nautilus.install b/community/seahorse-nautilus/seahorse-nautilus.install index 2eaa60550..21f12fbda 100644 --- a/community/seahorse-nautilus/seahorse-nautilus.install +++ b/community/seahorse-nautilus/seahorse-nautilus.install @@ -1,4 +1,5 @@ post_install() { + glib-compile-schemas usr/share/glib-2.0/schemas update-desktop-database -q } diff --git a/community/tig/PKGBUILD b/community/tig/PKGBUILD index 7565db319..bfb561b9c 100644 --- a/community/tig/PKGBUILD +++ b/community/tig/PKGBUILD @@ -4,7 +4,7 @@ # Contributor: Nathan Jones pkgname=tig -pkgver=1.0 +pkgver=1.1 pkgrel=1 pkgdesc='Text-mode interface for Git.' depends=('git' 'ncurses') @@ -12,7 +12,7 @@ url='http://jonas.nitro.dk/tig/' license=('GPL') arch=('i686' 'x86_64') source=("http://jonas.nitro.dk/${pkgname}/releases/${pkgname}-${pkgver}.tar.gz") -md5sums=('a2d414d1cebbc9cd4f3d545bc6f225c6') +md5sums=('adeb797a8320962eeb345a615257cbac') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/ubuntuone-client-gnome/PKGBUILD b/community/ubuntuone-client-gnome/PKGBUILD index 6816bc347..51e54fff1 100644 --- a/community/ubuntuone-client-gnome/PKGBUILD +++ b/community/ubuntuone-client-gnome/PKGBUILD @@ -1,33 +1,23 @@ -# $Id: PKGBUILD 72615 2012-06-17 13:54:12Z bgyorgy $ +# $Id: PKGBUILD 77831 2012-10-15 01:46:26Z bgyorgy $ # Maintainer: Balló György pkgname=ubuntuone-client-gnome -pkgver=3.0.2 +pkgver=4.0.0 pkgrel=1 pkgdesc="Some plug-ins, extensions, and data for integrating Ubuntu One features in some core parts of GNOME" arch=('i686' 'x86_64') url="https://launchpad.net/ubuntuone-client-gnome" license=('GPL') -depends=('nautilus' 'evolution-data-server' 'ubuntuone-client') +depends=('nautilus' 'gconf' 'ubuntuone-client') makedepends=('intltool' 'gnome-settings-daemon') optdepends=('gnome-settings-daemon: shows a warning when Ubuntu One runs out of space') options=('!libtool') install=$pkgname.install -source=(http://launchpad.net/ubuntuone-client-gnome/stable-3-0/$pkgver/+download/$pkgname-$pkgver.tar.gz - http://pkgbuild.com/~bgyorgy/sources/$pkgname-translations-20120513.tar.gz - fix-build.patch) -md5sums=('59a871d767e832b37e95e1aca2ee4374' - 'cabbf043f9be0ea8df4c9a4b020cd2c3' - '8d34fed775be23d1743dda079a293b78') +source=(http://launchpad.net/ubuntuone-client-gnome/stable-4-0/$pkgver/+download/$pkgname-$pkgver.tar.gz) +md5sums=('26e9e391cabe1047eeb203d99ee2d9c6') build() { cd "$srcdir/$pkgname-$pkgver" - patch -Np1 -i "$srcdir/fix-build.patch" - - # Install language files - echo 'am ar ast az be bg bn bs ca ca@valencia cs da de el en_AU en_GB eo es et eu fi fo fr gd gl gu he hi hr hu id it ja kk km ko ku lt lv ms my nb nl nn oc pa pl pt pt_BR ro ru shn si sk sl sq sr sv ta te th tr ug uk vi zh_CN zh_HK zh_TW' >po/LINGUAS - rename $pkgname- '' ../po/$pkgname-*.po - mv -f -t po ../po/* ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ --disable-static --disable-schemas-compile diff --git a/community/ubuntuone-client/1339_1338.diff b/community/ubuntuone-client/1339_1338.diff new file mode 100644 index 000000000..cbd966a70 --- /dev/null +++ b/community/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/ubuntuone-client/PKGBUILD b/community/ubuntuone-client/PKGBUILD index 31e198468..296bed607 100644 --- a/community/ubuntuone-client/PKGBUILD +++ b/community/ubuntuone-client/PKGBUILD @@ -1,37 +1,34 @@ -# $Id: PKGBUILD 72611 2012-06-17 13:44:37Z bgyorgy $ +# $Id: PKGBUILD 77827 2012-10-15 01:33:32Z bgyorgy $ # Maintainer: Balló György pkgname=ubuntuone-client -pkgver=3.0.2 +pkgver=4.0.0 pkgrel=1 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' 'python-simplejson' 'ubuntu-sso-client' 'python2-ubuntuone-storageprotocol' 'hicolor-icon-theme' 'xdg-utils') -makedepends=('intltool' 'imake' 'gobject-introspection' 'vala') -optdepends=('ubuntu-sso-client-qt: required for first-time log in or' - 'ubuntu-sso-client-gtk: required for first-time log in' - 'python2-pyqt: proxy support') +makedepends=('intltool' 'imake' 'gobject-introspection') options=('!libtool') install=$pkgname.install -source=(http://launchpad.net/ubuntuone-client/stable-3-0/$pkgver/+download/$pkgname-$pkgver.tar.gz - http://pkgbuild.com/~bgyorgy/sources/$pkgname-translations-20120513.tar.gz) -md5sums=('5251fad8d316e8730188078239a4dd73' - '6f4603f11ea21d030bfaef34d3567f68') +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/* - # Install language files - echo 'ace af am an ar ast az be bg bn bo br bs ca ca@valencia ckb crh cv cy cs csb da de el en_AU en_CA en_GB eo es et eu fa fi fo fr fy gd gl gu he hi hr hu hy id is it ja jv kk km kn ko ku ky lt lv ml mr ms my nb nds nl nn oc pl pt pt_BR ro ru sd shn si sk sl sq sr sv ta te th tr ug uk ur uz vi zh_CN zh_HK zh_TW' >po/LINGUAS - rename $pkgname- '' ../po/$pkgname-*.po - mv -f -t po ../po/* + # Improve TransfersMenu declaration to avoid problems + patch -Np0 -i "$srcdir/1339_1338.diff" - # Fix desktop file - sed -i 's/ubuntuone-installer/ubuntuone-control-panel-qt/' \ - ubuntuone/platform/linux/{messaging,launcher}.py + # 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 \ diff --git a/community/ubuntuone-client/fix-notify-hint.patch b/community/ubuntuone-client/fix-notify-hint.patch new file mode 100644 index 000000000..f32280de9 --- /dev/null +++ b/community/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/uget/PKGBUILD b/community/uget/PKGBUILD index 0534df0bd..7c8fd1726 100644 --- a/community/uget/PKGBUILD +++ b/community/uget/PKGBUILD @@ -1,10 +1,9 @@ -# $Id: PKGBUILD 76258 2012-09-15 09:29:53Z bgyorgy $ +# $Id: PKGBUILD 77782 2012-10-14 18:09:15Z bgyorgy $ # Maintainer: Balló György pkgname=uget -pkgver=1.10 -_pkgver=$pkgver-git.20120907 -pkgrel=2 +pkgver=1.10.2 +pkgrel=1 pkgdesc="GTK+ download manager featuring download classification and HTML import" arch=('i686' 'x86_64') url="http://urlget.sourceforge.net/" @@ -13,8 +12,8 @@ depends=('libnotify' 'gtk3' 'gstreamer0.10' 'curl' 'hicolor-icon-theme' 'xdg-uti makedepends=('intltool') optdepends=('aria2: alternative backend') install=$pkgname.install -source=(http://downloads.sourceforge.net/urlget/$pkgname-$_pkgver.tar.gz) -md5sums=('6e3ada8f4edd7e841639e57d352d9d89') +source=(http://downloads.sourceforge.net/urlget/$pkgname-$pkgver.tar.gz) +md5sums=('c766e94fcf12e4b425c53c7c598fd702') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/core/curl/PKGBUILD b/core/curl/PKGBUILD index 9459cf97f..91b782d87 100644 --- a/core/curl/PKGBUILD +++ b/core/curl/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 164670 2012-08-02 13:25:33Z dreisner $ +# $Id: PKGBUILD 168697 2012-10-14 14:55:36Z dreisner $ # Maintainer: Dave Reisner # Contributor: Angel Velasquez # Contributor: Eric Belanger @@ -6,9 +6,9 @@ # Contributor: Daniel J Griffiths pkgname=curl -pkgver=7.27.0 +pkgver=7.28.0 pkgrel=1 -pkgdesc="An URL retrival utility and library" +pkgdesc="An URL retrieval utility and library" arch=('i686' 'x86_64') url="http://curl.haxx.se" license=('MIT') @@ -16,8 +16,8 @@ depends=('ca-certificates' 'libssh2' 'openssl' 'zlib') options=('!libtool') source=("http://curl.haxx.se/download/$pkgname-$pkgver.tar.gz"{,.asc} curlbuild.h) -md5sums=('f0e48fdb635b5939e02a9291b89e5336' - 'b5d6d54f97adcaf5c871174e5460f081' +md5sums=('cbdc0a79bdf6e657dd387c3d88d802e3' + '7359e07276cdaff6317bbc39e6d5899c' '751bd433ede935c8fae727377625a8ae') ptrsize=$(cpp <<<'__SIZEOF_POINTER__' | sed '/^#/d') diff --git a/extra/gcin/PKGBUILD b/extra/gcin/PKGBUILD index 6630fd69f..99848822a 100644 --- a/extra/gcin/PKGBUILD +++ b/extra/gcin/PKGBUILD @@ -1,19 +1,19 @@ -# $Id: PKGBUILD 168538 2012-10-13 09:11:11Z bisson $ +# $Id: PKGBUILD 168695 2012-10-14 06:06:08Z bisson $ # Maintainer: Gaetan Bisson # Contributor: Andreas Radke # Contributor: damir pkgname=gcin pkgver=2.7.9 -pkgrel=1 +pkgrel=2 pkgdesc='Input method server supporting various input methods' url='http://hyperrate.com/dir.php?eid=67' license=('LGPL') arch=('i686' 'x86_64') -depends=('gtk3' 'libxtst') -makedepends=('qt' 'gtk2' 'anthy' 'libchewing') +depends=('gtk2' 'libxtst') +makedepends=('qt' 'gtk3' 'anthy' 'libchewing') optdepends=('qt: support for qt4 input method' - 'gtk2: support for gtk2 input method' + 'gtk3: support for gtk3 input method' 'anthy: support for anthy input method' 'libchewing: support for chewing input method') source=("http://www.csie.nctu.edu.tw/~cp76/gcin/download/${pkgname}-${pkgver}.tar.xz" diff --git a/extra/graphicsmagick/PKGBUILD b/extra/graphicsmagick/PKGBUILD index a650c965a..95cfcb98a 100644 --- a/extra/graphicsmagick/PKGBUILD +++ b/extra/graphicsmagick/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 162322 2012-06-25 01:51:33Z bisson $ +# $Id: PKGBUILD 168727 2012-10-14 22:47:56Z bisson $ # Maintainer: Ronald van Haren # Maintainer: Gaetan Bisson # Contributor: Jaroslav Lichtblau # Contributor: Anton Leontiev pkgname=graphicsmagick -pkgver=1.3.16 +pkgver=1.3.17 pkgrel=1 pkgdesc='Image processing system' url='http://www.graphicsmagick.org/' @@ -16,7 +16,7 @@ depends=('bzip2' 'freetype2' 'ghostscript' 'jasper' 'lcms2' 'xz' 'libtiff' 'libwmf' 'libsm' 'libxml2' 'libltdl') options=('!libtool') source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/GraphicsMagick-${pkgver}.tar.xz") -sha1sums=('3949030b101d66811242a0d30abc9965481ed035') +sha1sums=('6428eb4bd19635c833750ac9d56c9b89bef4c975') build() { cd "${srcdir}/GraphicsMagick-${pkgver}" diff --git a/extra/gtk-vnc/PKGBUILD b/extra/gtk-vnc/PKGBUILD index d31668f9b..3a02c9737 100644 --- a/extra/gtk-vnc/PKGBUILD +++ b/extra/gtk-vnc/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 156872 2012-04-23 09:08:01Z ibiru $ +# $Id: PKGBUILD 168733 2012-10-15 02:01:46Z eric $ # Maintainer: Jan Alexander Steffens (heftig) # Contributor: Jan de Groot # Contributor: Allan McRae # Contributor: lp76 pkgname=gtk-vnc -pkgver=0.5.0 +pkgver=0.5.1 pkgrel=1 pkgdesc="A VNC viewer widget for GTK" arch=('i686' 'x86_64') @@ -16,7 +16,7 @@ optdepends=('gtk2: GTK2 widget') makedepends=('intltool' 'pygtk' 'pygobject2-devel' 'gtk-doc' 'gtk2' 'vala' 'gobject-introspection') options=('!libtool') source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz) -sha256sums=('1de65d8ffa8c25a61a8e8c4b7e5963d4a826f4fcf7120d66ed027f5f70cc8f81') +sha256sums=('1ad1847a23f8ea8fbf2396de46c51ec0900ee3698cde4e205760518cd1e01a40') build() { rm -rf gtk2-build gtk3-build @@ -35,6 +35,6 @@ build() { } package() { - make -C gtk2-build -j1 DESTDIR="${pkgdir}" install - make -C gtk3-build -j1 DESTDIR="${pkgdir}" install + make -C gtk2-build DESTDIR="${pkgdir}" install + make -C gtk3-build DESTDIR="${pkgdir}" install } diff --git a/extra/kdebase-workspace/PKGBUILD b/extra/kdebase-workspace/PKGBUILD index 98788202c..99f5db087 100644 --- a/extra/kdebase-workspace/PKGBUILD +++ b/extra/kdebase-workspace/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 168020 2012-10-05 10:53:35Z andrea $ +# $Id: PKGBUILD 168704 2012-10-14 16:38:05Z thomas $ # Maintainer: Andrea Scarpino # Contributor: Pierre Schmitz pkgname=kdebase-workspace _pkgname=kde-workspace pkgver=4.9.2 -pkgrel=2 +pkgrel=4 pkgdesc="Provides the interface and basic tools for the KDE workspace" arch=('i686' 'x86_64') url='https://projects.kde.org/projects/kde/kde-workspace' @@ -30,25 +30,32 @@ options=('emptydirs') source=("http://download.kde.org/stable/${pkgver}/src/${_pkgname}-${pkgver}.tar.xz" 'kdm' 'kde.pam' 'kde-np.pam' 'kscreensaver.pam' 'kdm.service' 'fixpath.patch' 'terminate-server.patch' 'kdm-xinitrd.patch' + 'kdm.logrotate' 'logind-support.patch') sha1sums=('091bec159d85db2a9a6d6b1b43a53183c23de488' '5db3a245201bd4a50e65aa2ef583cf5490e4f646' - '712a90999bd429883dcef5dcaf288aace332ced8' - 'b321b5e613b60231330e606fdf1e124646148388' + '660eae40a707d2711d8d7f32a93214865506b795' + 'b7980f2e199963caf8e92b499042d244ece2fca0' '106635aa1aae51d6f0668b1853f6c49a4fe9d3d8' 'b6f8e8692737b11eec1f8022ce74b5b23e247b1b' 'd7b5883f7e65c6839b1f65f94d58026673dd0226' 'ac7bc292c865bc1ab8c02e6341aa7aeaf1a3eeee' 'd509dac592bd8b310df27991b208c95b6d907514' + 'bbe55f2000217474ce7246f12ee437ceaaf7e9ae' 'ccde71c42e19feaf40d3bd76e7396a0cb6df012f') build() { cd ${_pkgname}-${pkgver} + + # FS#26120 patch -p1 -i "${srcdir}"/kdm-xinitrd.patch + patch -p0 -i "${srcdir}"/fixpath.patch + + # KDEBUG#202629 patch -p0 -i "${srcdir}"/terminate-server.patch - # KDEBUG 307412 + # KDEBUG#307412 (fixed upstream) patch -p1 -i "${srcdir}"/logind-support.patch cd ../ @@ -83,4 +90,5 @@ package() { install -D -m755 "${srcdir}"/kdm "${pkgdir}"/etc/rc.d/kdm install -D -m644 "${srcdir}"/kdm.service \ "${pkgdir}"/usr/lib/systemd/system/kdm.service + install -Dm644 "${srcdir}"/kdm.logrotate "${pkgdir}"/etc/logrotate.d/kdm } diff --git a/extra/kdebase-workspace/kde-np.pam b/extra/kdebase-workspace/kde-np.pam index 7d60cc35c..eccaa08f4 100644 --- a/extra/kdebase-workspace/kde-np.pam +++ b/extra/kdebase-workspace/kde-np.pam @@ -1,9 +1,12 @@ #%PAM-1.0 -auth required pam_nologin.so -auth required pam_permit.so -auth required pam_env.so -account required pam_unix.so -password required pam_unix.so -session required pam_unix.so -session required pam_limits.so --session optional pam_systemd.so +auth required pam_tally.so onerr=succeed file=/var/log/faillog +auth required pam_shells.so +auth requisite pam_nologin.so +auth required pam_env.so +auth optional pam_permit.s + +account include system-login + +password include system-login + +session include system-login diff --git a/extra/kdebase-workspace/kde.pam b/extra/kdebase-workspace/kde.pam index ec1d8277f..a0a29483d 100644 --- a/extra/kdebase-workspace/kde.pam +++ b/extra/kdebase-workspace/kde.pam @@ -1,9 +1,8 @@ #%PAM-1.0 -auth required pam_unix.so -auth required pam_nologin.so -auth required pam_env.so -account required pam_unix.so -password required pam_unix.so -session required pam_unix.so -session required pam_limits.so --session optional pam_systemd.so +auth include system-login + +account include system-login + +password include system-login + +session include system-login diff --git a/extra/kdebase-workspace/kdm.logrotate b/extra/kdebase-workspace/kdm.logrotate new file mode 100644 index 000000000..34331feae --- /dev/null +++ b/extra/kdebase-workspace/kdm.logrotate @@ -0,0 +1,6 @@ +/var/log/kdm.log { + maxage 365 + size=+1024k + notifempty + missingok +} diff --git a/extra/ruby/PKGBUILD b/extra/ruby/PKGBUILD index 084545294..0732107ea 100644 --- a/extra/ruby/PKGBUILD +++ b/extra/ruby/PKGBUILD @@ -3,22 +3,14 @@ # Contributor: John Proctor # Contributor: Jeramy Rutley -pkgname=ruby -pkgver=1.9.3_p194 -pkgrel=2 -pkgdesc='An object-oriented language for quick and easy programming' +pkgname=('ruby' 'ruby-docs') +pkgver=1.9.3_p286 +pkgrel=1 arch=('i686' 'x86_64') url='http://www.ruby-lang.org/en/' license=('BSD' 'custom') -backup=('etc/gemrc') -provides=('rubygems' 'rake') -conflicts=('rake') -depends=('openssl' 'libffi' 'libyaml') -makedepends=('tk') -optdepends=('tk: for Ruby/TK' - 'ruby-docs: Ruby documentation') +makedepends=('openssl' 'tk' 'libffi' 'doxygen' 'graphviz' 'libyaml') options=('!emptydirs' '!makeflags') -install='ruby.install' source=("ftp://ftp.ruby-lang.org/pub/ruby/${pkgver%.*}/ruby-${pkgver//_/-}.tar.bz2" 'gemrc') md5sums=('2278eff4cfed3cbc0653bc73085caa34' @@ -32,8 +24,7 @@ build() { --sysconfdir=/etc \ --enable-shared \ --enable-pthread \ - --disable-rpath \ - --disable-install-doc + --disable-rpath make } @@ -44,7 +35,16 @@ check() { make test } -package() { +package_ruby() { + pkgdesc='An object-oriented language for quick and easy programming' + depends=('openssl' 'libffi' 'libyaml') + optdepends=('tk: for Ruby/TK' + 'ruby-docs: Ruby documentation') + provides=('rubygems' 'rake') + conflicts=('rake') + backup=('etc/gemrc') + install='ruby.install' + cd ruby-${pkgver//_/-} make DESTDIR="${pkgdir}" install-nodoc @@ -54,3 +54,16 @@ package() { install -D -m644 COPYING "${pkgdir}/usr/share/licenses/ruby/LICENSE" install -D -m644 BSDL "${pkgdir}/usr/share/licenses/ruby/BSDL" } + +package_ruby-docs() { + pkgdesc='Documentation files for ruby' + + cd ruby-${pkgver//_/-} + + make DESTDIR="${pkgdir}" install-doc install-capi + + install -D -m644 COPYING "${pkgdir}/usr/share/licenses/ruby-docs/LICENSE" + install -D -m644 BSDL "${pkgdir}/usr/share/licenses/ruby-docs/BSDL" +} +md5sums=('e76848a86606a4fd5dcf14fc4b4e755e' + '6fb8e7a09955e0f64be3158fb4a27e7a') diff --git a/extra/x11vnc/PKGBUILD b/extra/x11vnc/PKGBUILD index 91885eae6..323462d23 100644 --- a/extra/x11vnc/PKGBUILD +++ b/extra/x11vnc/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 165299 2012-08-15 01:45:56Z bisson $ +# $Id: PKGBUILD 168731 2012-10-15 02:00:18Z bisson $ # Maintainer: Gaetan Bisson # Contributor: damir pkgname=x11vnc pkgver=0.9.13 -pkgrel=2 +pkgrel=3 pkgdesc='VNC server for real X displays' url='http://www.karlrunge.com/x11vnc/' arch=('i686' 'x86_64') @@ -32,5 +32,6 @@ package() { make DESTDIR="${pkgdir}" install install -Dm755 ../rc.d "${pkgdir}/etc/rc.d/x11vnc" install -Dm644 ../conf.d "${pkgdir}/etc/conf.d/x11vnc" + install -Dm644 ../service "${pkgdir}/usr/lib/systemd/system/x11vnc.service" rm -fr "${pkgdir}"/usr/include/rfb # provided by libvncserver } diff --git a/extra/xfce4-mixer/PKGBUILD b/extra/xfce4-mixer/PKGBUILD index 841cc9417..d5454aab4 100644 --- a/extra/xfce4-mixer/PKGBUILD +++ b/extra/xfce4-mixer/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 161812 2012-06-14 23:39:44Z foutrelis $ +# $Id: PKGBUILD 168699 2012-10-14 15:01:42Z eric $ # Maintainer: Tobias Kieslich pkgname=xfce4-mixer -pkgver=4.8.0 -pkgrel=4 +pkgver=4.10.0 +pkgrel=1 pkgdesc="The volume control plugin for the Xfce panel" arch=('i686' 'x86_64') url="http://www.xfce.org/" license=('GPL2') groups=('xfce4') -depends=('xfce4-panel' 'gstreamer0.10-base-plugins' 'hicolor-icon-theme') +depends=('xfce4-panel' 'gstreamer0.10-base-plugins' 'libunique') makedepends=('intltool') options=('!libtool') install=$pkgname.install -source=(http://archive.xfce.org/src/apps/$pkgname/4.8/$pkgname-$pkgver.tar.bz2) -sha256sums=('9f9f48fdd0d3f6b1e46694b93a44d15b800db72a96d831b5111d9ac976970fab') +source=(http://archive.xfce.org/src/apps/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2) +sha256sums=('a8c589001b438171ea5a6b46ce9895c3ffbc5081ab67805ab9870e540068dade') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/gnome-unstable/networkmanager/PKGBUILD b/gnome-unstable/networkmanager/PKGBUILD index debe2701f..552d189d6 100644 --- a/gnome-unstable/networkmanager/PKGBUILD +++ b/gnome-unstable/networkmanager/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 168649 2012-10-13 19:17:30Z heftig $ +# $Id: PKGBUILD 168706 2012-10-14 16:54:10Z heftig $ # Maintainer: Jan Alexander Steffens (heftig) # Maintainer: Jan de Groot # Contributor: Wael Nasreddine @@ -9,7 +9,7 @@ pkgname=networkmanager _pkgname=NetworkManager pkgver=0.9.6.0 -pkgrel=4 +pkgrel=5 pkgdesc="Network Management daemon" arch=('i686' 'x86_64') license=('GPL') @@ -35,7 +35,7 @@ sha256sums=('3982b623b7b199ac99e2ddd0840fe7d088245a49e3f680237e8baebf0cf86d07' '65124505048cc8396daf0242c9f5d532fa669b4bbca305998c248ab2329490cb' 'e23b651a90ef62d515921953b4c6779538d35a737fb74c266b7fce94d62fdb06' 'a1c65a09e5e8ecb1004ab7922517aa7fbc9700dc61e3b2fd348d3d7c23808ce6' - '8fe72946aa3b01d2205f3910bf07a3669c6c0218fb8d2bad45b6a27b48e3e496') + '24c181ab69e769e703e45f64a552add5df5de22fbcd8899d588add053674420a') build() { cd $_pkgname-$pkgver diff --git a/gnome-unstable/networkmanager/systemd-sleep.patch b/gnome-unstable/networkmanager/systemd-sleep.patch index 2240594b2..3470d4654 100644 --- a/gnome-unstable/networkmanager/systemd-sleep.patch +++ b/gnome-unstable/networkmanager/systemd-sleep.patch @@ -1,35 +1,94 @@ -From 64fd8eea7706038e5d38c8463a1c765ed9331db2 Mon Sep 17 00:00:00 2001 +From b444d31cba5b8ac0c9771cc5a246dfd3af9dfd00 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 9 Oct 2012 00:36:35 -0400 -Subject: [PATCH 1/2] core: factor out the upower suspend/resume code (bgo +Subject: [PATCH] core: factor out the upower suspend/resume code (bgo #677694) Factor the code that listens for upower sleeping and resuming signals out into a class code NMSleepMonitor. + +core: add a systemd suspend/resume monitor (bgo #677694) + +This implementation uses a delay inhibitor to get systemd to +emit PrepareForSleep, and then emits ::Sleeping and ::Resuming +when receiving the before/after PrepareForSleep emissions. + +core: DBusGConnections are not GObjects + +Introduced in 64fd8eea7706038e5d38c8463a1c765ed9331db2. + +core: fix suspend/resume signal names which the manager listens for + +Introduced in 64fd8eea7706038e5d38c8463a1c765ed9331db2; but honestly +I also thought GObject lower-cased signal names since it munges them +for - and _ too. Apparently not. --- - src/Makefile.am | 2 + - src/nm-manager.c | 40 +++++-------- - src/nm-sleep-monitor.c | 152 +++++++++++++++++++++++++++++++++++++++++++++++++ - src/nm-sleep-monitor.h | 46 +++++++++++++++ - 4 files changed, 214 insertions(+), 26 deletions(-) - create mode 100644 src/nm-sleep-monitor.c + configure.ac | 2 +- + src/Makefile.am | 9 +- + src/nm-manager.c | 40 +++----- + src/nm-sleep-monitor-systemd.c | 217 +++++++++++++++++++++++++++++++++++++++++ + src/nm-sleep-monitor-upower.c | 151 ++++++++++++++++++++++++++++ + src/nm-sleep-monitor.h | 46 +++++++++ + 6 files changed, 437 insertions(+), 28 deletions(-) + create mode 100644 src/nm-sleep-monitor-systemd.c + create mode 100644 src/nm-sleep-monitor-upower.c create mode 100644 src/nm-sleep-monitor.h +diff --git a/configure.ac b/configure.ac +index e76e193..9152c23 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -327,7 +327,7 @@ PKG_CHECK_MODULES(GUDEV, gudev-1.0 >= 147) + AC_SUBST(GUDEV_CFLAGS) + AC_SUBST(GUDEV_LIBS) + +-PKG_CHECK_MODULES(GIO, gio-2.0) ++PKG_CHECK_MODULES(GIO, gio-unix-2.0) + AC_SUBST(GIO_CFLAGS) + AC_SUBST(GIO_LIBS) + diff --git a/src/Makefile.am b/src/Makefile.am -index b155209..9484a1f 100644 +index b155209..ba7d2d6 100644 --- a/src/Makefile.am +++ b/src/Makefile.am -@@ -191,6 +191,8 @@ NetworkManager_SOURCES = \ +@@ -191,6 +191,7 @@ NetworkManager_SOURCES = \ nm-session-monitor.h \ nm-session-utils.c \ nm-session-utils.h \ + nm-sleep-monitor.h \ -+ nm-sleep-monitor.c \ nm-connection-provider.h \ nm-connection-provider.c \ nm-dispatcher.c \ +@@ -201,13 +202,18 @@ NetworkManager_SOURCES += nm-connectivity.c nm-connectivity.h + endif + + if SESSION_TRACKING_SYSTEMD +-NetworkManager_SOURCES += nm-session-monitor-systemd.c ++NetworkManager_SOURCES += \ ++ nm-session-monitor-systemd.c \ ++ nm-sleep-monitor-systemd.c + else + if SESSION_TRACKING_CK + NetworkManager_SOURCES += nm-session-monitor-ck.c + else + NetworkManager_SOURCES += nm-session-monitor-null.c + endif ++ ++# UPower suspend/resume used whenever systemd is not enabled ++NetworkManager_SOURCES += nm-sleep-monitor-upower.c + endif + + nm-access-point-glue.h: $(top_srcdir)/introspection/nm-access-point.xml +@@ -283,6 +289,7 @@ BUILT_SOURCES = \ + NetworkManager_CPPFLAGS = \ + $(DBUS_CFLAGS) \ + $(GLIB_CFLAGS) \ ++ $(GIO_CFLAGS) \ + $(GUDEV_CFLAGS) \ + $(LIBNL_CFLAGS) \ + $(GMODULE_CFLAGS) \ diff --git a/src/nm-manager.c b/src/nm-manager.c -index 618c4ed..8adb409 100644 +index 618c4ed..c8ce115 100644 --- a/src/nm-manager.c +++ b/src/nm-manager.c @@ -69,6 +69,7 @@ @@ -86,325 +145,40 @@ index 618c4ed..8adb409 100644 - if (priv->upower_proxy) - g_object_unref (priv->upower_proxy); + if (priv->sleep_monitor) -+ g_object_unref (priv->sleep_monitor); - - if (priv->fw_monitor) { - if (priv->fw_monitor_id) -@@ -4372,23 +4371,12 @@ nm_manager_init (NMManager *manager) - } else - nm_log_warn (LOGD_AUTOIP4, "could not initialize avahi-autoipd D-Bus proxy"); - -- /* upower sleep/wake handling */ -- priv->upower_proxy = dbus_g_proxy_new_for_name (g_connection, -- UPOWER_DBUS_SERVICE, -- "/org/freedesktop/UPower", -- "org.freedesktop.UPower"); -- if (priv->upower_proxy) { -- dbus_g_proxy_add_signal (priv->upower_proxy, "Sleeping", G_TYPE_INVALID); -- dbus_g_proxy_connect_signal (priv->upower_proxy, "Sleeping", -- G_CALLBACK (upower_sleeping_cb), -- manager, NULL); -- -- dbus_g_proxy_add_signal (priv->upower_proxy, "Resuming", G_TYPE_INVALID); -- dbus_g_proxy_connect_signal (priv->upower_proxy, "Resuming", -- G_CALLBACK (upower_resuming_cb), -- manager, NULL); -- } else -- nm_log_warn (LOGD_SUSPEND, "could not initialize UPower D-Bus proxy"); -+ /* sleep/wake handling */ -+ priv->sleep_monitor = nm_sleep_monitor_get (); -+ g_signal_connect (priv->sleep_monitor, "Sleeping", -+ G_CALLBACK (sleeping_cb), manager); -+ g_signal_connect (priv->sleep_monitor, "Resuming", -+ G_CALLBACK (resuming_cb), manager); - - /* Listen for authorization changes */ - nm_auth_changed_func_register (authority_changed_cb, manager); -diff --git a/src/nm-sleep-monitor.c b/src/nm-sleep-monitor.c -new file mode 100644 -index 0000000..488200e ---- /dev/null -+++ b/src/nm-sleep-monitor.c -@@ -0,0 +1,152 @@ -+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */ -+/* This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License along -+ * with this program; if not, write to the Free Software Foundation, Inc., -+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * (C) Copyright 2012 Red Hat, Inc. -+ * Author: Matthias Clasen -+ */ -+ -+#include "config.h" -+#include -+#include -+#include -+#include -+#include -+#include -+#include "nm-logging.h" -+#include "nm-dbus-manager.h" -+ -+#include "nm-sleep-monitor.h" -+ -+#define UPOWER_DBUS_SERVICE "org.freedesktop.UPower" -+ -+struct _NMSleepMonitor { -+ GObject parent_instance; -+ -+ DBusGProxy *upower_proxy; -+}; -+ -+struct _NMSleepMonitorClass { -+ GObjectClass parent_class; -+ -+ void (*sleeping) (NMSleepMonitor *monitor); -+ void (*resuming) (NMSleepMonitor *monitor); -+}; -+ -+ -+enum { -+ SLEEPING, -+ RESUMING, -+ LAST_SIGNAL, -+}; -+static guint signals[LAST_SIGNAL] = {0}; -+ -+G_DEFINE_TYPE (NMSleepMonitor, nm_sleep_monitor, G_TYPE_OBJECT); -+ -+/********************************************************************/ -+ -+static void -+upower_sleeping_cb (DBusGProxy *proxy, gpointer user_data) -+{ -+ nm_log_dbg (LOGD_SUSPEND, "Received UPower sleeping signal"); -+ g_signal_emit (user_data, signals[SLEEPING], 0); -+} -+ -+static void -+upower_resuming_cb (DBusGProxy *proxy, gpointer user_data) -+{ -+ nm_log_dbg (LOGD_SUSPEND, "Received UPower resuming signal"); -+ g_signal_emit (user_data, signals[RESUMING], 0); -+} -+ -+static void -+nm_sleep_monitor_init (NMSleepMonitor *self) -+{ -+ NMDBusManager *dbus_mgr; -+ DBusGConnection *bus; -+ -+ dbus_mgr = nm_dbus_manager_get (); -+ bus = nm_dbus_manager_get_connection (dbus_mgr); -+ self->upower_proxy = dbus_g_proxy_new_for_name (bus, -+ UPOWER_DBUS_SERVICE, -+ "/org/freedesktop/UPower", -+ "org.freedesktop.UPower"); -+ if (self->upower_proxy) { -+ dbus_g_proxy_add_signal (self->upower_proxy, "Sleeping", G_TYPE_INVALID); -+ dbus_g_proxy_connect_signal (self->upower_proxy, "Sleeping", -+ G_CALLBACK (upower_sleeping_cb), -+ self, NULL); -+ -+ dbus_g_proxy_add_signal (self->upower_proxy, "Resuming", G_TYPE_INVALID); -+ dbus_g_proxy_connect_signal (self->upower_proxy, "Resuming", -+ G_CALLBACK (upower_resuming_cb), -+ self, NULL); -+ } else -+ nm_log_warn (LOGD_SUSPEND, "could not initialize UPower D-Bus proxy"); -+ g_object_unref (bus); -+ g_object_unref (dbus_mgr); -+} -+ -+static void -+finalize (GObject *object) -+{ -+ NMSleepMonitor *self = NM_SLEEP_MONITOR (object); -+ -+ if (self->upower_proxy) -+ g_object_unref (self->upower_proxy); -+ -+ if (G_OBJECT_CLASS (nm_sleep_monitor_parent_class)->finalize != NULL) -+ G_OBJECT_CLASS (nm_sleep_monitor_parent_class)->finalize (object); -+} -+ -+static void -+nm_sleep_monitor_class_init (NMSleepMonitorClass *klass) -+{ -+ GObjectClass *gobject_class; -+ -+ gobject_class = G_OBJECT_CLASS (klass); -+ -+ gobject_class->finalize = finalize; -+ -+ signals[SLEEPING] = g_signal_new (NM_SLEEP_MONITOR_SLEEPING, -+ NM_TYPE_SLEEP_MONITOR, -+ G_SIGNAL_RUN_LAST, -+ G_STRUCT_OFFSET (NMSleepMonitorClass, sleeping), -+ NULL, /* accumulator */ -+ NULL, /* accumulator data */ -+ g_cclosure_marshal_VOID__VOID, -+ G_TYPE_NONE, 0); -+ signals[RESUMING] = g_signal_new (NM_SLEEP_MONITOR_RESUMING, -+ NM_TYPE_SLEEP_MONITOR, -+ G_SIGNAL_RUN_LAST, -+ G_STRUCT_OFFSET (NMSleepMonitorClass, resuming), -+ NULL, /* accumulator */ -+ NULL, /* accumulator data */ -+ g_cclosure_marshal_VOID__VOID, -+ G_TYPE_NONE, 0); -+} -+ -+NMSleepMonitor * -+nm_sleep_monitor_get (void) -+{ -+ static NMSleepMonitor *singleton = NULL; -+ -+ if (singleton) -+ return g_object_ref (singleton); -+ -+ singleton = NM_SLEEP_MONITOR (g_object_new (NM_TYPE_SLEEP_MONITOR, NULL)); -+ return singleton; -+} -+ -+/* ---------------------------------------------------------------------------------------------------- */ -diff --git a/src/nm-sleep-monitor.h b/src/nm-sleep-monitor.h -new file mode 100644 -index 0000000..173e6a1 ---- /dev/null -+++ b/src/nm-sleep-monitor.h -@@ -0,0 +1,46 @@ -+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */ -+/* This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License along -+ * with this program; if not, write to the Free Software Foundation, Inc., -+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * (C) Copyright 2012 Red Hat, Inc. -+ * Author: Matthias Clasen -+ */ -+ -+#ifndef NM_SLEEP_MONITOR_H -+#define NM_SLEEP_MONITOR_H -+ -+#include -+ -+G_BEGIN_DECLS -+ -+#define NM_TYPE_SLEEP_MONITOR (nm_sleep_monitor_get_type ()) -+#define NM_SLEEP_MONITOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), NM_TYPE_SLEEP_MONITOR, NMSleepMonitor)) -+#define NM_SLEEP_MONITOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), NM_TYPE_SLEEP_MONITOR, NMSleepMonitorClass)) -+#define NM_SLEEP_MONITOR_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), NM_TYPE_SLEEP_MONITOR, NMSleepMonitorClass)) -+#define NM_IS_SLEEP_MONITOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), NM_TYPE_SLEEP_MONITOR)) -+#define NM_IS_SLEEP_MONITOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), NM_TYPE_SLEEP_MONITOR)) -+ -+#define NM_SLEEP_MONITOR_SLEEPING "sleeping" -+#define NM_SLEEP_MONITOR_RESUMING "resuming" -+ -+typedef struct _NMSleepMonitor NMSleepMonitor; -+typedef struct _NMSleepMonitorClass NMSleepMonitorClass; -+ -+GType nm_sleep_monitor_get_type (void) G_GNUC_CONST; -+NMSleepMonitor *nm_sleep_monitor_get (void); -+ -+G_END_DECLS -+ -+#endif /* NM_SLEEP_MONITOR_H */ -+ --- -1.7.12.2 - - - -From ea0c3a3e0fcbe400a704692d3b436d4733d348a1 Mon Sep 17 00:00:00 2001 -From: Matthias Clasen -Date: Tue, 9 Oct 2012 00:39:03 -0400 -Subject: [PATCH 2/2] core: add a systemd suspend/resume monitor (bgo #677694) - -This implementation uses a delay inhibitor to get systemd to -emit PrepareForSleep, and then emits ::Sleeping and ::Resuming -when receiving the before/after PrepareForSleep emissions. ---- - configure.ac | 2 +- - src/Makefile.am | 9 +- - src/nm-sleep-monitor-systemd.c | 217 +++++++++++++++++++++ - ...m-sleep-monitor.c => nm-sleep-monitor-upower.c} | 0 - 4 files changed, 225 insertions(+), 3 deletions(-) - create mode 100644 src/nm-sleep-monitor-systemd.c - rename src/{nm-sleep-monitor.c => nm-sleep-monitor-upower.c} (100%) - -diff --git a/configure.ac b/configure.ac -index e76e193..9152c23 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -327,7 +327,7 @@ PKG_CHECK_MODULES(GUDEV, gudev-1.0 >= 147) - AC_SUBST(GUDEV_CFLAGS) - AC_SUBST(GUDEV_LIBS) - --PKG_CHECK_MODULES(GIO, gio-2.0) -+PKG_CHECK_MODULES(GIO, gio-unix-2.0) - AC_SUBST(GIO_CFLAGS) - AC_SUBST(GIO_LIBS) - -diff --git a/src/Makefile.am b/src/Makefile.am -index 9484a1f..ba7d2d6 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -192,7 +192,6 @@ NetworkManager_SOURCES = \ - nm-session-utils.c \ - nm-session-utils.h \ - nm-sleep-monitor.h \ -- nm-sleep-monitor.c \ - nm-connection-provider.h \ - nm-connection-provider.c \ - nm-dispatcher.c \ -@@ -203,13 +202,18 @@ NetworkManager_SOURCES += nm-connectivity.c nm-connectivity.h - endif ++ g_object_unref (priv->sleep_monitor); - if SESSION_TRACKING_SYSTEMD --NetworkManager_SOURCES += nm-session-monitor-systemd.c -+NetworkManager_SOURCES += \ -+ nm-session-monitor-systemd.c \ -+ nm-sleep-monitor-systemd.c - else - if SESSION_TRACKING_CK - NetworkManager_SOURCES += nm-session-monitor-ck.c - else - NetworkManager_SOURCES += nm-session-monitor-null.c - endif -+ -+# UPower suspend/resume used whenever systemd is not enabled -+NetworkManager_SOURCES += nm-sleep-monitor-upower.c - endif + if (priv->fw_monitor) { + if (priv->fw_monitor_id) +@@ -4372,23 +4371,12 @@ nm_manager_init (NMManager *manager) + } else + nm_log_warn (LOGD_AUTOIP4, "could not initialize avahi-autoipd D-Bus proxy"); - nm-access-point-glue.h: $(top_srcdir)/introspection/nm-access-point.xml -@@ -285,6 +289,7 @@ BUILT_SOURCES = \ - NetworkManager_CPPFLAGS = \ - $(DBUS_CFLAGS) \ - $(GLIB_CFLAGS) \ -+ $(GIO_CFLAGS) \ - $(GUDEV_CFLAGS) \ - $(LIBNL_CFLAGS) \ - $(GMODULE_CFLAGS) \ +- /* upower sleep/wake handling */ +- priv->upower_proxy = dbus_g_proxy_new_for_name (g_connection, +- UPOWER_DBUS_SERVICE, +- "/org/freedesktop/UPower", +- "org.freedesktop.UPower"); +- if (priv->upower_proxy) { +- dbus_g_proxy_add_signal (priv->upower_proxy, "Sleeping", G_TYPE_INVALID); +- dbus_g_proxy_connect_signal (priv->upower_proxy, "Sleeping", +- G_CALLBACK (upower_sleeping_cb), +- manager, NULL); +- +- dbus_g_proxy_add_signal (priv->upower_proxy, "Resuming", G_TYPE_INVALID); +- dbus_g_proxy_connect_signal (priv->upower_proxy, "Resuming", +- G_CALLBACK (upower_resuming_cb), +- manager, NULL); +- } else +- nm_log_warn (LOGD_SUSPEND, "could not initialize UPower D-Bus proxy"); ++ /* sleep/wake handling */ ++ priv->sleep_monitor = nm_sleep_monitor_get (); ++ g_signal_connect (priv->sleep_monitor, "sleeping", ++ G_CALLBACK (sleeping_cb), manager); ++ g_signal_connect (priv->sleep_monitor, "resuming", ++ G_CALLBACK (resuming_cb), manager); + + /* Listen for authorization changes */ + nm_auth_changed_func_register (authority_changed_cb, manager); diff --git a/src/nm-sleep-monitor-systemd.c b/src/nm-sleep-monitor-systemd.c new file mode 100644 index 0000000..70adc89 @@ -628,10 +402,215 @@ index 0000000..70adc89 +} + +/* ---------------------------------------------------------------------------------------------------- */ -diff --git a/src/nm-sleep-monitor.c b/src/nm-sleep-monitor-upower.c -similarity index 100% -rename from src/nm-sleep-monitor.c -rename to src/nm-sleep-monitor-upower.c +diff --git a/src/nm-sleep-monitor-upower.c b/src/nm-sleep-monitor-upower.c +new file mode 100644 +index 0000000..3c93f66 +--- /dev/null ++++ b/src/nm-sleep-monitor-upower.c +@@ -0,0 +1,151 @@ ++/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */ ++/* This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License along ++ * with this program; if not, write to the Free Software Foundation, Inc., ++ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * (C) Copyright 2012 Red Hat, Inc. ++ * Author: Matthias Clasen ++ */ ++ ++#include "config.h" ++#include ++#include ++#include ++#include ++#include ++#include ++#include "nm-logging.h" ++#include "nm-dbus-manager.h" ++ ++#include "nm-sleep-monitor.h" ++ ++#define UPOWER_DBUS_SERVICE "org.freedesktop.UPower" ++ ++struct _NMSleepMonitor { ++ GObject parent_instance; ++ ++ DBusGProxy *upower_proxy; ++}; ++ ++struct _NMSleepMonitorClass { ++ GObjectClass parent_class; ++ ++ void (*sleeping) (NMSleepMonitor *monitor); ++ void (*resuming) (NMSleepMonitor *monitor); ++}; ++ ++ ++enum { ++ SLEEPING, ++ RESUMING, ++ LAST_SIGNAL, ++}; ++static guint signals[LAST_SIGNAL] = {0}; ++ ++G_DEFINE_TYPE (NMSleepMonitor, nm_sleep_monitor, G_TYPE_OBJECT); ++ ++/********************************************************************/ ++ ++static void ++upower_sleeping_cb (DBusGProxy *proxy, gpointer user_data) ++{ ++ nm_log_dbg (LOGD_SUSPEND, "Received UPower sleeping signal"); ++ g_signal_emit (user_data, signals[SLEEPING], 0); ++} ++ ++static void ++upower_resuming_cb (DBusGProxy *proxy, gpointer user_data) ++{ ++ nm_log_dbg (LOGD_SUSPEND, "Received UPower resuming signal"); ++ g_signal_emit (user_data, signals[RESUMING], 0); ++} ++ ++static void ++nm_sleep_monitor_init (NMSleepMonitor *self) ++{ ++ NMDBusManager *dbus_mgr; ++ DBusGConnection *bus; ++ ++ dbus_mgr = nm_dbus_manager_get (); ++ bus = nm_dbus_manager_get_connection (dbus_mgr); ++ self->upower_proxy = dbus_g_proxy_new_for_name (bus, ++ UPOWER_DBUS_SERVICE, ++ "/org/freedesktop/UPower", ++ "org.freedesktop.UPower"); ++ if (self->upower_proxy) { ++ dbus_g_proxy_add_signal (self->upower_proxy, "Sleeping", G_TYPE_INVALID); ++ dbus_g_proxy_connect_signal (self->upower_proxy, "Sleeping", ++ G_CALLBACK (upower_sleeping_cb), ++ self, NULL); ++ ++ dbus_g_proxy_add_signal (self->upower_proxy, "Resuming", G_TYPE_INVALID); ++ dbus_g_proxy_connect_signal (self->upower_proxy, "Resuming", ++ G_CALLBACK (upower_resuming_cb), ++ self, NULL); ++ } else ++ nm_log_warn (LOGD_SUSPEND, "could not initialize UPower D-Bus proxy"); ++ g_object_unref (dbus_mgr); ++} ++ ++static void ++finalize (GObject *object) ++{ ++ NMSleepMonitor *self = NM_SLEEP_MONITOR (object); ++ ++ if (self->upower_proxy) ++ g_object_unref (self->upower_proxy); ++ ++ if (G_OBJECT_CLASS (nm_sleep_monitor_parent_class)->finalize != NULL) ++ G_OBJECT_CLASS (nm_sleep_monitor_parent_class)->finalize (object); ++} ++ ++static void ++nm_sleep_monitor_class_init (NMSleepMonitorClass *klass) ++{ ++ GObjectClass *gobject_class; ++ ++ gobject_class = G_OBJECT_CLASS (klass); ++ ++ gobject_class->finalize = finalize; ++ ++ signals[SLEEPING] = g_signal_new (NM_SLEEP_MONITOR_SLEEPING, ++ NM_TYPE_SLEEP_MONITOR, ++ G_SIGNAL_RUN_LAST, ++ G_STRUCT_OFFSET (NMSleepMonitorClass, sleeping), ++ NULL, /* accumulator */ ++ NULL, /* accumulator data */ ++ g_cclosure_marshal_VOID__VOID, ++ G_TYPE_NONE, 0); ++ signals[RESUMING] = g_signal_new (NM_SLEEP_MONITOR_RESUMING, ++ NM_TYPE_SLEEP_MONITOR, ++ G_SIGNAL_RUN_LAST, ++ G_STRUCT_OFFSET (NMSleepMonitorClass, resuming), ++ NULL, /* accumulator */ ++ NULL, /* accumulator data */ ++ g_cclosure_marshal_VOID__VOID, ++ G_TYPE_NONE, 0); ++} ++ ++NMSleepMonitor * ++nm_sleep_monitor_get (void) ++{ ++ static NMSleepMonitor *singleton = NULL; ++ ++ if (singleton) ++ return g_object_ref (singleton); ++ ++ singleton = NM_SLEEP_MONITOR (g_object_new (NM_TYPE_SLEEP_MONITOR, NULL)); ++ return singleton; ++} ++ ++/* ---------------------------------------------------------------------------------------------------- */ +diff --git a/src/nm-sleep-monitor.h b/src/nm-sleep-monitor.h +new file mode 100644 +index 0000000..173e6a1 +--- /dev/null ++++ b/src/nm-sleep-monitor.h +@@ -0,0 +1,46 @@ ++/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */ ++/* This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License along ++ * with this program; if not, write to the Free Software Foundation, Inc., ++ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * (C) Copyright 2012 Red Hat, Inc. ++ * Author: Matthias Clasen ++ */ ++ ++#ifndef NM_SLEEP_MONITOR_H ++#define NM_SLEEP_MONITOR_H ++ ++#include ++ ++G_BEGIN_DECLS ++ ++#define NM_TYPE_SLEEP_MONITOR (nm_sleep_monitor_get_type ()) ++#define NM_SLEEP_MONITOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), NM_TYPE_SLEEP_MONITOR, NMSleepMonitor)) ++#define NM_SLEEP_MONITOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), NM_TYPE_SLEEP_MONITOR, NMSleepMonitorClass)) ++#define NM_SLEEP_MONITOR_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), NM_TYPE_SLEEP_MONITOR, NMSleepMonitorClass)) ++#define NM_IS_SLEEP_MONITOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), NM_TYPE_SLEEP_MONITOR)) ++#define NM_IS_SLEEP_MONITOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), NM_TYPE_SLEEP_MONITOR)) ++ ++#define NM_SLEEP_MONITOR_SLEEPING "sleeping" ++#define NM_SLEEP_MONITOR_RESUMING "resuming" ++ ++typedef struct _NMSleepMonitor NMSleepMonitor; ++typedef struct _NMSleepMonitorClass NMSleepMonitorClass; ++ ++GType nm_sleep_monitor_get_type (void) G_GNUC_CONST; ++NMSleepMonitor *nm_sleep_monitor_get (void); ++ ++G_END_DECLS ++ ++#endif /* NM_SLEEP_MONITOR_H */ ++ -- 1.7.12.2 diff --git a/multilib/lib32-sqlite/PKGBUILD b/multilib/lib32-sqlite/PKGBUILD index fce5a8978..33f846a88 100644 --- a/multilib/lib32-sqlite/PKGBUILD +++ b/multilib/lib32-sqlite/PKGBUILD @@ -4,9 +4,11 @@ _pkgbasename=sqlite pkgname=lib32-sqlite -_amalgamationver=3071400 -pkgver=3.7.14 -pkgrel=2 +_amalgamationver=3071401 +#_docver=${_amalgamationver} +_docver=3071400 +pkgver=3.7.14.1 +pkgrel=1 pkgdesc="A C library that implements an SQL database engine (32-bit)" arch=('x86_64') license=('custom') @@ -15,7 +17,7 @@ depends=(lib32-glibc $_pkgbasename) makedepends=('tcl' 'gcc-multilib' 'lib32-readline') source=(http://www.sqlite.org/sqlite-autoconf-${_amalgamationver}.tar.gz) options=(!libtool) -md5sums=('6464d429b1396a8db35864e791673b65') +md5sums=('4cf3fd434bbb6e50777019ff3507bfa5') provides=("lib32-sqlite3=$pkgver") replaces=("lib32-sqlite3") conflicts=("lib32-sqlite3") diff --git a/staging/python-iwscan/PKGBUILD b/staging/python-iwscan/PKGBUILD new file mode 100644 index 000000000..3abb6747e --- /dev/null +++ b/staging/python-iwscan/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 168715 2012-10-14 20:19:42Z eric $ +# Maintainer: Daniel Isenmann + +pkgbase=python-iwscan +pkgname=python2-iwscan +pkgver=20090609 +pkgrel=4 +pkgdesc="A Python interface to iwlist, using the iwlib library" +arch=('i686' 'x86_64') +url="http://projects.otaku42.de/browser/python-iwscan" +license=('LGPL') +depends=('python2' 'wireless_tools') +conflicts=('python-iwscan<=20090609-3') +replaces=('python-iwscan<=20090609-3') +source=(ftp://ftp.archlinux.org/other/${pkgbase}/${pkgbase}-20090609.tar.gz) +md5sums=('30fbe8ad3b07e67c1c35db2de16077d8') + +build() { + cd "${srcdir}/${pkgbase}" + python2 setup.py build +} + +package_python2-iwscan() { + cd "${srcdir}/${pkgbase}" + python2 setup.py install --root="${pkgdir}" +} diff --git a/staging/python-notify/PKGBUILD b/staging/python-notify/PKGBUILD new file mode 100644 index 000000000..6cf46c8dc --- /dev/null +++ b/staging/python-notify/PKGBUILD @@ -0,0 +1,43 @@ +# $Id: PKGBUILD 168721 2012-10-14 20:45:08Z eric $ +# Maintainer: Angel Velasquez + +pkgbase=python-notify +pkgname=python2-notify +pkgver=0.1.1 +pkgrel=12 +pkgdesc="Python bindings for libnotify" +arch=('i686' 'x86_64') +url="http://www.galago-project.org/" +license=('GPL') +depends=('pygtk>=2.22.0' 'libnotify>=0.7.1') +makedepends=('python2') +conflicts=('python-notify<=0.1.1-11') +replaces=('python-notify<=0.1.1-11') +options=(!libtool) +source=(http://www.galago-project.org/files/releases/source/notify-python/notify-python-${pkgver}.tar.gz + libnotify07.patch + notify-python-0.1.1-fix-GTK-symbols.patch) +md5sums=('8f0ef0939cc8edd2efd896ce5ba80cf4' + 'b40c4542575d5aef559908fe60a21634' + 'c6922028da5951e69a6a0167bdb4461c') + +build() { + cd "${srcdir}/notify-python-${pkgver}" + + patch -Np1 -i "${srcdir}/libnotify07.patch" + patch -Np1 -i "${srcdir}/notify-python-0.1.1-fix-GTK-symbols.patch" + + ./configure --prefix=/usr + + # WARNING - we touch src/pynotify.override in build because upstream did not rebuild pynotify.c + # from the input definitions, this forces pynotify.c to be regenerated, at some point this can be removed + touch src/pynotify.override + + make clean + make +} + +package_python2-notify() { + cd "${srcdir}/notify-python-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/staging/python-notify/libnotify07.patch b/staging/python-notify/libnotify07.patch new file mode 100644 index 000000000..289573d50 --- /dev/null +++ b/staging/python-notify/libnotify07.patch @@ -0,0 +1,36 @@ +diff -up notify-python-0.1.1/src/pynotify.defs.notify070 notify-python-0.1.1/src/pynotify.defs +--- notify-python-0.1.1/src/pynotify.defs.notify070 2010-11-02 17:11:14.928179237 -0400 ++++ notify-python-0.1.1/src/pynotify.defs 2010-11-02 17:11:51.153180231 -0400 +@@ -38,7 +38,6 @@ + '("const-gchar*" "summary") + '("const-gchar*" "message" (null-ok) (default "NULL")) + '("const-gchar*" "icon" (null-ok) (default "NULL")) +- '("GtkWidget*" "attach" (null-ok) (default "NULL")) + ) + ) + +@@ -53,24 +52,6 @@ + ) + ) + +-(define-method attach_to_widget +- (of-object "NotifyNotification") +- (c-name "notify_notification_attach_to_widget") +- (return-type "none") +- (parameters +- '("GtkWidget*" "attach") +- ) +-) +- +-(define-method attach_to_status_icon +- (of-object "NotifyNotification") +- (c-name "notify_notification_attach_to_status_icon") +- (return-type "none") +- (parameters +- '("GtkStatusIcon*" "attach") +- ) +-) +- + (define-method show + (of-object "NotifyNotification") + (c-name "notify_notification_show") diff --git a/staging/python-notify/notify-python-0.1.1-fix-GTK-symbols.patch b/staging/python-notify/notify-python-0.1.1-fix-GTK-symbols.patch new file mode 100644 index 000000000..f985c0136 --- /dev/null +++ b/staging/python-notify/notify-python-0.1.1-fix-GTK-symbols.patch @@ -0,0 +1,25 @@ +diff -up notify-python-0.1.1/src/__init__.py.BAD notify-python-0.1.1/src/__init__.py +--- notify-python-0.1.1/src/__init__.py.BAD 2010-08-31 09:04:45.353844005 -0400 ++++ notify-python-0.1.1/src/__init__.py 2010-08-31 09:04:49.281844300 -0400 +@@ -1 +1,21 @@ ++""" ++Fedora's libnotify.so is not linked against GTK2 or GTK3. The idea ++was to support being linked against different parallel-installable ++GTK stacks. ++ ++Unfortunately, python needs to jump through some special hoops in order ++to share symbols with extension modules, specifically, pygtk, which does ++link against GTK2. ++ ++Without using sys.setdlopenflags(sys.getdlopenflags() | ctypes.RTLD_GLOBAL), ++the result is: ++libnotify-WARNING **: Missing symbol 'gdk_screen_make_display_name' ++ ++Thanks to David Malcolm for figuring out the workaround. ++""" ++import ctypes ++import sys ++sys.setdlopenflags(sys.getdlopenflags() | ctypes.RTLD_GLOBAL) ++import gtk ++ + from _pynotify import * diff --git a/staging/python-pysqlite/PKGBUILD b/staging/python-pysqlite/PKGBUILD new file mode 100644 index 000000000..f5985ebca --- /dev/null +++ b/staging/python-pysqlite/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 168723 2012-10-14 21:14:34Z eric $ +# Maintainer: Angel Velasquez +# Contributor: Aaron Griffin +# Contributor: Daniel J Griffiths + +pkgbase=python-pysqlite +pkgname=python2-pysqlite +pkgver=2.6.3 +pkgrel=3 +pkgdesc="A Python DB-API 2.0 interface for the SQLite embedded relational database engine" +license=('custom') +arch=('i686' 'x86_64') +url="http://code.google.com/p/pysqlite/" +depends=('python2' 'sqlite') +conflicts=('python-pysqlite<=2.6.3-2') +replaces=('python-pysqlite<=2.6.3-2') +source=(http://pysqlite.googlecode.com/files/pysqlite-${pkgver}.tar.gz \ + setup.cfg) +md5sums=('711afa1062a1d2c4a67acdf02a33d86e' + '86dd356c65afd14a22f2f8f64a26441e') + +check() { + cd "${srcdir}"/pysqlite-${pkgver}/build/lib.*/ + python2 -c "from pysqlite2 import test; test.test()" +} + +build() { + cd "${srcdir}/pysqlite-${pkgver}" + cp "${srcdir}/setup.cfg" . + python2 setup.py build +} + +package_python2-pysqlite() { + cd "${srcdir}/pysqlite-${pkgver}" + python2 setup.py install --root="${pkgdir}" + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + rm -r "${pkgdir}/usr/pysqlite2-doc" +} diff --git a/staging/python-pysqlite/setup.cfg b/staging/python-pysqlite/setup.cfg new file mode 100644 index 000000000..ba6c77075 --- /dev/null +++ b/staging/python-pysqlite/setup.cfg @@ -0,0 +1,5 @@ +[build_ext] +define= +include_dirs=/usr/include +library_dirs=/usr/lib +libraries=sqlite3 diff --git a/staging/python-wpactrl/PKGBUILD b/staging/python-wpactrl/PKGBUILD new file mode 100644 index 000000000..692b3e8c3 --- /dev/null +++ b/staging/python-wpactrl/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 168717 2012-10-14 20:27:32Z eric $ +# Maintainer: Daniel Isenmann + +pkgbase=python-wpactrl +pkgname=python2-wpactrl +pkgver=20090609 +pkgrel=4 +pkgdesc="A Python extension for wpa_supplicant/hostapd control interface access" +arch=('i686' 'x86_64') +url="http://projects.otaku42.de/wiki/PythonWpaCtrl" +license=('GPL2') +depends=('python2') +conflicts=('python-wpactrl<=20090609-3') +replaces=('python-wpactrl<=20090609-3') +source=(ftp://ftp.archlinux.org/other/${pkgbase}/python-wpactrl-20090609.tar.gz) +md5sums=('8d45739aa9bfa1110a4570bb5ceda768') + +build() { + cd "${srcdir}/${pkgbase}-${pkgver}" + python2 setup.py build +} + +package_python2-wpactrl() { + cd "${srcdir}/${pkgbase}-${pkgver}" + python2 setup.py install --root="${pkgdir}" +} diff --git a/staging/slim/PKGBUILD b/staging/slim/PKGBUILD new file mode 100644 index 000000000..a4580b756 --- /dev/null +++ b/staging/slim/PKGBUILD @@ -0,0 +1,63 @@ +# $Id: PKGBUILD 168702 2012-10-14 15:17:29Z tomegun $ +# Maintainer: Gaetan Bisson +# Contributor: Thayer Williams +# Contributor: Alexander Fehr +# Contributor: Hugo Ideler + +pkgname=slim +pkgver=1.3.4 +pkgrel=4 +pkgdesc='Desktop-independent graphical login manager for X11' +arch=('i686' 'x86_64') +url='http://slim.berlios.de/' +license=('GPL2') +depends=('pam' 'libxmu' 'libpng' 'libjpeg' 'libxft') +makedepends=('cmake' 'freeglut') +backup=('etc/slim.conf' 'etc/logrotate.d/slim' 'etc/pam.d/slim') +source=("http://download.berlios.de/${pkgname}/${pkgname}-${pkgver}.tar.gz" + 'rc.d' + 'pam.d' + 'logrotate' + 'slim.service' + 'session-name.patch' + 'libpng-1.4+-support.patch' + 'fix-glibc-segfault-1.3.4.patch') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i ../session-name.patch # FS#26693: fix default session name + patch -Np1 -i ../libpng-1.4+-support.patch # taken from gentoo to build + patch -Np0 -i ../fix-glibc-segfault-1.3.4.patch # FS#30864 + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DUSE_PAM=yes -DUSE_CONSOLEKIT=no + make +} + +package() { + cd ${srcdir}/build/ + make DESTDIR="${pkgdir}" install + + install -D -m755 ../rc.d "${pkgdir}"/etc/rc.d/slim + install -D -m644 ../pam.d "${pkgdir}"/etc/pam.d/slim + install -D -m644 ../logrotate "${pkgdir}"/etc/logrotate.d/slim + + # Provide sane defaults + sed -i 's|#xserver_arguments.*|xserver_arguments -nolisten tcp vt07|' "${pkgdir}"/etc/slim.conf + sed -i 's|/var/run/slim.lock|/var/lock/slim.lock|' "${pkgdir}"/etc/slim.conf + # install systemd files + install -D -m644 ${srcdir}/slim.service ${pkgdir}/usr/lib/systemd/system/slim.service +} +md5sums=('51543533e492b41007811f7d880720fa' + 'd8ea9c4dee2811524b67f4f666311a1f' + '37ef35079139544d04b8316c7f66f754' + '43da096480bf72c3ccec8ad8400f34f0' + 'a5d6bde9e63899df7d2081e1585bbe54' + 'ebcb6829028615686de7b64ceeaaf8ed' + '6d19bd7a91592ed2bb902b22b9594565' + '9efc4e0d82d354f0c578be7723870769') diff --git a/staging/slim/fix-glibc-segfault-1.3.4.patch b/staging/slim/fix-glibc-segfault-1.3.4.patch new file mode 100644 index 000000000..b035f8a78 --- /dev/null +++ b/staging/slim/fix-glibc-segfault-1.3.4.patch @@ -0,0 +1,13 @@ +Index: app.cpp +=================================================================== +--- app.cpp (revision 223) ++++ app.cpp (working copy) +@@ -593,7 +593,7 @@ + + n++; + +- child_env = static_cast(malloc(sizeof(char*)*n)); ++ child_env = static_cast(malloc(sizeof(char*)*(n+1))); + memcpy(child_env, old_env, sizeof(char*)*n); + child_env[n - 1] = StrConcat("XDG_SESSION_COOKIE=", ck.get_xdg_session_cookie()); + child_env[n] = NULL; diff --git a/staging/slim/libpng-1.4+-support.patch b/staging/slim/libpng-1.4+-support.patch new file mode 100644 index 000000000..57b39272b --- /dev/null +++ b/staging/slim/libpng-1.4+-support.patch @@ -0,0 +1,14 @@ +--- a/image.cpp 2012-06-26 04:20:14.000000000 -0400 ++++ b/image.cpp 2012-06-27 11:41:34.000000000 -0400 +@@ -781,7 +781,11 @@ + (png_infopp) NULL); + } + ++#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4 ++ if (setjmp(png_jmpbuf((png_ptr)))) { ++#else + if (setjmp(png_ptr->jmpbuf)) { ++#endif + goto png_destroy; + } + diff --git a/staging/slim/logrotate b/staging/slim/logrotate new file mode 100644 index 000000000..26ec3b0f4 --- /dev/null +++ b/staging/slim/logrotate @@ -0,0 +1,9 @@ +/var/log/slim.log { + compress + rotate 1 + size 1024k + notifempty + missingok + copytruncate + noolddir +} diff --git a/staging/slim/pam.d b/staging/slim/pam.d new file mode 100644 index 000000000..59db5a8c5 --- /dev/null +++ b/staging/slim/pam.d @@ -0,0 +1,10 @@ +#%PAM-1.0 +auth requisite pam_nologin.so +auth required pam_env.so +auth required pam_unix.so +account required pam_unix.so +password required pam_unix.so +session required pam_limits.so +session required pam_unix.so +session optional pam_loginuid.so +-session optional pam_systemd.so diff --git a/staging/slim/rc.d b/staging/slim/rc.d new file mode 100755 index 000000000..b0be7ffc5 --- /dev/null +++ b/staging/slim/rc.d @@ -0,0 +1,36 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/bin/slim` +case "$1" in + start) + stat_busy "Starting Simple Login Manager" + [ -z "$PID" ] && /usr/bin/slim -d &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon slim + stat_done + fi + ;; + stop) + stat_busy "Stopping Simple Login Manager" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon slim + stat_done + fi + ;; + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/staging/slim/session-name.patch b/staging/slim/session-name.patch new file mode 100644 index 000000000..8211c4f72 --- /dev/null +++ b/staging/slim/session-name.patch @@ -0,0 +1,21 @@ +diff -Naur slim-1.3.2.old/panel.cpp slim-1.3.2.new/panel.cpp +--- slim-1.3.2.old/panel.cpp 2010-10-24 06:01:15.117000019 +0000 ++++ slim-1.3.2.new/panel.cpp 2010-10-24 17:26:30.987999967 +0000 +@@ -23,7 +23,7 @@ + Root = root; + cfg = config; + +- session = ""; ++ session = cfg->nextSession(session); + + // Init GC + XGCValues gcv; +@@ -188,7 +188,7 @@ + } + + void Panel::ClearPanel() { +- session = ""; ++ session = cfg->nextSession(session); + Reset(); + XClearWindow(Dpy, Root); + XClearWindow(Dpy, Win); diff --git a/staging/slim/slim.service b/staging/slim/slim.service new file mode 100644 index 000000000..b894085a0 --- /dev/null +++ b/staging/slim/slim.service @@ -0,0 +1,9 @@ +[Unit] +Description=SLiM Simple Login Manager +After=systemd-user-sessions.service + +[Service] +ExecStart=/usr/bin/slim -nodaemon + +[Install] +Alias=display-manager.service diff --git a/staging/slim/tty-slowness.patch b/staging/slim/tty-slowness.patch new file mode 100644 index 000000000..c590fbed8 --- /dev/null +++ b/staging/slim/tty-slowness.patch @@ -0,0 +1,30 @@ +diff -aur slim-1.3.2.a/app.cpp slim-1.3.2.b/app.cpp +--- slim-1.3.2.a/app.cpp 2010-08-21 15:10:13.702755711 +0200 ++++ slim-1.3.2.b/app.cpp 2010-08-21 15:10:48.579631179 +0200 +@@ -280,21 +280,22 @@ + signal(SIGALRM, AlarmSignal); + + #ifndef XNEST_DEBUG +- OpenLog(); +- + if (!force_nodaemon && cfg->getOption("daemon") == "yes") { + daemonmode = true; + } + + // Daemonize + if (daemonmode) { +- if (daemon(0, 1) == -1) { ++ if (daemon(0, 0) == -1) { + cerr << APPNAME << ": " << strerror(errno) << endl; + exit(ERR_EXIT); + } +- UpdatePid(); + } + ++ OpenLog(); ++ ++ if (daemonmode) UpdatePid(); ++ + CreateServerAuth(); + StartServer(); + alarm(2); diff --git a/staging/sonata/PKGBUILD b/staging/sonata/PKGBUILD new file mode 100644 index 000000000..d2a3d8d71 --- /dev/null +++ b/staging/sonata/PKGBUILD @@ -0,0 +1,30 @@ +# $Id: PKGBUILD 168713 2012-10-14 19:47:10Z eric $ +# Maintainer: Angel Velasquez +# Contributor: William Rea + +pkgname=sonata +pkgver=1.6.2.1 +pkgrel=8 +pkgdesc="Elegant GTK+ music client for MPD" +arch=('i686' 'x86_64') +url="http://sonata.berlios.de/" +license=('GPL3') +depends=('pygtk' 'python2-mpd') +optdepends=('gnome-python-extras: Enhanced system tray support' + 'tagpy: Metadata editing support' + 'python2-dbus: Various extra functionality (e.g. multimedia keys support)') +source=(http://download.berlios.de/${pkgname}/${pkgname}-$pkgver.tar.gz + info.py.patch) +md5sums=('0b912325e7175abad3bf6c0edc071e05' + '595fcf7615035829b264afecb5a1beeb') + +build() { + cd "$srcdir/${pkgname}-$pkgver" + patch -Np0 -i "$srcdir/info.py.patch" + sed -i 's|/usr/bin/env python|/usr/bin/env python2|' sonata/breadcrumbs.py +} + +package() { + cd "$srcdir/${pkgname}-$pkgver" + python2 setup.py install --prefix=/usr --optimize 1 --root="$pkgdir" +} diff --git a/staging/sonata/info.py.patch b/staging/sonata/info.py.patch new file mode 100644 index 000000000..e95cc3a08 --- /dev/null +++ b/staging/sonata/info.py.patch @@ -0,0 +1,15 @@ +--- sonata/info.py 2011-07-05 22:32:08.452556016 -0500 ++++ sonata/info.py 2011-07-05 22:45:50.849311466 -0500 +@@ -393,9 +393,9 @@ + if content.startswith("#REDIRECT [["): + addr = "http://lyricwiki.org/index.php?title=%s&action=edit" % urllib.quote(content.split("[[")[1].split("]]")[0]) + content = urllib.urlopen(addr).read() +- lyrics = content.split("<lyrics>")[1].split("</lyrics>")[0] +- if lyrics.strip() != "<!-- PUT LYRICS HERE (and delete this entire line) -->": +- lyrics = misc.unescape_html(lyrics) ++ content = misc.unescape_html(content) ++ lyrics = content.split("")[1].split("")[0].strip() ++ if lyrics.strip() != "": + lyrics = misc.wiki_to_html(lyrics) + lyrics = lyrics.decode("utf-8") + # Save lyrics to file: diff --git a/staging/xfce4-session/PKGBUILD b/staging/xfce4-session/PKGBUILD index 11ff3e201..c3fccce41 100644 --- a/staging/xfce4-session/PKGBUILD +++ b/staging/xfce4-session/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 168641 2012-10-13 17:34:14Z foutrelis $ +# $Id: PKGBUILD 168729 2012-10-14 23:01:20Z foutrelis $ # Maintainer: Evangelos Foutras # Contributor: tobias pkgname=xfce4-session pkgver=4.10.0 -pkgrel=4 +pkgrel=5 pkgdesc="A session manager for Xfce" arch=('i686' 'x86_64') url="http://www.xfce.org/" @@ -12,7 +12,7 @@ license=('GPL2') groups=('xfce4') depends=('libxfce4ui' 'libwnck' 'libsm' 'xorg-iceauth' 'upower' 'xorg-xinit' 'hicolor-icon-theme') -makedepends=('intltool') +makedepends=('intltool' 'xfce4-dev-tools') optdepends=('gnome-keyring: for keyring support when GNOME compatibility is enabled' 'xscreensaver: for locking screen with xflock4' 'gnome-screensaver: for locking screen with xflock4' @@ -20,18 +20,26 @@ optdepends=('gnome-keyring: for keyring support when GNOME compatibility is enab replaces=('xfce-utils') options=('!libtool') install=$pkgname.install -source=(http://archive.xfce.org/src/xfce/$pkgname/4.10/$pkgname-$pkgver.tar.bz2) -sha256sums=('bb8aa9a74c3d382840596fb4875144d66c7f3f47c8e9ee81d31e3428a72c46ce') +source=(http://archive.xfce.org/src/xfce/$pkgname/4.10/$pkgname-$pkgver.tar.bz2 + xfce4-session-4.10.0-add-systemd-support.patch) +sha256sums=('bb8aa9a74c3d382840596fb4875144d66c7f3f47c8e9ee81d31e3428a72c46ce' + 'ffae61c48a4bd0cb51d422cb93f2de9567abaf29085370c455ef349b6a10234b') build() { cd "$srcdir/$pkgname-$pkgver" - ./configure --prefix=/usr \ + # https://bugzilla.xfce.org/show_bug.cgi?id=8729 + patch -Np1 -i "$srcdir/xfce4-session-4.10.0-add-systemd-support.patch" + + xdt-autogen + + ./configure \ + --prefix=/usr \ --sysconfdir=/etc \ --libexecdir=/usr/lib/xfce4 \ --localstatedir=/var \ --disable-static \ - --enable-libgnome-keyring \ + --disable-legacy-sm \ --disable-debug make } diff --git a/staging/xfce4-session/xfce4-session-4.10.0-add-systemd-support.patch b/staging/xfce4-session/xfce4-session-4.10.0-add-systemd-support.patch new file mode 100644 index 000000000..7ab637b26 --- /dev/null +++ b/staging/xfce4-session/xfce4-session-4.10.0-add-systemd-support.patch @@ -0,0 +1,388 @@ +diff --git a/xfce4-session/xfsm-systemd.c b/xfce4-session/xfsm-systemd.c +index 4076586..90e7873 100644 +--- /dev/null ++++ b/xfce4-session/xfsm-systemd.c +@@ -0,0 +1,123 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- ++ * ++ * Copyright (C) 2012 Christian Hesse ++ * ++ * Licensed under the GNU General Public License Version 2 ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ++ */ ++ ++#include ++ ++#include ++#include ++ ++#include "xfsm-systemd.h" ++ ++#define SYSTEMD_DBUS_NAME "org.freedesktop.login1" ++#define SYSTEMD_DBUS_PATH "/org/freedesktop/login1" ++#define SYSTEMD_DBUS_INTERFACE "org.freedesktop.login1.Manager" ++#define SYSTEMD_REBOOT_ACTION "org.freedesktop.login1.reboot" ++#define SYSTEMD_SHUTDOWN_ACTION "org.freedesktop.login1.power-off" ++ ++struct _SystemdProxy { ++ PolkitAuthority *authority; ++ PolkitSubject *subject; ++}; ++ ++SystemdProxy * ++systemd_proxy_new (void) ++{ ++ SystemdProxy *proxy; ++ ++ proxy = g_new0 (SystemdProxy, 1); ++ ++ proxy->authority = polkit_authority_get_sync (NULL, NULL); ++ proxy->subject = polkit_unix_process_new (getpid()); ++ ++ return proxy; ++} ++ ++void ++systemd_proxy_free (SystemdProxy *proxy) ++{ ++ g_object_unref (proxy->authority); ++ g_object_unref (proxy->subject); ++ ++ g_free (proxy); ++} ++ ++gboolean systemd_proxy_can_method (SystemdProxy *proxy, gboolean *can_method, const gchar *method, GError **error) ++{ ++ PolkitAuthorizationResult *res; ++ GError *local_error = NULL; ++ ++ *can_method = FALSE; ++ res = polkit_authority_check_authorization_sync (proxy->authority, ++ proxy->subject, ++ method, ++ NULL, ++ POLKIT_CHECK_AUTHORIZATION_FLAGS_NONE, ++ NULL, ++ &local_error); ++ if (res == NULL) { ++ g_propagate_error (error, local_error); ++ return FALSE; ++ } ++ ++ *can_method = polkit_authorization_result_get_is_authorized (res) || ++ polkit_authorization_result_get_is_challenge (res); ++ ++ g_object_unref (res); ++ ++ return TRUE; ++} ++ ++gboolean systemd_proxy_can_restart (SystemdProxy *proxy, gboolean *can_restart, GError **error) ++{ ++ return systemd_proxy_can_method(proxy, can_restart, SYSTEMD_REBOOT_ACTION, error); ++} ++ ++gboolean systemd_proxy_can_shutdown (SystemdProxy *proxy, gboolean *can_shutdown, GError **error) ++{ ++ return systemd_proxy_can_method(proxy, can_shutdown, SYSTEMD_SHUTDOWN_ACTION, error); ++} ++ ++gboolean systemd_proxy_method (SystemdProxy *proxy, const gchar *method, GError **error) ++{ ++ GDBusConnection *bus; ++ ++ bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, NULL); ++ g_dbus_connection_call_sync (bus, ++ SYSTEMD_DBUS_NAME, ++ SYSTEMD_DBUS_PATH, ++ SYSTEMD_DBUS_INTERFACE, ++ method, ++ g_variant_new ("(b)", TRUE), ++ NULL, 0, G_MAXINT, NULL, NULL); ++ g_object_unref (bus); ++ ++ return TRUE; ++} ++ ++gboolean systemd_proxy_restart (SystemdProxy *proxy, GError **error) ++{ ++ return systemd_proxy_method(proxy, "Reboot", error); ++} ++ ++gboolean systemd_proxy_shutdown (SystemdProxy *proxy, GError **error) ++{ ++ return systemd_proxy_method(proxy, "PowerOff", error); ++} +diff --git a/xfce4-session/xfsm-systemd.h b/xfce4-session/xfsm-systemd.h +index 3fa8317..2c4d868 100644 +--- /dev/null ++++ b/xfce4-session/xfsm-systemd.h +@@ -0,0 +1,42 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- ++ * ++ * Copyright (C) 2012 Christian Hesse ++ * ++ * Licensed under the GNU General Public License Version 2 ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ++ */ ++ ++#ifndef __SYSTEMD_PROXY_H__ ++#define __SYSTEMD_PROXY_H__ ++ ++#include ++ ++G_BEGIN_DECLS ++ ++typedef struct _SystemdProxy SystemdProxy; ++ ++SystemdProxy *systemd_proxy_new (void); ++void systemd_proxy_free (SystemdProxy *proxy); ++gboolean systemd_proxy_can_method (SystemdProxy *proxy, gboolean *can_method, const char *method, GError **error); ++gboolean systemd_proxy_can_restart (SystemdProxy *proxy, gboolean *can_restart, GError **error); ++gboolean systemd_proxy_can_shutdown (SystemdProxy *proxy, gboolean *can_shutdown, GError **error); ++gboolean systemd_proxy_method (SystemdProxy *proxy, const char *method, GError **error); ++gboolean systemd_proxy_restart (SystemdProxy *proxy, GError **error); ++gboolean systemd_proxy_shutdown (SystemdProxy *proxy, GError **error); ++ ++G_END_DECLS ++ ++#endif /* __SYSTEMD_PROXY_H__ */ + +commit 518a28c23f110617aad36e64c02cdab6a36adf37 +Author: Christian Hesse +Date: Fri Jul 27 14:21:14 2012 +0200 + + ... + +diff --git a/configure.in.in b/configure.in.in +index 9aa4f8f..aa0b8bb 100644 +--- a/configure.in ++++ b/configure.in +@@ -96,6 +96,33 @@ XDT_CHECK_PACKAGE([DBUS], [dbus-1], [1.1.0]) + XDT_CHECK_PACKAGE([DBUS_GLIB], [dbus-glib-1], [0.84]) + XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.9.0]) + ++dnl systemd integration ++AC_ARG_ENABLE([systemd], ++ AS_HELP_STRING([--enable-systemd], [Use systemd]), ++ [with_systemd=$enableval], ++ [with_systemd=auto]) ++PKG_CHECK_MODULES(SYSTEMD, ++ [libsystemd-login polkit-gobject-1], ++ [have_systemd=yes], [have_systemd=no]) ++AC_MSG_CHECKING([whether to use systemd]) ++if test x$with_systemd = xauto ; then ++ if test x$have_systemd = xno ; then ++ with_systemd=no ++ else ++ with_systemd=yes ++ fi ++fi ++AC_MSG_RESULT($with_systemd) ++if test x$with_systemd = xyes; then ++ if test x$have_systemd = xno; then ++ AC_MSG_ERROR([Systemd support explicitly required, but systemd not found]) ++ fi ++ AC_DEFINE(HAVE_SYSTEMD, 1, [Define if systemd is used for session tracking]) ++fi ++AC_SUBST(SYSTEMD_CFLAGS) ++AC_SUBST(SYSTEMD_LIBS) ++AM_CONDITIONAL(WITH_SYSTEMD, [test "$with_systemd" = "yes"], [Using systemd]) ++ + dnl Check for debugging support + XDT_FEATURE_DEBUG([xfsm_debug_default]) + + +commit f1279eba9452f027a2037be77388767437161d51 +Author: Christian Hesse +Date: Fri Jul 27 14:18:16 2012 +0200 + + ... + +diff --git a/xfce4-session/xfsm-shutdown.c b/xfce4-session/xfsm-shutdown.c +index 1429abd..077cdf3 100644 +--- a/xfce4-session/xfsm-shutdown.c ++++ b/xfce4-session/xfsm-shutdown.c +@@ -96,7 +96,11 @@ struct _XfsmShutdown + { + GObject __parent__; + ++#ifdef HAVE_SYSTEMD ++ SystemdProxy *systemd_proxy; ++#else + XfsmConsolekit *consolekit; ++#endif + XfsmUPower *upower; + + /* kiosk settings */ +@@ -134,7 +138,11 @@ xfsm_shutdown_init (XfsmShutdown *shutdown) + { + XfceKiosk *kiosk; + ++#ifdef HAVE_SYSTEMD ++ shutdown->systemd_proxy = systemd_proxy_new (); ++#else + shutdown->consolekit = xfsm_consolekit_get (); ++#endif + shutdown->upower = xfsm_upower_get (); + shutdown->helper_state = SUDO_NOT_INITIAZED; + shutdown->helper_require_password = FALSE; +@@ -153,7 +161,11 @@ xfsm_shutdown_finalize (GObject *object) + { + XfsmShutdown *shutdown = XFSM_SHUTDOWN (object); + ++#ifdef HAVE_SYSTEMD ++ systemd_proxy_free (shutdown->systemd_proxy); ++#else + g_object_unref (G_OBJECT (shutdown->consolekit)); ++#endif + g_object_unref (G_OBJECT (shutdown->upower)); + + /* close down helper */ +@@ -644,7 +656,11 @@ xfsm_shutdown_try_restart (XfsmShutdown *shutdown, + if (shutdown->helper_state == SUDO_AVAILABLE) + return xfsm_shutdown_sudo_try_action (shutdown, XFSM_SHUTDOWN_RESTART, error); + else ++#ifdef HAVE_SYSTEMD ++ return systemd_proxy_restart (shutdown->systemd_proxy, error); ++#else + return xfsm_consolekit_try_restart (shutdown->consolekit, error); ++#endif + } + + +@@ -661,7 +677,11 @@ xfsm_shutdown_try_shutdown (XfsmShutdown *shutdown, + if (shutdown->helper_state == SUDO_AVAILABLE) + return xfsm_shutdown_sudo_try_action (shutdown, XFSM_SHUTDOWN_SHUTDOWN, error); + else ++#ifdef HAVE_SYSTEMD ++ return systemd_proxy_shutdown (shutdown->systemd_proxy, error); ++#else + return xfsm_consolekit_try_shutdown (shutdown->consolekit, error); ++#endif + } + + +@@ -701,7 +721,11 @@ xfsm_shutdown_can_restart (XfsmShutdown *shutdown, + return TRUE; + } + ++#ifdef HAVE_SYSTEMD ++ if (systemd_proxy_can_restart (shutdown->systemd_proxy, can_restart, error)) ++#else + if (xfsm_consolekit_can_restart (shutdown->consolekit, can_restart, error)) ++#endif + return TRUE; + + if (xfsm_shutdown_sudo_init (shutdown, error)) +@@ -728,7 +752,11 @@ xfsm_shutdown_can_shutdown (XfsmShutdown *shutdown, + return TRUE; + } + ++#ifdef HAVE_SYSTEMD ++ if (systemd_proxy_can_shutdown (shutdown->systemd_proxy, can_shutdown, error)) ++#else + if (xfsm_consolekit_can_shutdown (shutdown->consolekit, can_shutdown, error)) ++#endif + return TRUE; + + if (xfsm_shutdown_sudo_init (shutdown, error)) + +commit 5aea3fb853683246a537a67423cf5b32076b8dfb +Author: Christian Hesse +Date: Fri Jul 27 14:03:27 2012 +0200 + + ... + +diff --git a/xfce4-session/Makefile.am b/xfce4-session/Makefile.am +index c015154..7e3b311 100644 +--- a/xfce4-session/Makefile.am ++++ b/xfce4-session/Makefile.am +@@ -38,8 +38,6 @@ xfce4_session_SOURCES = \ + xfsm-compat-gnome.h \ + xfsm-compat-kde.c \ + xfsm-compat-kde.h \ +- xfsm-consolekit.c \ +- xfsm-consolekit.h \ + xfsm-dns.c \ + xfsm-dns.h \ + xfsm-error.c \ +@@ -65,6 +63,16 @@ xfce4_session_SOURCES = \ + xfsm-upower.c \ + xfsm-upower.h + ++if WITH_SYSTEMD ++xfce4_session_SOURCES += \ ++ xfsm-systemd.c \ ++ xfsm-systemd.h ++else ++xfce4_session_SOURCES += \ ++ xfsm-consolekit.c \ ++ xfsm-consolekit.h ++endif ++ + xfce4_session_CFLAGS = \ + $(LIBSM_CFLAGS) \ + $(LIBX11_CFLAGS) \ +@@ -72,6 +80,7 @@ xfce4_session_CFLAGS = \ + $(DBUS_CFLAGS) \ + $(DBUS_GLIB_CFLAGS) \ + $(LIBWNCK_CFLAGS) \ ++ $(SYSTEMD_CFLAGS) \ + $(XFCONF_CFLAGS) \ + $(GMODULE_CFLAGS) \ + $(PLATFORM_CFLAGS) +@@ -91,6 +100,7 @@ xfce4_session_LDADD = \ + $(DBUS_LIBS) \ + $(DBUS_GLIB_LIBS) \ + $(LIBWNCK_LIBS) \ ++ $(SYSTEMD_LIBS) \ + $(XFCONF_LIBS) \ + -lm + +diff --git a/xfce4-session/xfsm-shutdown.c b/xfce4-session/xfsm-shutdown.c +index d8757a8..1429abd 100644 +--- a/xfce4-session/xfsm-shutdown.c ++++ b/xfce4-session/xfsm-shutdown.c +@@ -66,10 +66,13 @@ + #include + #include + #include +-#include + #include + +- ++#ifdef HAVE_SYSTEMD ++#include ++#else ++#include ++#endif + + static void xfsm_shutdown_finalize (GObject *object); + static void xfsm_shutdown_sudo_free (XfsmShutdown *shutdown); diff --git a/testing/mod_wsgi/PKGBUILD b/testing/mod_wsgi/PKGBUILD new file mode 100644 index 000000000..24c2d0767 --- /dev/null +++ b/testing/mod_wsgi/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 168687 2012-10-14 04:16:02Z eric $ +# Maintainer: Andrea Scarpino +# Contributor: Ryan Coyner + +pkgname=mod_wsgi +pkgver=3.4 +pkgrel=1 +pkgdesc="Python WSGI adapter module for Apache" +arch=('i686' 'x86_64') +url="http://www.modwsgi.org/" +license=('APACHE') +depends=('apache' 'python2') +install=mod_wsgi.install +source=("http://modwsgi.googlecode.com/files/${pkgname}-${pkgver}.tar.gz") +md5sums=('f42d69190ea0c337ef259cbe8d94d985') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr \ + --with-apxs=/usr/sbin/apxs \ + --with-python=/usr/bin/python2 + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/testing/mod_wsgi/mod_wsgi.install b/testing/mod_wsgi/mod_wsgi.install new file mode 100644 index 000000000..d26d61631 --- /dev/null +++ b/testing/mod_wsgi/mod_wsgi.install @@ -0,0 +1,14 @@ +post_install() { +/bin/cat << ENDOFMESSAGE +==> +==> +==> To install mod_wsgi, add the following line in +==> /etc/httpd/conf/httpd.conf file : +==> +==> LoadModule wsgi_module modules/mod_wsgi.so +==> +==> and restart/reload Apache. +==> +==> +ENDOFMESSAGE +} -- cgit v1.2.3-54-g00ecf From 99d0ec7ebad2eda5f3a03098962e3b250e3bef4c Mon Sep 17 00:00:00 2001 From: root Date: Tue, 16 Oct 2012 00:33:10 -0700 Subject: Tue Oct 16 00:33:08 PDT 2012 --- community-staging/blueman/PKGBUILD | 48 + community-staging/blueman/blueman.install | 11 + community-staging/duplicity/PKGBUILD | 36 + community-staging/duplicity/botobackend.patch | 13 + .../duplicity/duplicity-0.6.17-fix-memleak.patch | 29 + community-staging/gcompris/PKGBUILD | 36 + community-staging/guake/PKGBUILD | 41 + .../guake/guake-fix-notification.patch | 42 + community-staging/guake/guake.install | 22 + community-staging/gwibber/PKGBUILD | 31 + community-staging/gwibber/gwibber.install | 12 + community-staging/ibus/PKGBUILD | 40 + community-staging/ibus/ibus.install | 29 + community-staging/mezogis/ChangeLog | 3 + community-staging/mezogis/PKGBUILD | 26 + community-staging/neatx/PKGBUILD | 39 + community-staging/neatx/constants.archlinux.patch | 42 + community-staging/neatx/neatx.install | 18 + community-staging/python-gnupginterface/PKGBUILD | 21 + community-staging/python-numarray/LICENSE | 9 + community-staging/python-numarray/PKGBUILD | 33 + community-staging/python-psycopg1/PKGBUILD | 34 + community-staging/python-pyxattr/PKGBUILD | 33 + community-staging/python2-imaging/PKGBUILD | 50 + community-staging/ubuntuone-client/1339_1338.diff | 57 + community-staging/ubuntuone-client/PKGBUILD | 46 + .../ubuntuone-client/fix-notify-hint.patch | 20 + .../ubuntuone-client/ubuntuone-client.install | 11 + community-staging/uniconvertor/PKGBUILD | 29 + community/conntrack-tools/PKGBUILD | 14 +- community/deja-dup/PKGBUILD | 8 +- community/fox/PKGBUILD | 7 +- community/freedroidrpg/PKGBUILD | 10 +- community/freemat/PKGBUILD | 8 +- community/inputattach/PKGBUILD | 18 +- community/inputattach/inputattach.service | 11 + community/inputattach/inputattachctl | 14 + community/libnetfilter_cthelper/PKGBUILD | 26 + community/nestopia/PKGBUILD | 8 +- community/netcf/PKGBUILD | 20 +- community/pptpd/PKGBUILD | 7 +- community/pptpd/pptpd.service | 10 + community/python2-pysqlite-legacy/PKGBUILD | 25 + community/rss-glx/PKGBUILD | 7 +- community/virtualbox-modules/PKGBUILD | 19 +- community/virtualbox-modules/build.sh | 14 +- .../virtualbox-guest-modules.install | 6 +- .../virtualbox-host-modules.install | 6 +- community/xlockmore/PKGBUILD | 7 +- core/nfs-utils/PKGBUILD | 10 +- core/nfs-utils/rpc-gssd.service | 1 + core/nfs-utils/rpc-idmapd.service | 1 + core/nfs-utils/rpc-statd.service | 1 + core/pam/PKGBUILD | 24 +- core/pam/pam_namespace-build-1.1.6.patch | 11 + core/pam/pam_unix2-glibc216.patch | 20 + core/util-linux/PKGBUILD | 39 +- core/wpa_supplicant/PKGBUILD | 7 +- core/wpa_supplicant/config | 14 + extra/akonadi/PKGBUILD | 11 +- extra/foobillard++/PKGBUILD | 7 +- extra/ftgl/PKGBUILD | 3 +- extra/gnuplot/PKGBUILD | 8 +- extra/miro/PKGBUILD | 6 +- extra/perl-sdl/PKGBUILD | 6 +- extra/qrencode/PKGBUILD | 6 +- extra/xfce4-xkb-plugin/PKGBUILD | 46 +- ...kb-plugin-0.5.4.3-2-fix-memory-corruption.patch | 59 + libre/linux-libre-kmod-alx/PKGBUILD | 36 + .../linux-libre-kmod-alx.install | 33 + libre/linux-libre-lts-kmod-alx/PKGBUILD | 36 + .../linux-libre-lts-kmod-alx.install | 33 + libre/virtualbox-libre/PKGBUILD | 9 +- staging/bzr/PKGBUILD | 33 + staging/gnome-python-desktop/PKGBUILD | 107 ++ ...nome-python-desktop-2.32.0-metacity-build.patch | 42 + staging/miro/PKGBUILD | 49 + staging/miro/ffmpeg.patch | 63 + staging/miro/miro.install | 17 + staging/pygobject/PKGBUILD | 58 + staging/pygobject2/PKGBUILD | 86 + staging/pygobject2/python2-fix-type.patch | 50 + staging/pygobject2/python3-fix-build.patch | 34 + staging/pygobject2/python3-fix-maketrans.patch | 36 + staging/pyqt/PKGBUILD | 10 +- staging/python-pyspi/PKGBUILD | 32 + staging/python-pyspi/pyspi-build.patch | 1693 ++++++++++++++++++++ staging/twisted/PKGBUILD | 37 + staging/twisted/twisted.install | 11 + staging/vde2/PKGBUILD | 50 + staging/vde2/dhcpd.conf.sample | 12 + staging/vde2/iptables.rules.sample | 5 + staging/vde2/vde-config.sample | 35 + staging/vde2/vde-connection.sample | 6 + staging/vde2/vde.conf | 11 + staging/vde2/vde.rc | 113 ++ staging/vde2/vde2.install | 10 + staging/xfce4-session/PKGBUILD | 5 +- testing/e2fsprogs/PKGBUILD | 6 +- testing/iproute2/PKGBUILD | 8 +- testing/iptables/PKGBUILD | 7 +- testing/lvm2/PKGBUILD | 12 +- testing/lvm2/lvm-on-crypt.service | 2 +- testing/lvm2/lvm.service | 2 +- 104 files changed, 3989 insertions(+), 186 deletions(-) create mode 100644 community-staging/blueman/PKGBUILD create mode 100644 community-staging/blueman/blueman.install create mode 100644 community-staging/duplicity/PKGBUILD create mode 100644 community-staging/duplicity/botobackend.patch create mode 100644 community-staging/duplicity/duplicity-0.6.17-fix-memleak.patch create mode 100644 community-staging/gcompris/PKGBUILD create mode 100644 community-staging/guake/PKGBUILD create mode 100644 community-staging/guake/guake-fix-notification.patch create mode 100644 community-staging/guake/guake.install create mode 100644 community-staging/gwibber/PKGBUILD create mode 100644 community-staging/gwibber/gwibber.install create mode 100644 community-staging/ibus/PKGBUILD create mode 100644 community-staging/ibus/ibus.install create mode 100644 community-staging/mezogis/ChangeLog create mode 100644 community-staging/mezogis/PKGBUILD create mode 100644 community-staging/neatx/PKGBUILD create mode 100644 community-staging/neatx/constants.archlinux.patch create mode 100644 community-staging/neatx/neatx.install create mode 100644 community-staging/python-gnupginterface/PKGBUILD create mode 100644 community-staging/python-numarray/LICENSE create mode 100644 community-staging/python-numarray/PKGBUILD create mode 100644 community-staging/python-psycopg1/PKGBUILD create mode 100644 community-staging/python-pyxattr/PKGBUILD create mode 100644 community-staging/python2-imaging/PKGBUILD create mode 100644 community-staging/ubuntuone-client/1339_1338.diff create mode 100644 community-staging/ubuntuone-client/PKGBUILD create mode 100644 community-staging/ubuntuone-client/fix-notify-hint.patch create mode 100644 community-staging/ubuntuone-client/ubuntuone-client.install create mode 100644 community-staging/uniconvertor/PKGBUILD create mode 100644 community/inputattach/inputattach.service create mode 100755 community/inputattach/inputattachctl create mode 100644 community/libnetfilter_cthelper/PKGBUILD create mode 100644 community/pptpd/pptpd.service create mode 100644 community/python2-pysqlite-legacy/PKGBUILD create mode 100644 core/pam/pam_namespace-build-1.1.6.patch create mode 100644 core/pam/pam_unix2-glibc216.patch create mode 100644 extra/xfce4-xkb-plugin/xfce4-xkb-plugin-0.5.4.3-2-fix-memory-corruption.patch create mode 100644 libre/linux-libre-kmod-alx/PKGBUILD create mode 100644 libre/linux-libre-kmod-alx/linux-libre-kmod-alx.install create mode 100644 libre/linux-libre-lts-kmod-alx/PKGBUILD create mode 100644 libre/linux-libre-lts-kmod-alx/linux-libre-lts-kmod-alx.install create mode 100644 staging/bzr/PKGBUILD create mode 100644 staging/gnome-python-desktop/PKGBUILD create mode 100644 staging/gnome-python-desktop/gnome-python-desktop-2.32.0-metacity-build.patch create mode 100644 staging/miro/PKGBUILD create mode 100644 staging/miro/ffmpeg.patch create mode 100644 staging/miro/miro.install create mode 100644 staging/pygobject/PKGBUILD create mode 100644 staging/pygobject2/PKGBUILD create mode 100644 staging/pygobject2/python2-fix-type.patch create mode 100644 staging/pygobject2/python3-fix-build.patch create mode 100644 staging/pygobject2/python3-fix-maketrans.patch create mode 100644 staging/python-pyspi/PKGBUILD create mode 100644 staging/python-pyspi/pyspi-build.patch create mode 100644 staging/twisted/PKGBUILD create mode 100644 staging/twisted/twisted.install create mode 100644 staging/vde2/PKGBUILD create mode 100644 staging/vde2/dhcpd.conf.sample create mode 100644 staging/vde2/iptables.rules.sample create mode 100644 staging/vde2/vde-config.sample create mode 100644 staging/vde2/vde-connection.sample create mode 100644 staging/vde2/vde.conf create mode 100755 staging/vde2/vde.rc create mode 100644 staging/vde2/vde2.install (limited to 'community-staging') diff --git a/community-staging/blueman/PKGBUILD b/community-staging/blueman/PKGBUILD new file mode 100644 index 000000000..72471ce4f --- /dev/null +++ b/community-staging/blueman/PKGBUILD @@ -0,0 +1,48 @@ +# $Id: PKGBUILD 78012 2012-10-16 03:31:53Z allan $ +# Maintainer : Ionut Biru + +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-staging/blueman/blueman.install b/community-staging/blueman/blueman.install new file mode 100644 index 000000000..8bf021487 --- /dev/null +++ b/community-staging/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-staging/duplicity/PKGBUILD b/community-staging/duplicity/PKGBUILD new file mode 100644 index 000000000..9fc900326 --- /dev/null +++ b/community-staging/duplicity/PKGBUILD @@ -0,0 +1,36 @@ +# $Id: PKGBUILD 77932 2012-10-15 23:29:05Z allan $ +# Maintainer: Kaiting Chen +# Contributor: Aaron Schaefer + +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-staging/duplicity/botobackend.patch b/community-staging/duplicity/botobackend.patch new file mode 100644 index 000000000..302e1e2b1 --- /dev/null +++ b/community-staging/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-staging/duplicity/duplicity-0.6.17-fix-memleak.patch b/community-staging/duplicity/duplicity-0.6.17-fix-memleak.patch new file mode 100644 index 000000000..1c4c8daff --- /dev/null +++ b/community-staging/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-staging/gcompris/PKGBUILD b/community-staging/gcompris/PKGBUILD new file mode 100644 index 000000000..0abcbc74f --- /dev/null +++ b/community-staging/gcompris/PKGBUILD @@ -0,0 +1,36 @@ +# $Id: PKGBUILD 77950 2012-10-16 01:06:55Z foutrelis $ +# Maintainer: Evangelos Foutras +# Contributor: Daniel Isenmann + +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-staging/guake/PKGBUILD b/community-staging/guake/PKGBUILD new file mode 100644 index 000000000..dfa432504 --- /dev/null +++ b/community-staging/guake/PKGBUILD @@ -0,0 +1,41 @@ +# $Id: PKGBUILD 77984 2012-10-16 02:10:51Z bgyorgy $ +# Maintainer: Balló György +# Contributor: Angel Velasquez +# Contributor: Wilson Pinto Júnior (N3RD3X) + +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-staging/guake/guake-fix-notification.patch b/community-staging/guake/guake-fix-notification.patch new file mode 100644 index 000000000..847dac10e --- /dev/null +++ b/community-staging/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 %s 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 %s to use it.') % label, filename) +- notification.show() ++ if popup_works : ++ notification.show() ++ else : ++ print _('Guake is now running,\n' ++ 'press %s 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-staging/guake/guake.install b/community-staging/guake/guake.install new file mode 100644 index 000000000..8084333b1 --- /dev/null +++ b/community-staging/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-staging/gwibber/PKGBUILD b/community-staging/gwibber/PKGBUILD new file mode 100644 index 000000000..f664c770e --- /dev/null +++ b/community-staging/gwibber/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 78004 2012-10-16 03:01:00Z bgyorgy $ +# Maintainer: Balló György + +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-staging/gwibber/gwibber.install b/community-staging/gwibber/gwibber.install new file mode 100644 index 000000000..d973d53f7 --- /dev/null +++ b/community-staging/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-staging/ibus/PKGBUILD b/community-staging/ibus/PKGBUILD new file mode 100644 index 000000000..177d0c901 --- /dev/null +++ b/community-staging/ibus/PKGBUILD @@ -0,0 +1,40 @@ +# $Id: PKGBUILD 77920 2012-10-15 21:34:04Z ebelanger $ +# Contributor: Rainy +# Contributor: Lee.MaRS +# Contributor: Daniel J Griffiths +# Maintainer: Brad Fanella + +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-staging/ibus/ibus.install b/community-staging/ibus/ibus.install new file mode 100644 index 000000000..f44e3be1d --- /dev/null +++ b/community-staging/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-staging/mezogis/ChangeLog b/community-staging/mezogis/ChangeLog new file mode 100644 index 000000000..dba4cf7ec --- /dev/null +++ b/community-staging/mezogis/ChangeLog @@ -0,0 +1,3 @@ +2007-06-27 tardo +* Built for x86_64 + diff --git a/community-staging/mezogis/PKGBUILD b/community-staging/mezogis/PKGBUILD new file mode 100644 index 000000000..be14bb8c1 --- /dev/null +++ b/community-staging/mezogis/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 78010 2012-10-16 03:23:52Z allan $ +# Maintainer: Jaroslav Lichtblau +# Contributor: William Rea + +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-staging/neatx/PKGBUILD b/community-staging/neatx/PKGBUILD new file mode 100644 index 000000000..c11e76546 --- /dev/null +++ b/community-staging/neatx/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 78006 2012-10-16 03:10:35Z allan $ +# Maintainer: Sergej Pupykin +# Contributor: Nicolas Doualot + +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-staging/neatx/constants.archlinux.patch b/community-staging/neatx/constants.archlinux.patch new file mode 100644 index 000000000..dff5e2415 --- /dev/null +++ b/community-staging/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-staging/neatx/neatx.install b/community-staging/neatx/neatx.install new file mode 100644 index 000000000..89356878c --- /dev/null +++ b/community-staging/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-staging/python-gnupginterface/PKGBUILD b/community-staging/python-gnupginterface/PKGBUILD new file mode 100644 index 000000000..33446e9b3 --- /dev/null +++ b/community-staging/python-gnupginterface/PKGBUILD @@ -0,0 +1,21 @@ +# Maintainer: Lukas Fleischer +# Contributor: Aaron Schaefer + +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-staging/python-numarray/LICENSE b/community-staging/python-numarray/LICENSE new file mode 100644 index 000000000..30ff57fc4 --- /dev/null +++ b/community-staging/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-staging/python-numarray/PKGBUILD b/community-staging/python-numarray/PKGBUILD new file mode 100644 index 000000000..813d2a700 --- /dev/null +++ b/community-staging/python-numarray/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 77974 2012-10-16 01:49:29Z allan $ +# Maintainer: Lukas Fleischer +# Contributor: Douglas Soares de Andrade + +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-staging/python-psycopg1/PKGBUILD b/community-staging/python-psycopg1/PKGBUILD new file mode 100644 index 000000000..be5d7e8c2 --- /dev/null +++ b/community-staging/python-psycopg1/PKGBUILD @@ -0,0 +1,34 @@ +# $Id: PKGBUILD 77980 2012-10-16 02:05:02Z allan $ +# Contributor: William Rea + +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-staging/python-pyxattr/PKGBUILD b/community-staging/python-pyxattr/PKGBUILD new file mode 100644 index 000000000..b2a40177d --- /dev/null +++ b/community-staging/python-pyxattr/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 77978 2012-10-16 01:55:36Z allan $ +# Maintainer: Lukas Fleischer +# Contributor: Jon Bergli Heier + +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-staging/python2-imaging/PKGBUILD b/community-staging/python2-imaging/PKGBUILD new file mode 100644 index 000000000..2bb3ec9ab --- /dev/null +++ b/community-staging/python2-imaging/PKGBUILD @@ -0,0 +1,50 @@ +# $Id: PKGBUILD 77972 2012-10-16 01:48:17Z kkeen $ +# Maintainer: Kyle Keen +# Contributor: Stéphane Gaudreault +# Contributor: Allan McRae +# Contributor: simo + +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-staging/ubuntuone-client/1339_1338.diff b/community-staging/ubuntuone-client/1339_1338.diff new file mode 100644 index 000000000..cbd966a70 --- /dev/null +++ b/community-staging/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-staging/ubuntuone-client/PKGBUILD b/community-staging/ubuntuone-client/PKGBUILD new file mode 100644 index 000000000..8829e86d9 --- /dev/null +++ b/community-staging/ubuntuone-client/PKGBUILD @@ -0,0 +1,46 @@ +# $Id: PKGBUILD 77990 2012-10-16 02:30:37Z bgyorgy $ +# Maintainer: Balló György + +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-staging/ubuntuone-client/fix-notify-hint.patch b/community-staging/ubuntuone-client/fix-notify-hint.patch new file mode 100644 index 000000000..f32280de9 --- /dev/null +++ b/community-staging/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-staging/ubuntuone-client/ubuntuone-client.install b/community-staging/ubuntuone-client/ubuntuone-client.install new file mode 100644 index 000000000..2c455e952 --- /dev/null +++ b/community-staging/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-staging/uniconvertor/PKGBUILD b/community-staging/uniconvertor/PKGBUILD new file mode 100644 index 000000000..da1175e90 --- /dev/null +++ b/community-staging/uniconvertor/PKGBUILD @@ -0,0 +1,29 @@ +# $Id: PKGBUILD 77994 2012-10-16 02:42:54Z allan $ +# Maintainer: Sergej Pupykin +# Contributor: Roberto Alsina + +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/conntrack-tools/PKGBUILD b/community/conntrack-tools/PKGBUILD index ef1d82740..d82489e0a 100644 --- a/community/conntrack-tools/PKGBUILD +++ b/community/conntrack-tools/PKGBUILD @@ -1,25 +1,29 @@ -# $Id: PKGBUILD 74777 2012-08-04 01:09:31Z seblu $ +# $Id: PKGBUILD 77959 2012-10-16 01:20:20Z seblu $ # Maintainer: Sébastien Luttringer # Contributor: Valere Monseur # Contributor: Alessandro Sagratini # Contributor: Kevin Edmonds pkgname=conntrack-tools -pkgver=1.2.2 +pkgver=1.4.0 pkgrel=1 pkgdesc='Userspace tools to interact with the Netfilter connection tracking system' arch=('i686' 'x86_64') url='http://www.netfilter.org/projects/conntrack-tools' license=('GPL2') -depends=('libnetfilter_conntrack' 'libnetfilter_cttimeout') +depends=('libnetfilter_conntrack' + 'libnetfilter_cttimeout' + 'libnetfilter_cthelper' + 'libnetfilter_queue') backup=('etc/conntrackd.conf' 'etc/conf.d/conntrackd') -install=$pkgname.install +options=('!libtool') source=("http://www.netfilter.org/projects/$pkgname/files/$pkgname-$pkgver.tar.bz2" 'conntrackd.rc' 'conntrackd.conf' 'conntrackd.service' '01-config-file-path.patch') -md5sums=('a8afc813e16265655f83991fc0df35b6' +install=$pkgname.install +md5sums=('ee737c774e01349f75e935228a2d851b' '478fe76da0202fcb5249bf65968d1c26' 'd3e73e81b54e3e8166d357d434680684' 'bd135eaefb47923bb8e8d26f084d3e9d' diff --git a/community/deja-dup/PKGBUILD b/community/deja-dup/PKGBUILD index 76e4f4d65..1f9815897 100644 --- a/community/deja-dup/PKGBUILD +++ b/community/deja-dup/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 69507 2012-04-17 14:32:37Z bgyorgy $ +# $Id: PKGBUILD 77901 2012-10-15 17:33:17Z bgyorgy $ # Maintainer: Balló György pkgname=deja-dup -pkgver=22.1 +pkgver=24.0 pkgrel=1 pkgdesc="Simple backup tool, that hides the complexity of backing up the Right Way and uses duplicity as the backend" arch=('i686' 'x86_64') url="https://launchpad.net/deja-dup" license=('GPL') -depends=('duplicity' 'gtk3' 'libgnome-keyring' 'libnotify' 'dconf' 'hicolor-icon-theme' 'xdg-utils') +depends=('duplicity' 'libgnome-keyring' 'libpeas' 'libnotify' 'python2-gobject2' 'dconf' 'xdg-utils') makedepends=('vala' 'intltool' 'itstool' 'nautilus') optdepends=('nautilus: backup extension') options=('!libtool') install=$pkgname.install source=(http://launchpad.net/$pkgname/${pkgver%.*}/$pkgver/+download/$pkgname-$pkgver.tar.xz) -md5sums=('cbf7af6f0392ab9ef355a3aeb74c8a79') +md5sums=('335131d1f3c85615339fa8b212db50ae') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/fox/PKGBUILD b/community/fox/PKGBUILD index 5225f4927..cd8506fd0 100644 --- a/community/fox/PKGBUILD +++ b/community/fox/PKGBUILD @@ -1,15 +1,16 @@ -# $Id: PKGBUILD 77632 2012-10-13 11:42:15Z allan $ +# $Id: PKGBUILD 77870 2012-10-15 10:22:54Z spupykin $ # Maintainer: Sergej Pupykin # Contributor: Ben pkgname=fox pkgver=1.6.46 -pkgrel=2 +pkgrel=3 pkgdesc="Free Objects for X: GUI Toolkit for C++" arch=('i686' 'x86_64') url="http://www.fox-toolkit.org/" license=('LGPL' 'custom') -depends=('bzip2' 'libxcursor' 'libxft' 'libxrandr' 'mesa' 'libxi' 'libpng' 'libtiff' 'glu') +depends=('bzip2' 'libxcursor' 'libxft' 'libxrandr' 'libxi' 'libpng' 'libtiff' 'glu') +makedepends=('mesa') optdepends=('perl') options=('!libtool') source=(http://ftp.fox-toolkit.org/pub/fox-$pkgver.tar.gz) diff --git a/community/freedroidrpg/PKGBUILD b/community/freedroidrpg/PKGBUILD index b3c2fb45d..38c9ce56d 100644 --- a/community/freedroidrpg/PKGBUILD +++ b/community/freedroidrpg/PKGBUILD @@ -1,15 +1,13 @@ -# $Id: PKGBUILD 75817 2012-09-01 20:39:32Z heftig $ +# $Id: PKGBUILD 77877 2012-10-15 10:55:20Z spupykin $ # Maintainer: Sergej Pupykin # Contributor: nut543 -#pkgbase=freedroidrpg -#pkgname=('freedroidrpg' 'freedroidrpg-data') pkgname='freedroidrpg' pkgver=0.15.1 -pkgrel=2 +pkgrel=3 arch=('i686' 'x86_64') -# depends=('sdl_mixer' 'sdl_image' 'libogg' 'libvorbis' 'libgl' 'freedroidrpg-data') -depends=('sdl_mixer' 'sdl_image' 'sdl_gfx' 'libogg' 'libvorbis' 'libgl' 'mesa') +depends=('sdl_mixer' 'sdl_image' 'sdl_gfx' 'libogg' 'libvorbis' 'libgl' 'glu') +makedepends=('mesa') optdepends=('python2' 'espeak') pkgdesc="a mature science fiction role playing game set in the future" url="http://freedroid.sourceforge.net" diff --git a/community/freemat/PKGBUILD b/community/freemat/PKGBUILD index 7fa884dca..02d57a273 100644 --- a/community/freemat/PKGBUILD +++ b/community/freemat/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 77633 2012-10-13 11:42:24Z allan $ +# $Id: PKGBUILD 77872 2012-10-15 10:33:45Z spupykin $ # Maintainer: Sergej Pupykin # Contributor: William Rea pkgname=freemat pkgver=4.1 -pkgrel=5 +pkgrel=6 pkgdesc="A free environment for rapid engineering, scientific prototyping and data processing" arch=('i686' 'x86_64') url="http://freemat.sourceforge.net" license=('GPL') -depends=('qt' 'ffcall' 'fftw' 'mesa' 'portaudio' 'libffi' 'mesa' 'glu') -makedepends=('arpack' 'lapack' 'umfpack' 'blas' 'libmatio' 'cmake' 'python2') +depends=('qt' 'ffcall' 'fftw' 'portaudio' 'libffi' 'glu') +makedepends=('arpack' 'lapack' 'umfpack' 'blas' 'libmatio' 'cmake' 'python2' 'mesa') install=freemat.install source=(http://downloads.sourceforge.net/project/freemat/FreeMat4/FreeMat-$pkgver-Source.tar.gz build-fix.patch) diff --git a/community/inputattach/PKGBUILD b/community/inputattach/PKGBUILD index 53879697c..ea6fca2b6 100644 --- a/community/inputattach/PKGBUILD +++ b/community/inputattach/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 65570 2012-02-21 09:01:06Z spupykin $ +# $Id: PKGBUILD 77899 2012-10-15 16:07:24Z spupykin $ # Maintainer: Sergej Pupykin # Contributor: Mark Smith pkgname=inputattach pkgver=1.24 -pkgrel=5 +pkgrel=6 pkgdesc="Attach serial mice, keyboards and other input devices to the kernel input system" arch=('i686' 'x86_64') url="http://linuxconsole.sourceforge.net/" @@ -19,26 +19,38 @@ source=('http://arch.p5n.pp.ru/~sergej/dl/2011/inputattach.c' 'http://arch.p5n.pp.ru/~sergej/dl/2011/serio-ids.h' 'inputattach.conf.d' 'inputattach.rc.d' + 'inputattach.service' + 'inputattachctl' '0001-Add-w8001-flag.patch' '0002-Allow-for-custom-baud-rates.patch') md5sums=('eb595a766ca363edb3b14c25404596ce' '93d34d96cd3ad19ea1aeca7f68a66b4a' '7ca903e54829764c8241233af5069216' 'aa2e404fc113abdd2ab14e2a6352c331' + 'c19b9ed38b243191cf5378b87a42a4cc' + '84c6463660c10bd34c0390102da087d5' 'f1b3ddae308351357f557cbd5c6cda81' '8f76908449cae24a95adbf0bc0a17721') build() { cd "$srcdir" + + mkdir src + cp inputattach.c serio-ids.h src/ + cd src + # Add support for serial wacom tablets patch -Np1 -i "$srcdir/0001-Add-w8001-flag.patch" patch -Np1 -i "$srcdir/0002-Allow-for-custom-baud-rates.patch" + cc $CFLAGS inputattach.c -o inputattach } package() { - cd "$srcdir" + cd "$srcdir/src" install -Dm755 inputattach "$pkgdir/usr/sbin/inputattach" install -Dm644 $srcdir/inputattach.conf.d "$pkgdir/etc/conf.d/inputattach" install -Dm755 $srcdir/inputattach.rc.d "$pkgdir/etc/rc.d/inputattach" + install -Dm755 $srcdir/inputattachctl $pkgdir/usr/bin/inputattachctl + install -Dm644 $srcdir/inputattach.service $pkgdir/usr/lib/systemd/system/inputattach.service } diff --git a/community/inputattach/inputattach.service b/community/inputattach/inputattach.service new file mode 100644 index 000000000..2ec902c09 --- /dev/null +++ b/community/inputattach/inputattach.service @@ -0,0 +1,11 @@ +[Unit] +Description=Attach serial input devices to kernel input subsystem +After=syslog.target + +[Service] +Type=forking +ExecStart=/usr/bin/inputattachctl start +ExecStop=/usr/bin/inputattachctl stop + +[Install] +WantedBy=multi-user.target diff --git a/community/inputattach/inputattachctl b/community/inputattach/inputattachctl new file mode 100755 index 000000000..291c531ae --- /dev/null +++ b/community/inputattach/inputattachctl @@ -0,0 +1,14 @@ +#!/bin/bash + +. /etc/conf.d/inputattach + +case "$1" in + start) + for i in "${IAPARAMS[@]}"; do + /usr/sbin/inputattach --daemon $i || exit 1 + done + ;; + stop) + killall inputattach || exit 1 + ;; +esac diff --git a/community/libnetfilter_cthelper/PKGBUILD b/community/libnetfilter_cthelper/PKGBUILD new file mode 100644 index 000000000..0cca5f479 --- /dev/null +++ b/community/libnetfilter_cthelper/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 77960 2012-10-16 01:20:23Z seblu $ +# Maintainer: Sébastien Luttringer + +pkgname=libnetfilter_cthelper +pkgver=1.0.0 +pkgrel=1 +pkgdesc='Library for the connection tracking helper infrastructure' +arch=('i686' 'x86_64') +url='http://www.netfilter.org/projects/libnetfilter_cthelper/' +license=('GPL2') +depends=('libmnl') +options=('!libtool') +source=("http://www.netfilter.org/projects/$pkgname/files/$pkgname-$pkgver.tar.bz2") +md5sums=('b2efab1a3a198a5add448960ba011acd') + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/community/nestopia/PKGBUILD b/community/nestopia/PKGBUILD index f9238d3f5..d03528a26 100644 --- a/community/nestopia/PKGBUILD +++ b/community/nestopia/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 77652 2012-10-13 11:44:15Z allan $ +# $Id: PKGBUILD 77858 2012-10-15 10:08:57Z spupykin $ # Maintainer: Sergej Pupykin # Contributor: Tiago Pierezan Camargo # Contributor: robb_force pkgname=nestopia pkgver=1.42 -pkgrel=3 +pkgrel=4 pkgdesc='An NES emulator featuring cycle exact emulation, a ridiculous number of mappers, and lots of custom sound chips.' url='http://0ldsk00l.ca/nestopia.html' license=('GPL') arch=('i686' 'x86_64') -depends=('sdl' 'alsa-lib' 'gtk3' 'mesa' 'glu') -makedepends=('unzip') +depends=('sdl' 'alsa-lib' 'gtk3' 'glu') +makedepends=('unzip' 'mesa') source=("$pkgname-$pkgver.tar.gz::https://github.com/rdanbrook/nestopia/tarball/$pkgver" "build-fix.patch") md5sums=('ce7ffba59f19c764f08546e015777172' diff --git a/community/netcf/PKGBUILD b/community/netcf/PKGBUILD index 9c26ba270..9e1d02240 100644 --- a/community/netcf/PKGBUILD +++ b/community/netcf/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 70813 2012-05-16 21:38:44Z spupykin $ +# $Id: PKGBUILD 77847 2012-10-15 09:41:41Z spupykin $ # Maintainer: Sergej Pupykin # Contributor: Aurélien Wailly pkgname=netcf -pkgver=0.1.9 -pkgrel=2 +pkgver=0.2.2 +pkgrel=1 pkgdesc="A library for configuring network interfaces" arch=('i686' 'x86_64') license=('LGPL') @@ -12,25 +12,23 @@ url="https://fedorahosted.org/netcf/" depends=('augeas>=0.7.4' 'netcfg' 'libxslt' 'libxml2' 'libnl') makedepends=('gcc') options=(!libtool) -source=("https://fedorahosted.org/released/netcf/$pkgname-$pkgver.tar.gz" - "netcf-libnl3.patch::https://bugs.archlinux.org/task/29908?getfile=8775") -md5sums=('4d62010a79d56c12438969da9035b63c' - 'a509be4b819f669fac21e1eaa621e3e0') +source=("https://fedorahosted.org/released/netcf/$pkgname-$pkgver.tar.gz") +md5sums=('fbcd47101797b8fcd9519e22002cd200') build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i ${srcdir}/netcf-libnl3.patch aclocal automake --add-missing || true autoreconf -# CFLAGS="`pkg-config --cflags libnl-3.0` -DRTNL_LINK_NOT_FOUND=-1" - CFLAGS="-DNETCF_TRANSACTION=\"true\"" ./configure --prefix=/usr \ + ./configure --prefix=/usr \ --disable-static \ - --with-init-script=none + --with-init-script=none \ + --with-driver=redhat make } package() { cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR=${pkgdir} install + rm -rf $pkgdir/etc/rc.d/init.d } diff --git a/community/pptpd/PKGBUILD b/community/pptpd/PKGBUILD index c3e97bec9..d7e98e032 100644 --- a/community/pptpd/PKGBUILD +++ b/community/pptpd/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 74350 2012-07-25 10:18:29Z spupykin $ +# $Id: PKGBUILD 77852 2012-10-15 09:47:33Z spupykin $ # Maintainer: Sergej Pupykin pkgname=pptpd pkgver=1.3.4 -pkgrel=10 +pkgrel=11 pkgdesc="Poptop server" arch=(i686 x86_64) url="http://poptop.sourceforge.net/" @@ -12,9 +12,11 @@ depends=(ppp glibc) backup=(etc/pptpd.conf) source=(http://downloads.sourceforge.net/sourceforge/poptop/pptpd-$pkgver.tar.gz pptpd + pptpd.service unrecognized-opt.patch) md5sums=('b38df9c431041922c997c1148bedf591' 'e09f81beb5d59a0fdfba94e3a60d992b' + '144c17c7d5c1b95cfb3450eb73aa2e50' 'cfa02c86d0413eb94fac15599986f54c') build() { @@ -38,6 +40,7 @@ package() { mkdir -p $pkgdir/etc/ echo -e "# Read man pptpd.conf, see samples in /usr/share/doc/pptpd\n# and write your pptpd configuration here" >$pkgdir/etc/pptpd.conf install -Dm0755 ../pptpd $pkgdir/etc/rc.d/pptpd + install -Dm0644 $srcdir/$pkgname.service $pkgdir/usr/lib/systemd/system/$pkgname.service mkdir -p $pkgdir/usr/share/doc/pptpd cp -a samples $pkgdir/usr/share/doc/pptpd/ } diff --git a/community/pptpd/pptpd.service b/community/pptpd/pptpd.service new file mode 100644 index 000000000..739508b60 --- /dev/null +++ b/community/pptpd/pptpd.service @@ -0,0 +1,10 @@ +[Unit] +Description=PPTP Server +After=network.target + +[Service] +ExecStart=/usr/sbin/pptpd -c /etc/pptpd.conf -p /var/run/pptpd.pid -f +StandardOutput=null + +[Install] +WantedBy=multi-user.target diff --git a/community/python2-pysqlite-legacy/PKGBUILD b/community/python2-pysqlite-legacy/PKGBUILD new file mode 100644 index 000000000..6fdb5bb66 --- /dev/null +++ b/community/python2-pysqlite-legacy/PKGBUILD @@ -0,0 +1,25 @@ +# $Id: PKGBUILD 77909 2012-10-15 19:54:27Z rvanharen $ +# Maintainer: Ronald van Haren +# Contributor : Aaron Griffin + +pkgname=python2-pysqlite-legacy +pkgver=1.0.1 +pkgrel=1 +pkgdesc="A Python DB-API 2.0 interface for the legacy SQLite 2" +arch=('i686' 'x86_64') +url="http://initd.org/tracker/pysqlite" +replaces=('python-pysqlite-legacy') +license=('custom') +depends=('python2' 'sqlite2') +source=(http://www.mirrorservice.org/sites/www.ibiblio.org/gentoo/distfiles/pysqlite-$pkgver.tar.gz) +md5sums=('4797b5ea7a3d96b87333e6b5af7b9979') + +build() +{ + cd ${srcdir}/pysqlite + python2 setup.py install --root=${pkgdir} -O1 + + # install custom license + install -Dm644 ${srcdir}/pysqlite/LICENSE \ + ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE +} diff --git a/community/rss-glx/PKGBUILD b/community/rss-glx/PKGBUILD index 8822cdff5..3886c1660 100644 --- a/community/rss-glx/PKGBUILD +++ b/community/rss-glx/PKGBUILD @@ -1,16 +1,17 @@ -# $Id: PKGBUILD 77659 2012-10-13 11:44:58Z allan $ +# $Id: PKGBUILD 77864 2012-10-15 10:12:56Z spupykin $ # Maintainer : Ionut Biru # Contributor: Corrado 'bardo' Primier # Contributor: Tate "Tatey" Johnson pkgname=rss-glx pkgver=0.9.1 -pkgrel=10 +pkgrel=11 pkgdesc="The Really Slick Screensavers port to GLX" arch=('i686' 'x86_64') url="http://rss-glx.sourceforge.net/" license=('GPL') -depends=('desktop-file-utils' 'freealut' 'glew' 'imagemagick' 'glu' 'mesa') +depends=('desktop-file-utils' 'freealut' 'glew' 'imagemagick' 'glu') +makedepends=('mesa') optdepends=('xscreensaver: xscreensaver integration') install=rss-glx.install options=('!libtool') diff --git a/community/virtualbox-modules/PKGBUILD b/community/virtualbox-modules/PKGBUILD index eff2034da..28b75bd71 100644 --- a/community/virtualbox-modules/PKGBUILD +++ b/community/virtualbox-modules/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 77194 2012-10-06 11:13:30Z tpowa $ +# $Id: PKGBUILD 77842 2012-10-15 05:19:18Z tpowa $ # Maintainer: Ionut Biru # Maintainer: Sébastien Luttringer pkgbase=virtualbox-modules pkgname=('virtualbox-host-modules' 'virtualbox-guest-modules') pkgver=4.2.0 -pkgrel=5 +pkgrel=6 arch=('i686' 'x86_64') url='http://virtualbox.org' license=('GPL') @@ -16,7 +16,8 @@ makedepends=('linux-headers' build() { # current kernel version - _kernver=$(expac -Q '%v' linux-headers)-ARCH + #_kernver=$(expac -Q '%v' linux-headers)-ARCH + _kernver=3.6.0-1-ARCH # dkms need modification to be run as user cp -r /var/lib/dkms . echo "dkms_tree='$srcdir/dkms'" > dkms.conf @@ -30,12 +31,13 @@ build() { package_virtualbox-host-modules(){ pkgdesc='Host kernel modules for VirtualBox' - depends=('linux>=3.5' 'linux<3.6') + depends=('linux>=3.6' 'linux<3.7') replaces=('virtualbox-modules') conflicts=('virtualbox-modules') install=virtualbox-host-modules.install - _kernver=$(expac -Q '%v' linux-headers)-ARCH + #_kernver=$(expac -Q '%v' linux-headers)-ARCH + _kernver=3.6.0-1-ARCH _extraver=extramodules-${_kernver%.*}-ARCH install -dm755 "$pkgdir/usr/lib/modules/$_extraver" @@ -48,19 +50,20 @@ package_virtualbox-host-modules(){ package_virtualbox-guest-modules(){ pkgdesc='Guest kernel modules for VirtualBox' license=('GPL') - depends=('linux>=3.5' 'linux<3.6') + depends=('linux>=3.6' 'linux<3.7') replaces=('virtualbox-archlinux-modules') conflicts=('virtualbox-archlinux-modules') install=virtualbox-guest-modules.install - _kernver=$(expac -Q '%v' linux-headers)-ARCH + #_kernver=$(expac -Q '%v' linux-headers)-ARCH + _kernver=3.6.0-1-ARCH _extraver=extramodules-${_kernver%.*}-ARCH install -dm755 "$pkgdir/usr/lib/modules/$_extraver" cd "dkms/vboxguest/$pkgver/$_kernver/$CARCH/module" install -m644 * "$pkgdir/usr/lib/modules/$_extraver" find "$pkgdir" -name '*.ko' -exec gzip -9 {} + - sed -ie "s/EXTRAMODULES='.*'/EXTRAMODULES='$_extraver'/" "$startdir/virtualbox-host-modules.install" + sed -ie "s/EXTRAMODULES='.*'/EXTRAMODULES='$_extraver'/" "$startdir/virtualbox-guest-modules.install" } # vim:set ts=2 sw=2 et: diff --git a/community/virtualbox-modules/build.sh b/community/virtualbox-modules/build.sh index 9b0e6fca8..828448cab 100755 --- a/community/virtualbox-modules/build.sh +++ b/community/virtualbox-modules/build.sh @@ -1,8 +1,8 @@ #!/bin/bash -if (( $# != 2 )); then - echo "usage: $0 extra multilib" - echo " $0 testing multilib-testing" +if (( $# != 1 )); then + echo "usage: $0 extra" + echo " $0 testing" exit 1 fi @@ -11,10 +11,10 @@ linux32 makechrootpkg -I ../../virtualbox/trunk/virtualbox-host-source-*-i686.pk linux32 makechrootpkg -I ../../virtualbox/trunk/virtualbox-guest-source-*-i686.pkg.tar.xz -r /var/lib/archbuild/$1-i686 linux32 makechrootpkg -r /var/lib/archbuild/$1-i686 -$2-build -makechrootpkg -I ../../virtualbox/trunk/virtualbox-host-source-*-x86_64.pkg.tar.xz -r /var/lib/archbuild/$2-x86_64 -makechrootpkg -I ../../virtualbox/trunk/virtualbox-guest-source-*-x86_64.pkg.tar.xz -r /var/lib/archbuild/$2-x86_64 -makechrootpkg -r /var/lib/archbuild/$2-x86_64 +$1-x86_64-build +makechrootpkg -I ../../virtualbox/trunk/virtualbox-host-source-*-x86_64.pkg.tar.xz -r /var/lib/archbuild/$1-x86_64 +makechrootpkg -I ../../virtualbox/trunk/virtualbox-guest-source-*-x86_64.pkg.tar.xz -r /var/lib/archbuild/$1-x86_64 +makechrootpkg -r /var/lib/archbuild/$1-x86_64 # vim:set ts=2 sw=2 ft=sh et: diff --git a/community/virtualbox-modules/virtualbox-guest-modules.install b/community/virtualbox-modules/virtualbox-guest-modules.install index 15d536b7f..e5d1038af 100644 --- a/community/virtualbox-modules/virtualbox-guest-modules.install +++ b/community/virtualbox-modules/virtualbox-guest-modules.install @@ -2,16 +2,16 @@ post_install() { cat << EOF ===> You may want to load vboxguest, vboxsf and vboxvideo EOF - EXTRAMODULES='extramodules-3.5-ARCH' + EXTRAMODULES='extramodules-3.6-ARCH' depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) } post_upgrade() { - EXTRAMODULES='extramodules-3.5-ARCH' + EXTRAMODULES='extramodules-3.6-ARCH' depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) } post_remove() { - EXTRAMODULES='extramodules-3.5-ARCH' + EXTRAMODULES='extramodules-3.6-ARCH' depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) } diff --git a/community/virtualbox-modules/virtualbox-host-modules.install b/community/virtualbox-modules/virtualbox-host-modules.install index 9b7b8c444..3f2ed4a10 100644 --- a/community/virtualbox-modules/virtualbox-host-modules.install +++ b/community/virtualbox-modules/virtualbox-host-modules.install @@ -3,17 +3,17 @@ cat << EOF ===> You must load vboxdrv module before starting VirtualBox: ===> # modprobe vboxdrv EOF - EXTRAMODULES='extramodules-3.5-ARCH' + EXTRAMODULES='extramodules-3.6-ARCH' depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) } post_upgrade() { - EXTRAMODULES='extramodules-3.5-ARCH' + EXTRAMODULES='extramodules-3.6-ARCH' depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) echo 'In order to use the new version, reload all virtualbox modules manually.' } post_remove() { - EXTRAMODULES='extramodules-3.5-ARCH' + EXTRAMODULES='extramodules-3.6-ARCH' depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) } diff --git a/community/xlockmore/PKGBUILD b/community/xlockmore/PKGBUILD index afcbb9752..a0e8e4380 100644 --- a/community/xlockmore/PKGBUILD +++ b/community/xlockmore/PKGBUILD @@ -1,14 +1,15 @@ -# $Id: PKGBUILD 77669 2012-10-13 11:46:09Z allan $ +# $Id: PKGBUILD 77869 2012-10-15 10:22:11Z spupykin $ # Maintainer: Sergej Pupykin # Maintainer: dorphell pkgname=xlockmore pkgver=5.40 -pkgrel=2 +pkgrel=3 pkgdesc="screen saver / locker for the X Window System" arch=(i686 x86_64) license=('BSD') -depends=(freetype2 gtk2 libxpm lesstif pam mesa libxmu glu) +depends=(freetype2 gtk2 libxpm lesstif pam libxmu glu) +makedepends=(mesa) url="http://www.tux.org/~bagleyd/xlockmore.html" options=('!makeflags') source=(http://www.tux.org/~bagleyd/xlock/xlockmore-$pkgver/xlockmore-$pkgver.tar.bz2 diff --git a/core/nfs-utils/PKGBUILD b/core/nfs-utils/PKGBUILD index a6ac7ff9d..caf4229c1 100644 --- a/core/nfs-utils/PKGBUILD +++ b/core/nfs-utils/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 160027 2012-05-28 10:26:22Z tpowa $ +# $Id: PKGBUILD 168765 2012-10-15 19:16:00Z thomas $ # Maintainer: Tobias Powalowski # Contributor: John Proctor # Contributor: dibblethewrecker @@ -7,7 +7,7 @@ pkgname=nfs-utils pkgver=1.2.6 -pkgrel=1 +pkgrel=2 pkgdesc="Support programs for Network File Systems" arch=('i686' 'x86_64') url='http://nfs.sourceforge.net' @@ -48,11 +48,11 @@ md5sums=('8be543ca270c2234ff18f8c8d35e0d37' 'f5e7bba09a46c5c5d7007cac6eff9df5' '7674106eaaa4c149bccd4f05fe3604e9' '4f4827dfc93008dfadd0a530ad0872b2' - '38855936dc55a5afe37d84edc0f11066' + '3694619813cebc5b4502b58f1992b442' '965311784d49a7d126d512cadbe91deb' 'e05705d9ccccaeaeb1ecaee20adc05bc' - 'd7df7bc311fd95c5b80017dd1741570d' - '2e72ee082cba5d3ec6f51d2a105664da' + '359d84a85f8781dc3f45f4cf1dbe4b53' + 'c82ef7b238efe62af3d5e263e1ba1c5c' '5d33d2e754fd37280365b287603bac90' '1cd65909fa0983047f3f06a3ab352401' '02a34835aa077146a90eb7d191e612d0' diff --git a/core/nfs-utils/rpc-gssd.service b/core/nfs-utils/rpc-gssd.service index 446864d18..da4c71307 100644 --- a/core/nfs-utils/rpc-gssd.service +++ b/core/nfs-utils/rpc-gssd.service @@ -2,6 +2,7 @@ Description=RPC GSS-API client-side daemon After=rpcbind.service var-lib-nfs-rpc_pipefs.mount Requires=rpcbind.service var-lib-nfs-rpc_pipefs.mount +Before=remote-fs-pre.target [Service] Type=forking diff --git a/core/nfs-utils/rpc-idmapd.service b/core/nfs-utils/rpc-idmapd.service index 72cd26a93..7785c1bd5 100644 --- a/core/nfs-utils/rpc-idmapd.service +++ b/core/nfs-utils/rpc-idmapd.service @@ -2,6 +2,7 @@ Description=NFSv4 ID-name mapping daemon After=var-lib-nfs-rpc_pipefs.mount nfsd.service Requires=var-lib-nfs-rpc_pipefs.mount +Before=remote-fs-pre.target [Service] Type=forking diff --git a/core/nfs-utils/rpc-statd.service b/core/nfs-utils/rpc-statd.service index 983b4044f..97d397faf 100644 --- a/core/nfs-utils/rpc-statd.service +++ b/core/nfs-utils/rpc-statd.service @@ -2,6 +2,7 @@ Description=NFSv2/3 Network Status Monitor Daemon After=rpcbind.service Requires=rpcbind.service +Before=remote-fs-pre.service [Service] Type=forking diff --git a/core/pam/PKGBUILD b/core/pam/PKGBUILD index 42c6663c9..1e7c611b7 100644 --- a/core/pam/PKGBUILD +++ b/core/pam/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 161792 2012-06-14 10:14:53Z tpowa $ +# $Id: PKGBUILD 168736 2012-10-15 05:13:56Z tpowa $ # Maintainer: Tobias Powalowski # Contributor: judd pkgname=pam -pkgver=1.1.5 -pkgrel=4 +pkgver=1.1.6 +pkgrel=1 pkgdesc="PAM (Pluggable Authentication Modules) library" arch=('i686' 'x86_64') license=('GPL2') @@ -14,28 +14,34 @@ makedepends=('flex' 'w3m' 'docbook-xml>=4.4' 'docbook-xsl') backup=(etc/security/{access.conf,group.conf,limits.conf,namespace.conf,namespace.init,pam_env.conf,time.conf} etc/default/passwd etc/environment) source=(https://fedorahosted.org/releases/l/i/linux-pam/Linux-PAM-$pkgver.tar.bz2 #http://www.kernel.org/pub/linux/libs/pam/library/Linux-PAM-$pkgver.tar.bz2 - ftp://ftp.suse.com/pub/people/kukuk/pam/pam_unix2/pam_unix2-2.6.tar.bz2) + ftp://ftp.archlinux.org/other/pam_unix2/pam_unix2-2.9.1.tar.bz2 + pam_unix2-glibc216.patch + pam_namespace-build-1.1.6.patch) options=('!libtool' '!emptydirs') -md5sums=('927ee5585bdec5256c75117e9348aa47' - 'e2788389a6c59224110a45fcff30e02b') +md5sums=('7b73e58b7ce79ffa321d408de06db2c4' + 'da6a46e5f8cd3eaa7cbc4fc3a7e2b555' + 'dac109f68e04a4df37575fda6001ea17' + '440a510164ba5eb69bf41e129746ff44') build() { cd $srcdir/Linux-PAM-$pkgver ./configure --libdir=/usr/lib + patch -Np0 -i ../pam_namespace-build-1.1.6.patch make - cd $srcdir/pam_unix2-2.6 + cd $srcdir/pam_unix2-2.9.1 + patch -Np1 -i ../pam_unix2-glibc216.patch ./configure --libdir=/usr/lib make } package() { cd $srcdir/Linux-PAM-$pkgver - make DESTDIR=$pkgdir install + make DESTDIR=$pkgdir SCONFIGDIR=/etc/security install # build pam_unix2 module # source ftp://ftp.suse.com/pub/people/kukuk/pam/pam_unix2 - cd $srcdir/pam_unix2-2.6 + cd $srcdir/pam_unix2-2.9.1 make DESTDIR=$pkgdir install # add the realtime permissions for audio users diff --git a/core/pam/pam_namespace-build-1.1.6.patch b/core/pam/pam_namespace-build-1.1.6.patch new file mode 100644 index 000000000..aeabc234c --- /dev/null +++ b/core/pam/pam_namespace-build-1.1.6.patch @@ -0,0 +1,11 @@ +--- modules/pam_namespace/Makefile~ 2012-10-12 10:59:13.557550706 +0200 ++++ modules/pam_namespace/Makefile 2012-10-12 10:59:13.564217270 +0200 +@@ -869,7 +869,7 @@ + + + install-data-local: +- mkdir -p $(namespaceddir) ++ mkdir -p $(DESTDIR)$(namespaceddir) + README: pam_namespace.8.xml namespace.conf.5.xml + -include $(top_srcdir)/Make.xml.rules + diff --git a/core/pam/pam_unix2-glibc216.patch b/core/pam/pam_unix2-glibc216.patch new file mode 100644 index 000000000..faa6a235f --- /dev/null +++ b/core/pam/pam_unix2-glibc216.patch @@ -0,0 +1,20 @@ +Index: pam_unix2-2.9.1/src/read-files.c +=================================================================== +--- pam_unix2-2.9.1.orig/src/read-files.c ++++ pam_unix2-2.9.1/src/read-files.c +@@ -30,8 +30,14 @@ + #include + #include + #include +-#include ++#include + #define __libc_lock_t pthread_mutex_t ++#define __libc_lock_define_initialized(CLASS,NAME) \ ++ CLASS __libc_lock_t NAME = PTHREAD_MUTEX_INITIALIZER; ++#define __libc_lock_lock(NAME) \ ++ pthread_mutex_lock, (&(NAME)) ++#define __libc_lock_unlock(NAME) \ ++ pthread_mutex_unlock, (&(NAME)) + + #include "read-files.h" + diff --git a/core/util-linux/PKGBUILD b/core/util-linux/PKGBUILD index deba92866..4280c06fa 100644 --- a/core/util-linux/PKGBUILD +++ b/core/util-linux/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 168016 2012-10-05 10:13:37Z tomegun $ +# $Id: PKGBUILD 168750 2012-10-15 14:14:40Z tomegun $ # Maintainer: Tom Gundersen # Contributor: judd pkgname=util-linux -pkgver=2.22 -pkgrel=7 +pkgver=2.22.1 +pkgrel=1 pkgdesc="Miscellaneous system utilities for Linux" url="http://www.kernel.org/pub/linux/utils/util-linux/" arch=('i686' 'x86_64') @@ -16,12 +16,10 @@ provides=("util-linux-ng=${pkgver}" 'eject') license=('GPL2') options=('!libtool') source=(ftp://ftp.kernel.org/pub/linux/utils/${pkgname}/v2.22/${pkgname}-${pkgver}.tar.xz - su.1 uuidd.tmpfiles pam-login pam-common - pam-su - hwclock-systz.patch) + pam-su) backup=(etc/pam.d/chfn etc/pam.d/chsh etc/pam.d/login @@ -32,13 +30,6 @@ install=util-linux.install build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -p1 -i ../hwclock-systz.patch - - # unbreak --localstatedir - # TODO(dreisner): find out what sami had in mind with these heuristics - sed -i '71,75d' configure.ac - ./autogen.sh - ./configure --prefix=/usr \ --libdir=/usr/lib \ --localstatedir=/run \ @@ -52,15 +43,16 @@ build() { --enable-socket-activation # --enable-reset \ # part of ncurses -# --enable-last \ # not part of any package -# --enable-line \ # not compat +# --enable-line \ # not part of any package +# --enable-last \ # not compat make } -check() { - make -C "$pkgname-$pkgver" check -} +#check() { +# fails for some reason in chroot, works outside +# make -C "$pkgname-$pkgver" check +#} package() { cd "${srcdir}/${pkgname}-${pkgver}" @@ -79,19 +71,12 @@ package() { install -m644 "$srcdir/pam-su" "${pkgdir}/etc/pam.d/su" install -m644 "$srcdir/pam-su" "${pkgdir}/etc/pam.d/su-l" - # broken buildsys doesn't include su(1), which means it - # isn't even in the dist tarball - # TODO(dreisner): patched upstream - install -m644 "$srcdir/su.1" "$pkgdir/usr/share/man/man1/su.1" - # include tmpfiles fragment for uuidd # TODO(dreisner): offer this upstream? install -Dm644 "$srcdir/uuidd.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/uuidd.conf" } -md5sums=('ba2d8cc12a937231c80a04f7f7149303' - '7f524538dcf57284a86f03a98e624f04' +md5sums=('730cf9932531ed09b53a04ca30fcb4c9' 'a39554bfd65cccfd8254bb46922f4a67' '4368b3f98abd8a32662e094c54e7f9b1' 'a31374fef2cba0ca34dfc7078e2969e4' - 'fa85e5cce5d723275b14365ba71a8aad' - '19eaa197a0cfb046661dede2e991120b') + 'fa85e5cce5d723275b14365ba71a8aad') diff --git a/core/wpa_supplicant/PKGBUILD b/core/wpa_supplicant/PKGBUILD index 5a7db187f..83ced8ab1 100644 --- a/core/wpa_supplicant/PKGBUILD +++ b/core/wpa_supplicant/PKGBUILD @@ -1,21 +1,20 @@ -# $Id: PKGBUILD 162909 2012-07-03 19:16:48Z dreisner $ +# $Id: PKGBUILD 168766 2012-10-15 19:16:03Z thomas $ # Maintainer: Thomas Bächler pkgname=wpa_supplicant pkgver=1.0 -pkgrel=1 +pkgrel=2 pkgdesc="A utility providing key negotiation for WPA wireless networks" url="http://hostap.epitest.fi/wpa_supplicant" arch=('i686' 'x86_64') depends=('openssl' 'dbus-core' 'readline' 'libnl') optdepends=('wpa_supplicant_gui: wpa_gui program') license=('GPL') -groups=('base') backup=('etc/wpa_supplicant/wpa_supplicant.conf') source=("http://w1.fi/releases/${pkgname}-${pkgver}.tar.gz" config hostap_allow-linking-with-libnl-3.2.patch) md5sums=('8650f6aa23646ef634402552d0669640' - '380d8d1fe24bccb2a2636cb2a6038c39' + 'c035e45e8e240239eecd7402f235fb3b' '473fb6b77909ec5a50b6f4d91370e86b') build() { diff --git a/core/wpa_supplicant/config b/core/wpa_supplicant/config index 59da1e27e..5e6dfedc8 100644 --- a/core/wpa_supplicant/config +++ b/core/wpa_supplicant/config @@ -466,3 +466,17 @@ CONFIG_NO_RANDOM_POOL=y #CONFIG_INTERWORKING=y CONFIG_LIBNL32=y + +# More options that are not in defconfig: + +# Lightweight AP mode +CONFIG_AP=y + +# P2P (WiFi Direct) +CONFIG_P2P=y + +# RSN IBSS/AdHoc support +CONFIG_IBSS_RSN=y + +# Simple background scan +CONFIG_BGSCAN_SIMPLE=y diff --git a/extra/akonadi/PKGBUILD b/extra/akonadi/PKGBUILD index d539ce3fa..a5225c3a6 100644 --- a/extra/akonadi/PKGBUILD +++ b/extra/akonadi/PKGBUILD @@ -1,22 +1,21 @@ -# $Id: PKGBUILD 164827 2012-08-06 23:06:21Z andrea $ +# $Id: PKGBUILD 168740 2012-10-15 06:35:45Z andrea $ # Maintainer: Andrea Scarpino # Contributor: Pierre Schmitz pkgname=akonadi -pkgver=1.8.0 +pkgver=1.8.1 pkgrel=1 pkgdesc="PIM layer, which provides an asynchronous API to access all kind of PIM data" arch=('i686' 'x86_64') -url='http://pim.kde.org/akonadi' +url='http://community.kde.org/KDE_PIM/Akonadi' license=('LGPL') depends=('shared-mime-info' 'boost-libs' 'mysql' 'soprano') makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost') install="${pkgname}.install" source=("http://download.kde.org/stable/${pkgname}/src/${pkgname}-${pkgver}.tar.bz2") -md5sums=('81156d883b40241cfc0ddb885f55bcfe') +md5sums=('39411abc7bec8a485362ea7460e7e3d7') build() { - cd "${srcdir}" mkdir build cd build cmake ../${pkgname}-${pkgver} \ @@ -27,6 +26,6 @@ build() { } package() { - cd "${srcdir}/build" + cd build make DESTDIR="${pkgdir}" install } diff --git a/extra/foobillard++/PKGBUILD b/extra/foobillard++/PKGBUILD index 5cedf397f..13dcd633e 100644 --- a/extra/foobillard++/PKGBUILD +++ b/extra/foobillard++/PKGBUILD @@ -1,14 +1,15 @@ -# $Id: PKGBUILD 148666 2012-02-05 11:46:13Z ibiru $ +# $Id: PKGBUILD 168755 2012-10-15 17:52:10Z eric $ # Maintainer: Eric Bélanger pkgname=foobillard++ pkgver=3.42beta -pkgrel=3 +pkgrel=4 pkgdesc="An OpenGL billiard game" arch=('i686' 'x86_64') url="http://foobillardplus.sourceforge.net/" license=('GPL2') -depends=('freetype2' 'libpng' 'mesa' 'sdl_net' 'sdl_mixer') +depends=('freetype2' 'libpng' 'glu' 'sdl_net' 'sdl_mixer') +makedepends=('mesa') replaces=('foobillard') source=(http://downloads.sourceforge.net/foobillardplus/foobillardplus-${pkgver}.tar.gz) sha1sums=('51507efab0f595cfff26149003faf669c0a42f32') diff --git a/extra/ftgl/PKGBUILD b/extra/ftgl/PKGBUILD index ecc5e938a..279f616a2 100644 --- a/extra/ftgl/PKGBUILD +++ b/extra/ftgl/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 168600 2012-10-13 11:46:59Z andyrtr $ +# $Id: PKGBUILD 168802 2012-10-16 03:14:27Z heftig $ # Maintainer: Jan Alexander Steffens (heftig) # Contributor: Alexander Baldeck # Contributor: tobias @@ -19,6 +19,7 @@ md5sums=('c7879018cde844059495b3029b0b6503') build() { cd "$srcdir/$pkgname-${_pkgver/-/~}" + sed -i '/^SUBDIRS =/s/demo//' Makefile.in ./configure --prefix=/usr --with-pic --disable-static make } diff --git a/extra/gnuplot/PKGBUILD b/extra/gnuplot/PKGBUILD index 432dff742..80183ab73 100644 --- a/extra/gnuplot/PKGBUILD +++ b/extra/gnuplot/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 155689 2012-04-04 18:17:55Z ronald $ +# $Id: PKGBUILD 168770 2012-10-15 19:50:22Z ronald $ # Maintainer: Ronald van Haren # Contributor: damir # Contributor: Tom Newsom pkgname=gnuplot -pkgver=4.6.0 -pkgrel=3 +pkgver=4.6.1 +pkgrel=1 pkgdesc="Plotting package which outputs to X11, PostScript, PNG, GIF, and others" arch=('i686' 'x86_64') url="http://www.gnuplot.info" @@ -14,7 +14,7 @@ depends=('readline' 'gd' 'wxgtk' 'cairo' 'libjpeg' 'lua') makedepends=('texinfo' 'emacs' 'texlive-core' 'texlive-latexextra') install=gnuplot.install source=("http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz") -sha1sums=('9a43ae13546d97d4b174533ddac31a14e0edc9b2') +sha1sums=('1ea21a628223159b0297ae65fe8293afd5aab3c0') build() { cd $srcdir/$pkgname-$pkgver diff --git a/extra/miro/PKGBUILD b/extra/miro/PKGBUILD index 73d430778..4972e01e9 100644 --- a/extra/miro/PKGBUILD +++ b/extra/miro/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 164751 2012-08-04 17:46:43Z ronald $ +# $Id: PKGBUILD 168768 2012-10-15 19:27:04Z ronald $ # Maintainer: Ronald van Haren pkgname=miro -pkgver=5.0.2 +pkgver=5.0.4 pkgrel=1 pkgdesc="The free and open source internet TV platform" arch=('i686' 'x86_64') @@ -18,7 +18,7 @@ makedepends=('pkg-config' 'boost') install=miro.install source=("http://ftp.osuosl.org/pub/pculture.org/${pkgname}/src/${pkgname}-${pkgver}.tar.gz" 'ffmpeg.patch') -sha1sums=('67babcf76cc08b72b8f55d425b1372ae0a979805' +sha1sums=('1144f98149ff07208b994a7cedb45a4beaaa451f' 'ce0f42be2a0a3ac99f07b5abfabf0975928c841c') build() { diff --git a/extra/perl-sdl/PKGBUILD b/extra/perl-sdl/PKGBUILD index 0a71a319c..d8273a34e 100644 --- a/extra/perl-sdl/PKGBUILD +++ b/extra/perl-sdl/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 165864 2012-09-01 20:41:29Z heftig $ +# $Id: PKGBUILD 168746 2012-10-15 12:11:10Z heftig $ # Maintainer: Jan Alexander Steffens (heftig) # Contributor: Allan McRae # Contributor: Sarah Hay pkgname=perl-sdl pkgver=2.540 -pkgrel=2 +pkgrel=3 pkgdesc="Simple DirectMedia Layer for Perl" arch=(i686 x86_64) license=(LGPL) url="http://sdl.perl.org" depends=(perl-alien-sdl perl-tie-simple - sdl_net sdl_ttf sdl_image sdl_mixer sdl_gfx sdl_pango mesa smpeg) + sdl_net sdl_ttf sdl_image sdl_mixer sdl_gfx sdl_pango smpeg) makedepends=('perl-module-build>=0.40') options=('!emptydirs') replaces=(sdl_perl) diff --git a/extra/qrencode/PKGBUILD b/extra/qrencode/PKGBUILD index 7caabccb0..fa809653c 100644 --- a/extra/qrencode/PKGBUILD +++ b/extra/qrencode/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 156492 2012-04-19 15:59:03Z bluewind $ +# $Id: PKGBUILD 168742 2012-10-15 07:00:19Z bluewind $ # Maintainer: Florian Pritz< flo@xinu.at> # Contributor: Dany Martineau pkgname=qrencode -pkgver=3.3.1 +pkgver=3.4.0 pkgrel=1 pkgdesc="C library for encoding data in a QR Code symbol." arch=(i686 x86_64) @@ -13,7 +13,7 @@ url="http://megaui.net/fukuchi/works/qrencode/index.en.html" license=('GPL') options=(!libtool) source=(http://megaui.net/fukuchi/works/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('14920ba9d0515bddcaebfbd728229c5d') +md5sums=('5af7879ab5b300663f2076c287c09030') build() { cd "${srcdir}/$pkgname-$pkgver" diff --git a/extra/xfce4-xkb-plugin/PKGBUILD b/extra/xfce4-xkb-plugin/PKGBUILD index ee0f53873..1ed492de2 100644 --- a/extra/xfce4-xkb-plugin/PKGBUILD +++ b/extra/xfce4-xkb-plugin/PKGBUILD @@ -1,34 +1,46 @@ -# $Id: PKGBUILD 157903 2012-04-30 04:21:40Z foutrelis $ -# Maintainer: AndyRTR +# $Id: PKGBUILD 168753 2012-10-15 14:42:49Z foutrelis $ +# Maintainer: Evangelos Foutras +# Contributor: AndyRTR # Contributor: Tobias Kieslich pkgname=xfce4-xkb-plugin pkgver=0.5.4.3 -pkgrel=2 +pkgrel=3 pkgdesc="Plugin to switch keyboard layouts for the Xfce4 panel" arch=('i686' 'x86_64') -license=('custom') url="http://goodies.xfce.org/projects/panel-plugins/xfce4-xkb-plugin" +license=('custom') groups=('xfce4-goodies') -depends=('xfce4-panel' 'libxklavier>=5.0' 'librsvg') +depends=('xfce4-panel' 'libxklavier' 'librsvg') makedepends=('intltool') options=('!libtool') -source=(http://archive.xfce.org/src/panel-plugins/${pkgname}/${pkgver%.*.*}/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('4dc42f96dc16a3bd78f86454ea3a931464e18497') +source=(http://archive.xfce.org/src/panel-plugins/$pkgname/0.5/$pkgname-$pkgver.tar.bz2 + xfce4-xkb-plugin-0.5.4.3-2-fix-memory-corruption.patch) +sha256sums=('ca4801bb2edfe04eeceb71879b3cf79a0674e8311c39117efdb9d3521307396d' + 'f5e6e5964df897045ed8c3443f632033689409459acdc54c0351264edc11b4ce') build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --libexecdir=/usr/lib \ - --localstatedir=/var \ - --disable-static \ - --disable-debug + cd "$srcdir/$pkgname-$pkgver" + + # https://bugs.archlinux.org/task/31880 + patch -Np1 -i "$srcdir/xfce4-xkb-plugin-0.5.4.3-2-fix-memory-corruption.patch" + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib \ + --localstatedir=/var \ + --disable-static \ + --disable-debug make } package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING" + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install + + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING" } + +# vim:set ts=2 sw=2 et: diff --git a/extra/xfce4-xkb-plugin/xfce4-xkb-plugin-0.5.4.3-2-fix-memory-corruption.patch b/extra/xfce4-xkb-plugin/xfce4-xkb-plugin-0.5.4.3-2-fix-memory-corruption.patch new file mode 100644 index 000000000..16f684b12 --- /dev/null +++ b/extra/xfce4-xkb-plugin/xfce4-xkb-plugin-0.5.4.3-2-fix-memory-corruption.patch @@ -0,0 +1,59 @@ +From ac73bc9de624d322b318c2eda0ace7f0bee97a64 Mon Sep 17 00:00:00 2001 +From: Igor Slepchin +Date: Thu, 19 Jul 2012 05:59:40 +0000 +Subject: Fix memory corruption. + +g_free(c) in the original code was freeing memory at the pointer +that was incremented a few times since the allocation. + +This is similar to ubuntu bug #899290 and fedora bug 589898. +--- +diff --git a/panel-plugin/xkb-util.c b/panel-plugin/xkb-util.c +index d0d0230..324928f 100644 +--- a/panel-plugin/xkb-util.c ++++ b/panel-plugin/xkb-util.c +@@ -66,11 +66,10 @@ xkb_util_get_layout_string (const gchar *group_name, const gchar *variant) + gchar* + xkb_util_normalize_group_name (const gchar* group_name) + { +- gchar *c; ++ const gchar *c; + gchar *result; + gint cut_length; + gint index_of_na = -1; +- gint index_tmp = -1; + + if (!group_name) + return NULL; +@@ -78,27 +77,19 @@ xkb_util_normalize_group_name (const gchar* group_name) + if (strlen (group_name) <= 3) + return g_strdup (group_name); + +- c = g_strdup (group_name); +- +- while (*c) ++ for (c = group_name; *c; c++) + { +- index_tmp++; +- + if (!((*c >= 'a' && *c <= 'z') || (*c >= 'A' && *c <= 'Z'))) + { +- index_of_na = index_tmp; ++ index_of_na = group_name - c; + break; + } +- +- c++; + } + + cut_length = (index_of_na != -1 && index_of_na <= 3) ? index_of_na : 3; + + result = g_strndup (group_name, cut_length); + +- g_free (c); +- + return result; + } + +-- +cgit v0.9.0.3 diff --git a/libre/linux-libre-kmod-alx/PKGBUILD b/libre/linux-libre-kmod-alx/PKGBUILD new file mode 100644 index 000000000..fc86511e9 --- /dev/null +++ b/libre/linux-libre-kmod-alx/PKGBUILD @@ -0,0 +1,36 @@ +# Maintainer: André Silva + +_kernver=3.6.2 +pkgname=('linux-libre-kmod-alx') +pkgver=20121003 +pkgrel=1 +pkgdesc='Atheros alx ethernet device driver for linux-libre kernel' +arch=('i686' 'x86_64') +url='http://linuxwireless.org/' +license=('GPL2') +depends=("linux-libre=$_kernver") +makedepends=("linux-libre-headers=$_kernver") +install=linux-libre-kmod-alx.install +source=(http://linuxwireless.org/download/compat-wireless-2.6/compat-wireless-2012-10-03-pc.tar.bz2) + +md5sums=('7d541af2ae06eeaaadaba5b4fbcbfb13') + + +build() { + # current extramodules version + _extraver=extramodules-3.6-LIBRE + + cd ${srcdir}/compat-wireless-2012-10-03-pc + + # replacing to specific linux-libre kernel version + sed -i -e 's/lib\/modules\/\$(shell uname -r)/usr\/lib\/modules\/3.6.2-1-LIBRE/' Makefile + + ./scripts/driver-select alx + make + cd ${srcdir}/compat-wireless-2012-10-03-pc/compat + gzip -9 compat.ko + install -D -m 0644 compat.ko.gz ${pkgdir}/lib/modules/$_extraver/compat.ko.gz + cd ${srcdir}/compat-wireless-2012-10-03-pc/drivers/net/ethernet/atheros/alx + gzip -9 alx.ko + install -D -m 0644 alx.ko.gz ${pkgdir}/lib/modules/$_extraver/alx.ko.gz +} diff --git a/libre/linux-libre-kmod-alx/linux-libre-kmod-alx.install b/libre/linux-libre-kmod-alx/linux-libre-kmod-alx.install new file mode 100644 index 000000000..aad4270cd --- /dev/null +++ b/libre/linux-libre-kmod-alx/linux-libre-kmod-alx.install @@ -0,0 +1,33 @@ +generic() { + echo " > Running depmod now..." + depmod -a +} + +unload() { + lsmod | grep alx > /dev/null + if [ "$?" = "0" ]; then + rmmod alx + fi +} + +post_install() { + generic + echo " > Reloading alx module..." + echo " Please note that you may REBOOT your system to get it works!" + unload + sleep 0.5 + modprobe alx +} + +post_upgrade() { + post_install +} + +post_remove() { + generic + echo " > Unloading memory resident module..." + unload + rmmod compat + echo " Module unloaded!." +} + diff --git a/libre/linux-libre-lts-kmod-alx/PKGBUILD b/libre/linux-libre-lts-kmod-alx/PKGBUILD new file mode 100644 index 000000000..646b3658a --- /dev/null +++ b/libre/linux-libre-lts-kmod-alx/PKGBUILD @@ -0,0 +1,36 @@ +# Maintainer: André Silva + +_kernver=3.0.46 +pkgname=('linux-libre-lts-kmod-alx') +pkgver=20121003 +pkgrel=1 +pkgdesc='Atheros alx ethernet device driver for linux-libre-lts kernel' +arch=('i686' 'x86_64') +url='http://linuxwireless.org/' +license=('GPL2') +depends=("linux-libre-lts=$_kernver") +makedepends=("linux-libre-lts-headers=$_kernver") +install=linux-libre-lts-kmod-alx.install +source=(http://linuxwireless.org/download/compat-wireless-2.6/compat-wireless-2012-10-03-pc.tar.bz2) + +md5sums=('7d541af2ae06eeaaadaba5b4fbcbfb13') + + +build() { + # current extramodules version + _extraver=extramodules-3.0-LIBRE-LTS + + cd ${srcdir}/compat-wireless-2012-10-03-pc + + # replacing to specific linux-libre-lts kernel version + sed -i -e 's/lib\/modules\/\$(shell uname -r)/usr\/lib\/modules\/3.0.46-1-LIBRE-LTS/' Makefile + + ./scripts/driver-select alx + make + cd ${srcdir}/compat-wireless-2012-10-03-pc/compat + gzip -9 compat.ko + install -D -m 0644 compat.ko.gz ${pkgdir}/lib/modules/$_extraver/compat.ko.gz + cd ${srcdir}/compat-wireless-2012-10-03-pc/drivers/net/ethernet/atheros/alx + gzip -9 alx.ko + install -D -m 0644 alx.ko.gz ${pkgdir}/lib/modules/$_extraver/alx.ko.gz +} diff --git a/libre/linux-libre-lts-kmod-alx/linux-libre-lts-kmod-alx.install b/libre/linux-libre-lts-kmod-alx/linux-libre-lts-kmod-alx.install new file mode 100644 index 000000000..aad4270cd --- /dev/null +++ b/libre/linux-libre-lts-kmod-alx/linux-libre-lts-kmod-alx.install @@ -0,0 +1,33 @@ +generic() { + echo " > Running depmod now..." + depmod -a +} + +unload() { + lsmod | grep alx > /dev/null + if [ "$?" = "0" ]; then + rmmod alx + fi +} + +post_install() { + generic + echo " > Reloading alx module..." + echo " Please note that you may REBOOT your system to get it works!" + unload + sleep 0.5 + modprobe alx +} + +post_upgrade() { + post_install +} + +post_remove() { + generic + echo " > Unloading memory resident module..." + unload + rmmod compat + echo " Module unloaded!." +} + diff --git a/libre/virtualbox-libre/PKGBUILD b/libre/virtualbox-libre/PKGBUILD index 8bd1c2022..81ba99ec8 100644 --- a/libre/virtualbox-libre/PKGBUILD +++ b/libre/virtualbox-libre/PKGBUILD @@ -13,7 +13,7 @@ pkgname=('virtualbox-libre' 'virtualbox-libre-guest-utils' 'virtualbox-libre-guest-source') pkgver=4.2.0 -pkgrel=3.2 +pkgrel=4 arch=('i686' 'x86_64') url='http://virtualbox.org' license=('GPL' 'custom') @@ -38,6 +38,7 @@ makedepends=('alsa-lib' 'libxtst' 'linux-libre-headers' 'mesa' + 'glu' 'python2' 'qt' 'sdl-libre' @@ -264,7 +265,7 @@ package_virtualbox-libre-sdk() { } package_virtualbox-libre-host-source() { - pkgdesc='VirtualBox Host kernel libre modules source' + pkgdesc='VirtualBox Host kernel libre modules source (DKMS)' depends=('dkms' 'gcc' 'make') provides=("virtualbox-host-source=$pkgver" 'virtualbox-libre-host-modules') replaces=('virtualbox-host-source' 'virtualbox-source' 'virtualbox-libre-source') @@ -280,7 +281,7 @@ package_virtualbox-libre-host-source() { } package_virtualbox-libre-guest-source() { - pkgdesc='VirtualBox Guest kernel libre modules source' + pkgdesc='VirtualBox Guest kernel libre modules source (DKMS)' depends=('dkms' 'gcc' 'make') provides=("virtualbox-guest-source=$pkgver" 'virtualbox-libre-guest-modules') replaces=('virtualbox-guest-source' 'virtualbox-archlinux-source' 'virtualbox-parabola-source') @@ -314,7 +315,7 @@ package_virtualbox-libre-guest-utils(){ "$pkgdir"/usr/bin/VBoxClient-all install -m755 -D "$srcdir"/VirtualBox-$pkgver/src/VBox/Additions/x11/Installer/vboxclient.desktop \ "$pkgdir"/etc/xdg/autostart/vboxclient.desktop - install -D vboxvideo_drv_112.so \ + install -D vboxvideo_drv_113.so \ "$pkgdir/usr/lib/xorg/modules/drivers/vboxvideo.so" install -d "$pkgdir/usr/lib/xorg/modules/dri" install -m755 VBoxOGL*.so "$pkgdir/usr/lib" diff --git a/staging/bzr/PKGBUILD b/staging/bzr/PKGBUILD new file mode 100644 index 000000000..22244baf0 --- /dev/null +++ b/staging/bzr/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 168772 2012-10-15 21:04:59Z eric $ +# Maintainer : +# Contributor: Hugo Doria + +pkgname=bzr +pkgver=2.5.1 +pkgrel=2 +pkgdesc="A decentralized revision control system (bazaar)" +arch=('i686' 'x86_64') +url="http://bazaar.canonical.com/en/" +license=('GPL') +depends=('python2') +optdepends=('python2-paramiko: for sftp support') +source=("http://launchpad.net/${pkgname}/${pkgver%.*}/${pkgver}/+download/${pkgname}-${pkgver}.tar.gz"{,.sig}) +md5sums=('ac5079858364a046071000d5cdccb67b' + 'c83dd08dd2c3e27edbab873500d7d6eb') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + sed -i 's|man/man1|share/man/man1|' setup.py + sed -i 's|/usr/bin/env python|/usr/bin/env python2|' \ + bzrlib/{plugins/bash_completion/bashcomp.py,tests/ssl_certs/create_ssls.py,patiencediff.py,_patiencediff_py.py} + python2 setup.py build +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + python2 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 + + # bash-completion + install -D -m644 contrib/bash/bzr \ + "${pkgdir}/usr/share/bash-completion/completions/bzr" +} diff --git a/staging/gnome-python-desktop/PKGBUILD b/staging/gnome-python-desktop/PKGBUILD new file mode 100644 index 000000000..4788632d1 --- /dev/null +++ b/staging/gnome-python-desktop/PKGBUILD @@ -0,0 +1,107 @@ +# $Id: PKGBUILD 168784 2012-10-16 00:01:27Z allan $ +# Maintainer: Jan de Groot +# Contributor: Arjan Timmerman +# Contributor: Wael Nasreddine + +pkgbase=gnome-python-desktop +pkgname=('gnome-python-desktop' 'python2-gnomedesktop' 'python2-gnomekeyring' 'python2-gtop' 'python2-metacity' 'python2-rsvg' 'python2-totem-plparser' 'python2-wnck') +pkgver=2.32.0 +pkgrel=11 +arch=(i686 x86_64) +license=('GPL' 'LGPL') +options=('!libtool') +makedepends=('intltool' 'pkg-config' 'gnome-python' 'libgtop' 'totem-plparser' 'gnome-desktop2' 'metacity' 'librsvg' 'libwnck') +url="http://www.gnome.org" +source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/2.32/${pkgbase}-${pkgver}.tar.bz2 + gnome-python-desktop-2.32.0-metacity-build.patch) +sha256sums=('09dbd580bf3b0ef60f91b090eafe6d08ddcc50a609e2b425a7f8eca46d4e0ee9' + 'f012f9bd2f9baa527f07ad2f6e312c875bb6f2d3204270a1b053278a3a0c86b3') + +build() { + cd "${srcdir}/${pkgbase}-${pkgver}" + patch -p1 -i ../gnome-python-desktop-2.32.0-metacity-build.patch + PYTHON=/usr/bin/python2 ./configure --prefix=/usr --enable-metacity + make +} + +package_gnome-python-desktop() { + depends=('python2-gnomedesktop' 'python2-gnomekeyring' 'python2-gtop' 'python2-metacity' 'python2-rsvg' 'python2-totem-plparser' 'python2-wnck' 'gnome2-python') + pkgdesc="Python bindings for the GNOME desktop environment" + + cd "${srcdir}/${pkgbase}-${pkgver}" + make install-pkgconfigDATA DESTDIR="${pkgdir}" +} + +package_python2-gnomedesktop() { + depends=('pygtk' 'gnome-desktop2' 'python2-gnomevfs') + pkgdesc="Python bindings for gnome-desktop 2.x" + conflicts=('python-gnomedesktop<=2.32.0-10') + replaces=('python-gnomedesktop<=2.32.0-10') + + cd "${srcdir}/${pkgbase}-${pkgver}" + make -C gnomedesktop install DESTDIR="${pkgdir}" +} + +package_python2-gnomekeyring() { + depends=('pygtk' 'libgnome-keyring') + pkgdesc="Python bindings for libgnome-keyring" + conflicts=('python-gnomekeyring<=2.32.0-10') + replaces=('python-gnomekeyring<=2.32.0-10') + + cd "${srcdir}/${pkgbase}-${pkgver}" + make -C gnomekeyring install DESTDIR="${pkgdir}" +} + +package_python2-gtop() { + depends=('pygtk' 'libgtop') + pkgdesc="Python bindings for libgtop" + conflicts=('python-gtop<=2.32.0-10') + replaces=('python-gtop<=2.32.0-10') + + cd "${srcdir}/${pkgbase}-${pkgver}" + make -C gtop install DESTDIR="${pkgdir}" +} + +package_python2-metacity() { + depends=('pygtk' 'metacity') + pkgdesc="Python bindings for metacity" + conflicts=('python-metacity<=2.32.0-10') + replaces=('python-metacity<=2.32.0-10') + + cd "${srcdir}/${pkgbase}-${pkgver}" + make -C metacity install DESTDIR="${pkgdir}" +} + +package_python2-rsvg() { + depends=('pygtk' 'librsvg') + pkgdesc="Python bindings for librsvg" + conflicts=('python-rsvg<=2.32.0-10') + replaces=('python-rsvg<=2.32.0-10') + + cd "${srcdir}/${pkgbase}-${pkgver}" + make -C rsvg install DESTDIR="${pkgdir}" + install -m755 -d "${pkgdir}/usr/share/pygtk/2.0/defs" + install -m644 rsvg/rsvg.defs "${pkgdir}/usr/share/pygtk/2.0/defs/" +} + +package_python2-totem-plparser() { + depends=('pygtk' 'totem-plparser' 'python2-gnomevfs') + pkgdesc="Python bindings for totem-plparser" + conflicts=('python-totem-plparser<=2.32.0-10') + replaces=('python-totem-plparser<=2.32.0-10') + + cd "${srcdir}/${pkgbase}-${pkgver}" + make -C totem install DESTDIR="${pkgdir}" + install -m755 -d "${pkgdir}/usr/share/pygtk/2.0/defs" + install -m644 totem/plparser.defs "${pkgdir}/usr/share/pygtk/2.0/defs/" +} + +package_python2-wnck() { + depends=('pygtk' 'libwnck') + pkgdesc="Python bindings for libwnck" + conflicts=('python-wnck<=2.32.0-10') + replaces=('python-wnck<=2.32.0-10') + + cd "${srcdir}/${pkgbase}-${pkgver}" + make -C wnck install DESTDIR="${pkgdir}" +} diff --git a/staging/gnome-python-desktop/gnome-python-desktop-2.32.0-metacity-build.patch b/staging/gnome-python-desktop/gnome-python-desktop-2.32.0-metacity-build.patch new file mode 100644 index 000000000..5054dd2bd --- /dev/null +++ b/staging/gnome-python-desktop/gnome-python-desktop-2.32.0-metacity-build.patch @@ -0,0 +1,42 @@ +From: Daniel Drake + +Fix build against metacity-2.34.2. The port to GSettings +removed these constants from the codebase. + +Index: gnome-python-desktop-2.32.0/metacity/metacity.defs +=================================================================== +--- gnome-python-desktop-2.32.0.orig/metacity/metacity.defs ++++ gnome-python-desktop-2.32.0/metacity/metacity.defs +@@ -120,32 +120,6 @@ + ) + ) + +-(define-enum FocusMode +- (in-module "Meta") +- (c-name "MetaFocusMode") +-; (gtype-id "META_TYPE_FOCUS_MODE") +- (values +- '("click" "META_FOCUS_MODE_CLICK") +- '("sloppy" "META_FOCUS_MODE_SLOPPY") +- '("mouse" "META_FOCUS_MODE_MOUSE") +- ) +-) +- +-(define-enum ActionTitlebar +- (in-module "Meta") +- (c-name "MetaActionTitlebar") +-; (gtype-id "META_TYPE_ACTION_TITLEBAR") +- (values +- '("toggle-shade" "META_ACTION_TITLEBAR_TOGGLE_SHADE") +- '("toggle-maximize" "META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE") +- '("minimize" "META_ACTION_TITLEBAR_MINIMIZE") +- '("none" "META_ACTION_TITLEBAR_NONE") +- '("lower" "META_ACTION_TITLEBAR_LOWER") +- '("menu" "META_ACTION_TITLEBAR_MENU") +- '("last" "META_ACTION_TITLEBAR_LAST") +- ) +-) +- + (define-enum FrameType + (in-module "Meta") + (c-name "MetaFrameType") diff --git a/staging/miro/PKGBUILD b/staging/miro/PKGBUILD new file mode 100644 index 000000000..1b4c5711a --- /dev/null +++ b/staging/miro/PKGBUILD @@ -0,0 +1,49 @@ +# $Id: PKGBUILD 168800 2012-10-16 01:40:22Z eric $ +# Maintainer: Ronald van Haren + +pkgname=miro +pkgver=5.0.4 +pkgrel=2 +pkgdesc="The free and open source internet TV platform" +arch=('i686' 'x86_64') +url="http://www.getmiro.com" +license=('GPL2') +depends=('python2-dbus' 'pyrex' 'pygtk' 'gstreamer0.10' 'python2-gconf' + 'python2-pysqlite' 'pywebkitgtk' 'shared-mime-info' + 'desktop-file-utils' 'gstreamer0.10' 'hicolor-icon-theme' + 'gstreamer0.10-python' 'python2-notify' 'libtorrent-rasterbar' + 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'python2-pycurl' + 'gstreamer0.10-ffmpeg' 'ffmpeg' 'mutagen' 'xdg-utils') +makedepends=('pkg-config' 'boost') +install=miro.install +source=("http://ftp.osuosl.org/pub/pculture.org/${pkgname}/src/${pkgname}-${pkgver}.tar.gz" + 'ffmpeg.patch') +sha1sums=('1144f98149ff07208b994a7cedb45a4beaaa451f' + 'ce0f42be2a0a3ac99f07b5abfabf0975928c841c') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + cd linux + patch -p2 -i "${srcdir}"/ffmpeg.patch + + python2 setup.py install --root="${pkgdir}" + + # fix miro startup script so --debug works with python2 + sed -i "s|which python|which python2|" "${pkgdir}/usr/bin/miro" + sed -i "s|./miro.real|/usr/bin/miro.real|" "${pkgdir}/usr/bin/miro" + + # fix python scripts for python2 + sed -i "s|/usr/bin/env python|/usr/bin/env python2|" "${pkgdir}"/usr/share/miro/resources/searchengines/update-icons.py + for i in usr/share/miro/resources/testdata/echonest-replies/generate.py usr/share/miro/resources/searchengines/update-icons.py \ + usr/share/miro/resources/testdata/7digital-replies/generate.py; do + sed -i "s|/usr/bin/python|/usr/bin/python2|" "${pkgdir}"/${i} + done + + # Fakeroot segfaults on these; remove + if [ ${CARCH} == "i686" ]; then + rm -f "${pkgdir}"/usr/bin/codegen.Linux-x86_64 || true + else + rm -f "${pkgdir}"/usr/bin/codegen.Linux-i686 || true + fi +} diff --git a/staging/miro/ffmpeg.patch b/staging/miro/ffmpeg.patch new file mode 100644 index 000000000..99c14107d --- /dev/null +++ b/staging/miro/ffmpeg.patch @@ -0,0 +1,63 @@ +--- miro-5.0.1/linux/miro-segmenter.c~ 2012-07-06 14:33:24.618082171 +0000 ++++ miro-5.0.1/linux/miro-segmenter.c 2012-07-06 15:10:19.564146117 +0000 +@@ -156,7 +156,7 @@ + exit(1); + } + +- ret = av_open_input_file(&ic, input, ifmt, 0, NULL); ++ ret = avformat_open_input(&ic, input, ifmt, 0); + if (ret != 0) { + fprintf(stderr, "Could not open input file, make sure it is an mpegts file: %d\n", ret); + exit(1); +@@ -215,12 +215,7 @@ + } + } + +- if (av_set_parameters(oc, NULL) < 0) { +- fprintf(stderr, "Invalid output format parameters\n"); +- exit(1); +- } +- +- dump_format(oc, 0, input, 1); ++ av_dump_format(oc, 0, input, 1); + + if (video_st) { + codec = avcodec_find_decoder(video_st->codec->codec_id); +@@ -233,12 +228,12 @@ + } + } + +- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) { ++ if (avio_open(&oc->pb, output_filename, AVIO_FLAG_WRITE) < 0) { + fprintf(stderr, "Could not open '%s'\n", output_filename); + exit(1); + } + +- if (av_write_header(oc)) { ++ if (avformat_write_header(oc, NULL)) { + fprintf(stderr, "Could not write mpegts header to first output file\n"); + + exit(1); +@@ -274,10 +269,10 @@ + } + + if (segment_time - prev_segment_time >= segment_duration) { +- put_flush_packet(oc->pb); +- url_fclose(oc->pb); ++ avio_flush(oc->pb); ++ avio_close(oc->pb); + +- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) { ++ if (avio_open(&oc->pb, output_filename, AVIO_FLAG_WRITE) < 0) { + fprintf(stderr, "Could not open '%s'\n", output_filename); + break; + } +@@ -307,7 +302,7 @@ + av_freep(&oc->streams[i]); + } + +- url_fclose(oc->pb); ++ avio_close(oc->pb); + av_free(oc); + + /* End-of-transcode marker. */ diff --git a/staging/miro/miro.install b/staging/miro/miro.install new file mode 100644 index 000000000..a5ee228aa --- /dev/null +++ b/staging/miro/miro.install @@ -0,0 +1,17 @@ +post_install() { + update-desktop-database -q + xdg-icon-resource forceupdate --theme hicolor + update-mime-database usr/share/mime > /dev/null +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + update-desktop-database -q + xdg-icon-resource forceupdate --theme hicolor + update-mime-database usr/share/mime > /dev/null +} + + diff --git a/staging/pygobject/PKGBUILD b/staging/pygobject/PKGBUILD new file mode 100644 index 000000000..c5b861096 --- /dev/null +++ b/staging/pygobject/PKGBUILD @@ -0,0 +1,58 @@ +# $Id: PKGBUILD 168794 2012-10-16 00:45:16Z allan $ +# Maintainer: Ionut Biru + +pkgbase=pygobject +pkgname=(python-gobject python2-gobject pygobject-devel) +pkgver=3.2.2 +pkgrel=2 +arch=('i686' 'x86_64') +url="https://live.gnome.org/PyGObject" +license=('LGPL') +makedepends=('python' 'python2' 'python-cairo' 'python2-cairo' 'gobject-introspection') +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgbase/${pkgver%.*}/$pkgbase-$pkgver.tar.xz) +options=('!libtool') +sha256sums=('4653790baaff0176fd814b88cfb5378c45906a120b25d01be2554f423b726eb0') + +build() { + cp -a "$pkgbase-$pkgver" python2-build + mkdir devel + + ( + cd python2-build + export PYTHON=/usr/bin/python2 + ./configure --prefix=/usr + make + ) + + ( + cd "$pkgbase-$pkgver" + ./configure --prefix=/usr + make + ) +} + +package_python-gobject() { + pkgdesc="Python 3 bindings for GObject" + depends=('gobject-introspection' 'python-cairo' "pygobject-devel=$pkgver") + + cd "$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install + rm -r "$pkgdir"/usr/{include,lib/pkgconfig} +} + +package_python2-gobject() { + pkgdesc="Python 2 bindings for GObject" + depends=('gobject-introspection' 'python2-cairo' "pygobject-devel=$pkgver") + + cd "python2-build" + make DESTDIR="$pkgdir" install + mv "$pkgdir"/usr/{include,lib/pkgconfig} "$srcdir/devel" +} + +package_pygobject-devel() { + pkgdesc="Development files for the pygobject bindings" + cd "devel" + mkdir -p "$pkgdir"/usr/{include,lib} + mv include "$pkgdir/usr/" + mv pkgconfig "$pkgdir/usr/lib/" +} diff --git a/staging/pygobject2/PKGBUILD b/staging/pygobject2/PKGBUILD new file mode 100644 index 000000000..4ba2bfa2a --- /dev/null +++ b/staging/pygobject2/PKGBUILD @@ -0,0 +1,86 @@ +# $Id: PKGBUILD 168792 2012-10-16 00:40:21Z allan $ +# Maintainer: Jan de Groot + +pkgbase=pygobject2 +pkgname=(python-gobject2 python2-gobject2 pygobject2-devel) +pkgver=2.28.6 +pkgrel=7 +arch=('i686' 'x86_64') +url="http://www.pygtk.org/" +license=('LGPL') +makedepends=('python' 'python2') +source=(http://ftp.gnome.org/pub/gnome/sources/pygobject/${pkgver%.*}/pygobject-${pkgver}.tar.xz + python2-fix-type.patch + python3-fix-build.patch + python3-fix-maketrans.patch) +options=('!libtool') +sha256sums=('fb8a1d4f665130a125011659bd347c7339c944232163dbb9a34fd0686577adb8' + 'b7b415499ffc0817cf551edf76a3fe47938db2c9f6240046eae681e6ef9b37ea' + 'feafd4664f8455edf0bf8407ac45e219bb550df806ce0d601baae951e8c188ca' + '4bff9adcea13a824c45d14ec501c927df47d23c22507a2456d8b5ec885924c0a') + +build() { + cd "${srcdir}" + cp -a "pygobject-${pkgver}" python2-build + mkdir devel + + ( + cd python2-build + export PYTHON=/usr/bin/python2 + ./configure --prefix=/usr --disable-introspection + make + ) + + ( + cd "pygobject-${pkgver}" + #patches available in 2.28 branch but unreleased. + patch -Np1 -i "${srcdir}/python2-fix-type.patch" + patch -Np1 -i "${srcdir}/python3-fix-build.patch" + patch -Np1 -i "${srcdir}/python3-fix-maketrans.patch" + + ./configure --prefix=/usr --disable-introspection + make + ) +} + +package_python-gobject2() { + pkgdesc="Python 3 bindings for GObject2" + depends=('glib2' 'pygobject2-devel' 'python') + replaces=('py3gobject') + provides=("py3gobject=$pkgver") + + cd "${srcdir}/pygobject-${pkgver}" + make DESTDIR="${pkgdir}" install + + # Delete devel stuff + rm -r "$pkgdir"/usr/{bin,include,lib/pkgconfig,share/{gtk-doc,pygobject/{2.0/codegen,xsl}}} +} + +package_python2-gobject2() { + pkgdesc="Python 2 bindings for GObject2" + depends=('glib2' 'pygobject2-devel' 'python2') + replaces=('pygobject') + provides=("pygobject=$pkgver") + + cd "${srcdir}/python2-build" + make DESTDIR="${pkgdir}" install + + find "$pkgdir"/usr/share/pygobject -name '*.py' | \ + xargs sed -i "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" + + # Split devel stuff + mv "$pkgdir"/usr/{include,lib/pkgconfig,share/{gtk-doc,pygobject/xsl}} \ + "$srcdir/devel/" +} + +package_pygobject2-devel() { + pkgdesc="Development files for the pygobject bindings" + + cd "${srcdir}/devel" + mkdir -p "$pkgdir"/usr/{include,lib,share/pygobject} + + mv include "$pkgdir/usr/" + mv pkgconfig "$pkgdir/usr/lib/" + mv gtk-doc "$pkgdir/usr/share/" + mv xsl "$pkgdir/usr/share/pygobject/" +} diff --git a/staging/pygobject2/python2-fix-type.patch b/staging/pygobject2/python2-fix-type.patch new file mode 100644 index 000000000..78e7ddfd5 --- /dev/null +++ b/staging/pygobject2/python2-fix-type.patch @@ -0,0 +1,50 @@ +From 42d01f060c5d764baa881d13c103d68897163a49 Mon Sep 17 00:00:00 2001 +From: Ryan Lortie +Date: Mon, 12 Mar 2012 16:44:14 -0400 +Subject: gio-types.defs: change some enums to flags + +These flags types were originally incorrectly handled in glib as being +enums. That bug was fixed, but they're still enums here, leading to +warnings about the mismatch. + +Change them to flags. + +https://bugzilla.gnome.org/show_bug.cgi?id=668522 +--- + gio/gio-types.defs | 6 +++--- + 1 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/gio/gio-types.defs b/gio/gio-types.defs +index 331e0bc..7eee5c8 100644 +--- a/gio/gio-types.defs ++++ b/gio/gio-types.defs +@@ -526,7 +526,7 @@ + ) + ) + +-(define-enum MountMountFlags ++(define-flags MountMountFlags + (in-module "gio") + (c-name "GMountMountFlags") + (gtype-id "G_TYPE_MOUNT_MOUNT_FLAGS") +@@ -545,7 +545,7 @@ + ) + ) + +-(define-enum DriveStartFlags ++(define-flags DriveStartFlags + (in-module "gio") + (c-name "GDriveStartFlags") + (gtype-id "G_TYPE_DRIVE_START_FLAGS") +@@ -770,7 +770,7 @@ + ) + ) + +-(define-enum SocketMsgFlags ++(define-flags SocketMsgFlags + (in-module "gio") + (c-name "GSocketMsgFlags") + (gtype-id "G_TYPE_SOCKET_MSG_FLAGS") +-- +1.7.9.1 + diff --git a/staging/pygobject2/python3-fix-build.patch b/staging/pygobject2/python3-fix-build.patch new file mode 100644 index 000000000..4cb8cfe57 --- /dev/null +++ b/staging/pygobject2/python3-fix-build.patch @@ -0,0 +1,34 @@ +From e2dc4ac346a16b6976b92e84819c7203629beb4a Mon Sep 17 00:00:00 2001 +From: Ignacio Casal Quinteiro +Date: Thu, 21 Apr 2011 14:52:20 +0000 +Subject: [python3] fix build. PYcairo_IMPORT doesn't exists anymore + +--- +diff --git a/gi/pygi-foreign-cairo.c b/gi/pygi-foreign-cairo.c +index 81b9865..edf52d7 100644 +--- a/gi/pygi-foreign-cairo.c ++++ b/gi/pygi-foreign-cairo.c +@@ -30,7 +30,7 @@ + #include + #endif + +-Pycairo_CAPI_t *Pycairo_CAPI; ++static Pycairo_CAPI_t *Pycairo_CAPI; + + #include "pygi-foreign.h" + +@@ -117,7 +117,12 @@ cairo_surface_release (GIBaseInfo *base_info, + static PyMethodDef _gi_cairo_functions[] = {0,}; + PYGLIB_MODULE_START(_gi_cairo, "_gi_cairo") + { ++#if PY_VERSION_HEX < 0x03000000 + Pycairo_IMPORT; ++#else ++ Pycairo_CAPI = (Pycairo_CAPI_t*) PyCObject_Import("cairo", "CAPI"); ++#endif ++ + if (Pycairo_CAPI == NULL) + return PYGLIB_MODULE_ERROR_RETURN; + +-- +cgit v0.9 diff --git a/staging/pygobject2/python3-fix-maketrans.patch b/staging/pygobject2/python3-fix-maketrans.patch new file mode 100644 index 000000000..f5bc0e77c --- /dev/null +++ b/staging/pygobject2/python3-fix-maketrans.patch @@ -0,0 +1,36 @@ +From 667bec76ccbc85cc1d54a0e68977dbda241c028c Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Wed, 13 Jul 2011 06:42:22 +0000 +Subject: [python3] Fix maketrans import + +Python3 moved the maketrans() function from the string module to a str method. +This unbreaks gi/module.py for Python 3 again. +--- +diff --git a/gi/module.py b/gi/module.py +index 70df76c..d56bdaf 100644 +--- a/gi/module.py ++++ b/gi/module.py +@@ -24,7 +24,11 @@ from __future__ import absolute_import + + import os + import gobject +-import string ++try: ++ maketrans = ''.maketrans ++except AttributeError: ++ # fallback for Python 2 ++ from string import maketrans + + import gi + from .overrides import registry +@@ -124,7 +128,7 @@ class IntrospectionModule(object): + # Don't use upper() here to avoid locale specific + # identifier conversion (e. g. in Turkish 'i'.upper() == 'i') + # see https://bugzilla.gnome.org/show_bug.cgi?id=649165 +- ascii_upper_trans = string.maketrans( ++ ascii_upper_trans = maketrans( + 'abcdefgjhijklmnopqrstuvwxyz', + 'ABCDEFGJHIJKLMNOPQRSTUVWXYZ') + for value_info in info.get_values(): +-- +cgit v0.9 diff --git a/staging/pyqt/PKGBUILD b/staging/pyqt/PKGBUILD index 8fba65343..6f3b1a230 100644 --- a/staging/pyqt/PKGBUILD +++ b/staging/pyqt/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 167324 2012-10-01 06:53:33Z andrea $ +# $Id: PKGBUILD 168744 2012-10-15 09:20:47Z andrea $ # Maintainer: Andrea Scarpino # Contributor: Douglas Soares de Andrade # Contributor: riai Ben @@ -6,13 +6,13 @@ pkgbase=pyqt pkgname=('pyqt-common' 'pyqt' 'python2-pyqt') pkgver=4.9.5 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') url="http://riverbankcomputing.co.uk/software/pyqt/intro" license=('GPL') makedepends=('qt' 'python-sip' 'python-dbus' 'python2-sip' 'phonon' 'python2-opengl' 'qt-assistant-compat' 'qtwebkit' 'python2-dbus') - source=("http://downloads.sourceforge.net/${pkgbase}/PyQt-x11-gpl-${pkgver}.tar.gz") +source=("http://downloads.sourceforge.net/${pkgbase}/PyQt-x11-gpl-${pkgver}.tar.gz") md5sums=('e4cdd6619c63655f7510efb4df8462fb') build() { @@ -47,7 +47,6 @@ package_pyqt-common(){ cd PyQt-x11-gpl-${pkgver} make -C pyrcc DESTDIR="${pkgdir}" install make -C pylupdate DESTDIR="${pkgdir}" install - make -C designer INSTALL_ROOT="${pkgdir}" install install -Dm644 PyQt4.api "${pkgdir}"/usr/share/qt/qsci/api/python/PyQt4.api } @@ -65,7 +64,6 @@ package_pyqt(){ # Provided by pyqt-common rm "${pkgdir}"/usr/bin/{pylupdate4,pyrcc4} - rm "${pkgdir}"/usr/lib/qt/plugins/designer/libpythonplugin.so rm "${pkgdir}"/usr/share/qt/qsci/api/python/PyQt4.api } @@ -85,7 +83,7 @@ package_python2-pyqt(){ # Fix conflicts with pyqt mv "${pkgdir}"/usr/bin/{,python2-}pyuic4 - # Provided by pyqt-common + # Provided by pyqt rm "${pkgdir}"/usr/bin/{pylupdate4,pyrcc4} rm "${pkgdir}"/usr/lib/qt/plugins/designer/libpythonplugin.so rm "${pkgdir}"/usr/share/qt/qsci/api/python/PyQt4.api diff --git a/staging/python-pyspi/PKGBUILD b/staging/python-pyspi/PKGBUILD new file mode 100644 index 000000000..e230fd562 --- /dev/null +++ b/staging/python-pyspi/PKGBUILD @@ -0,0 +1,32 @@ +# $Id: PKGBUILD 168788 2012-10-16 00:26:49Z allan $ +# Maintainer: Jan de Groot +# Contributor: William Rea + +pkgbase=python-pyspi +pkgname=python2-pyspi +pkgver=0.6.1 +pkgrel=1 +pkgdesc="Python AT-SPI bindings" +arch=('i686' 'x86_64') +url="http://people.redhat.com/zcerza/dogtail" +license=('LGPL') +depends=('python2' 'at-spi') +makedepends=('pyrex') +conflicts=('python-pyspi<=0.6.1-5') +conflicts=('python-pyspi<=0.6.1-5') +source=("http://dlc.sun.com/osol/jds/downloads/sources/pyspi-${pkgver}.tar.gz" + 'pyspi-build.patch') +md5sums=('def336bd566ea688a06ec03db7ccf1f4' + '721f74cbae653a258c00b83acf7dd1da') + +build() { + cd ${srcdir}/pyspi-${pkgver} + patch -Np1 -i ${srcdir}/pyspi-build.patch + # Pyrex tells us to use __cinit__ instead of __new__ + sed -i 's/__new__/__cinit__/' pyspi.pyx +} + +package_python2-pyspi() { + cd ${srcdir}/pyspi-${pkgver} + python2 setup.py install --root=${pkgdir} +} diff --git a/staging/python-pyspi/pyspi-build.patch b/staging/python-pyspi/pyspi-build.patch new file mode 100644 index 000000000..3d12c5ed5 --- /dev/null +++ b/staging/python-pyspi/pyspi-build.patch @@ -0,0 +1,1693 @@ +diff -Naur pyspi-0.6.1-old/cspi.pxd pyspi-0.6.1/cspi.pxd +--- pyspi-0.6.1-old/cspi.pxd 2006-08-04 06:27:10.000000000 +1000 ++++ pyspi-0.6.1/cspi.pxd 2009-05-09 15:24:31.000000000 +1000 +@@ -14,9 +14,7 @@ + + ctypedef struct AccessibleTextRange + ctypedef struct AccessibleKeySet +- ctypedef enum SPIBoolean: +- FALSE = 0, +- TRUE ++ ctypedef unsigned int SPIBoolean + + ctypedef struct AccessibleEvent: + char *type +diff -Naur pyspi-0.6.1-old/pyspi.pyx pyspi-0.6.1/pyspi.pyx +--- pyspi-0.6.1-old/pyspi.pyx 2006-10-03 02:46:41.000000000 +1000 ++++ pyspi-0.6.1/pyspi.pyx 2009-05-09 15:24:31.000000000 +1000 +@@ -25,9 +25,15 @@ + cdef class Event (EventBase) + cdef class DeviceEvent + +-ctypedef enum bool: ++ctypedef unsigned int bool ++ ++import __builtin__ ++try: ++ False = __builtin__.False ++ True = __builtin__.True ++except AttributeError: + False = 0 +- True ++ True = 1 + + # SPIExceptionCode values: + (SPI_EXCEPTION_UNSPECIFIED, SPI_EXCEPTION_DISCONNECT, SPI_EXCEPTION_NO_IMPL, SPI_EXCEPTION_IO, SPI_EXCEPTION_BAD_DATA)=range(5) +@@ -731,7 +737,7 @@ + Wrapper around the low-level cspi.AccessibleComponent_ functions, + giving an OO-style API. + """ +- def getExtents (self, type=0): ++ def getExtents (self, key_type=0): + """ + Wraps cspi.AccessibleComponent_getExtents, returning an + (x,y,w,h) tuple. +@@ -741,7 +747,7 @@ + cspi.AccessibleComponent_getExtents (self.__item, &x, &y, &w, &h, type) + return (x, y, w, h) + +- def getPosition (self, type = 0): ++ def getPosition (self, key_type = 0): + """ + Wraps cspi.AccessibleComponent_getPosition, returning an + (x,y) tuple. +@@ -991,11 +997,11 @@ + Wraps cspi.AccessibleHyperlink_getObject + """ + self.__checkSelf () +- cdef Accessible object +- object = Accessible () +- object.__setItem (cspi.AccessibleHyperlink_getObject (self.__item, i)) +- object.__checkSelf () +- return object ++ cdef Accessible obj ++ obj = Accessible () ++ obj.__setItem (cspi.AccessibleHyperlink_getObject (self.__item, i)) ++ obj.__checkSelf () ++ return obj + + def getURI (self, i): + """ +@@ -1032,7 +1038,7 @@ + cspi.AccessibleImage_getImageSize(self.__item, &w, &h); + return [w, h] + +- def getImagePosition (self, type=0): ++ def getImagePosition (self, key_type=0): + """ + Wraps cspi.AccessibleImage_getImagePosition, returning a (x,y) + pair +@@ -1042,7 +1048,7 @@ + cspi.AccessibleImage_getImagePosition(self.__item, &x, &y, type) + return [x, y] + +- def getImageExtents (self, type=0): ++ def getImageExtents (self, key_type=0): + """ + Wraps cspi.AccessibleImage_getImageExtents, returning a + (x,y,w,h) tuple +@@ -1551,7 +1557,7 @@ + cdef cspi.AccessibleDeviceListener *__item + cdef public object modMasks + +- def __init__ (self, callback, eventMask = cspi.SPI_KEY_PRESSED | cspi.SPI_KEY_RELEASED): ++ def __init__ (self, callback, eventMask = cspi.SPI_KEY_PRESSED | cspi.SPI_KEY_RELEASED): + """ + Registers a python callback function to be called. + +diff -Naur pyspi-0.6.1-old/pyspi.pyx.orig pyspi-0.6.1/pyspi.pyx.orig +--- pyspi-0.6.1-old/pyspi.pyx.orig 1970-01-01 10:00:00.000000000 +1000 ++++ pyspi-0.6.1/pyspi.pyx.orig 2006-10-03 02:46:41.000000000 +1000 +@@ -0,0 +1,1592 @@ ++# Authors: ++# Zack Cerza ++# Chris Lee ++# Lawrence Lim ++# David Malcolm ++ ++cdef class Registry ++ ++cdef class Base ++cdef class EventBase ++cdef class StateSet ++cdef class Accessible (Base) ++cdef class Desktop (Accessible) ++cdef class Application (Accessible) ++cdef class Component (Accessible) ++cdef class Action (Base) ++cdef class Text (Base) ++cdef class EditableText (Text) ++cdef class Hypertext (Text) ++cdef class Hyperlink (Base) ++cdef class Image (Base) ++cdef class Value (Base) ++cdef class Selection (Base) ++cdef class Table (Base) ++cdef class Event (EventBase) ++cdef class DeviceEvent ++ ++ctypedef enum bool: ++ False = 0 ++ True ++ ++# SPIExceptionCode values: ++(SPI_EXCEPTION_UNSPECIFIED, SPI_EXCEPTION_DISCONNECT, SPI_EXCEPTION_NO_IMPL, SPI_EXCEPTION_IO, SPI_EXCEPTION_BAD_DATA)=range(5) ++ ++# SPIExceptionType values: ++(SPI_EXCEPTION_SOURCE_UNSPECIFIED, SPI_EXCEPTION_SOURCE_ACCESSIBLE, SPI_EXCEPTION_SOURCE_REGISTRY, SPI_EXCEPTION_SOURCE_DEVICE)=range(4) ++ ++# Accessible roles ++(SPI_ROLE_INVALID, SPI_ROLE_ACCEL_LABEL, SPI_ROLE_ALERT, SPI_ROLE_ANIMATION, SPI_ROLE_ARROW, SPI_ROLE_CALENDAR, SPI_ROLE_CANVAS, SPI_ROLE_CHECK_BOX, SPI_ROLE_CHECK_MENU_ITEM, SPI_ROLE_COLOR_CHOOSER, SPI_ROLE_COLUMN_HEADER, SPI_ROLE_COMBO_BOX, SPI_ROLE_DATE_EDITOR, SPI_ROLE_DESKTOP_ICON, SPI_ROLE_DESKTOP_FRAME, SPI_ROLE_DIAL, SPI_ROLE_DIALOG, SPI_ROLE_DIRECTORY_PANE, SPI_ROLE_DRAWING_AREA, SPI_ROLE_FILE_CHOOSER, SPI_ROLE_FILLER, SPI_ROLE_FONT_CHOOSER, SPI_ROLE_FRAME, SPI_ROLE_GLASS_PANE, SPI_ROLE_HTML_CONTAINER, SPI_ROLE_ICON, SPI_ROLE_IMAGE, SPI_ROLE_INTERNAL_FRAME, SPI_ROLE_LABEL, SPI_ROLE_LAYERED_PANE, SPI_ROLE_LIST, SPI_ROLE_LIST_ITEM, SPI_ROLE_MENU, SPI_ROLE_MENU_BAR, SPI_ROLE_MENU_ITEM, SPI_ROLE_OPTION_PANE, SPI_ROLE_PAGE_TAB, SPI_ROLE_PAGE_TAB_LIST, SPI_ROLE_PANEL, SPI_ROLE_PASSWORD_TEXT, SPI_ROLE_POPUP_MENU, SPI_ROLE_PROGRESS_BAR, SPI_ROLE_PUSH_BUTTON, SPI_ROLE_RADIO_BUTTON, SPI_ROLE_RADIO_MENU_ITEM, SPI_ROLE_ROOT_PANE, SPI_ROLE_ROW_HEADER, SPI_ROLE_SCROLL_BAR, SPI_ROLE_SCROLL_PANE, SPI_ROLE_SEPARATOR, SPI_ROLE_SLIDER, SPI_ROLE_SPIN_BUTTON, SPI_ROLE_SPLIT_PANE, SPI_ROLE_STATUS_BAR, SPI_ROLE_TABLE, SPI_ROLE_TABLE_CELL, SPI_ROLE_TABLE_COLUMN_HEADER, SPI_ROLE_TABLE_ROW_HEADER, SPI_ROLE_TEAROFF_MENU_ITEM, SPI_ROLE_TERMINAL, SPI_ROLE_TEXT, SPI_ROLE_TOGGLE_BUTTON, SPI_ROLE_TOOL_BAR, SPI_ROLE_TOOL_TIP, SPI_ROLE_TREE, SPI_ROLE_TREE_TABLE, SPI_ROLE_UNKNOWN, SPI_ROLE_VIEWPORT, SPI_ROLE_WINDOW, SPI_ROLE_EXTENDED, SPI_ROLE_HEADER, SPI_ROLE_FOOTER, SPI_ROLE_PARAGRAPH, SPI_ROLE_RULER, SPI_ROLE_APPLICATION, SPI_ROLE_AUTOCOMPLETE, SPI_ROLE_EDITBAR, SPI_ROLE_EMBEDDED, SPI_ROLE_LAST_DEFINED)=range(79) ++ ++# Accessible states ++(SPI_STATE_INVALID, SPI_STATE_ACTIVE, SPI_STATE_ARMED, SPI_STATE_BUSY, SPI_STATE_CHECKED, SPI_STATE_COLLAPSED, SPI_STATE_DEFUNCT, SPI_STATE_EDITABLE, SPI_STATE_ENABLED, SPI_STATE_EXPANDABLE, SPI_STATE_EXPANDED, SPI_STATE_FOCUSABLE, SPI_STATE_FOCUSED, SPI_STATE_HORIZONTAL, SPI_STATE_ICONIFIED, SPI_STATE_MODAL, SPI_STATE_MULTI_LINE, SPI_STATE_MULTISELECTABLE, SPI_STATE_OPAQUE, SPI_STATE_PRESSED, SPI_STATE_RESIZABLE, SPI_STATE_SELECTABLE, SPI_STATE_SELECTED, SPI_STATE_SENSITIVE, SPI_STATE_SHOWING, SPI_STATE_SINGLE_LINE, SPI_STATE_STALE, SPI_STATE_TRANSIENT, SPI_STATE_VERTICAL, SPI_STATE_VISIBLE, SPI_STATE_MANAGES_DESCENDANTS, SPI_STATE_INDETERMINATE) = range(32); ++ ++# Accessible relation types ++(SPI_RELATION_NULL, SPI_RELATION_LABEL_FOR, SPI_RELATION_LABELED_BY, SPI_RELATION_CONTROLLER_FOR, SPI_RELATION_CONTROLLED_BY, SPI_RELATION_MEMBER_OF, SPI_RELATION_NODE_CHILD_OF, SPI_RELATION_EXTENDED, SPI_RELATION_FLOWS_TO, SPI_RELATION_FLOWS_FROM, SPI_RELATION_SUBWINDOW_OF, SPI_RELATION_EMBEDS, SPI_RELATION_EMBEDDED_BY, SPI_RELATION_POPUP_FOR, SPI_RELATION_LAST_DEFINED) = range (15); ++ ++# AccessibleComponent layers ++(SPI_LAYER_INVALID, SPI_LAYER_BACKGROUND, SPI_LAYER_CANVAS, SPI_LAYER_WIDGET, SPI_LAYER_MDI, SPI_LAYER_POPUP, SPI_LAYER_OVERLAY, SPI_LAYER_WINDOW, SPI_LAYER_LAST_DEFINED) = range(9) ++ ++#AccessibleKeySynthType ++(SPI_KEY_PRESS, SPI_KEY_RELEASE, SPI_KEY_PRESSRELEASE, SPI_KEY_SYM, SPI_KEY_STRING) = range(5) ++ ++# AccessibleKeyListenerSyncType ++(SPI_KEYLISTENER_NOSYNC, SPI_KEYLISTENER_SYNCHRONOUS, SPI_KEYLISTENER_CANCONSUME, SPI_KEYLISTENER_ALL_WINDOWS) = range(4) ++ ++# AccessibleDeviceEventType ++SPI_KEY_PRESSED = 1<<0 ++SPI_KEY_RELEASED = 1<<1 ++SPI_BUTTON_PRESSED = 1<<2 ++SPI_BUTTON_RELEASED = 1<<3 ++ ++cdef cspi.AccessibleKeySet *SPI_KEYSET_ALL_KEYS ++SPI_KEYSET_ALL_KEYS = NULL ++ ++Accessibility_MODIFIER_SHIFT = 1 << 0 ++Accessibility_MODIFIER_SHIFTLOCK = 1 << 1 ++Accessibility_MODIFIER_CONTROL = 1 << 2 ++Accessibility_MODIFIER_ALT = 1 << 3 ++Accessibility_MODIFIER_META = 1 << 4 ++Accessibility_MODIFIER_META2 = 1 << 5 ++Accessibility_MODIFIER_META3 = 1 << 6 ++Accessibility_MODIFIER_NUMLOCK = 1 << 7 ++ ++ ++cdef object string(char * string): ++ cdef object pyString ++ pyString = string ++ cspi.SPI_freeString(string) ++ return pyString ++ ++import os ++class X11Exception(Exception): ++ def __init__(self, display = os.environ.get('DISPLAY', None)): ++ self.display = display ++ def __str__(self): ++ msg = "Cannot open display" ++ if self.display: return msg + ': ' + self.display ++ else: return msg ++ ++class AtspiException(Exception): ++ """ ++ Exceptions raised when calls to the AT-SPI C bindings return FALSE to ++ indicate failure. ++ """ ++ def __init__(self, message): ++ self.message = message ++ ++ def __str__(self): ++ return "AtspiException: %s"%self.message ++ ++class SpiException(Exception): ++ """ ++ Exceptions to be raised in response to an installed ++ SPIExceptionHandler, corresponding to a SPIException. These appear to ++ be short-lived structs, so we gather all applicable data immediately ++ """ ++ def __init__(self, is_fatal, sourceType, exceptionCode, description): ++ # print "got to __init__" ++ self.fatal = is_fatal ++ self.sourceType = sourceType ++ self.exceptionCode = exceptionCode ++ self.description = description ++ ++ # print "leaving __init__" ++ # print self.fatal ++ # print self.sourceType ++ # print self.exceptionCode ++ # print self.description ++ ++ def __str__(self): ++ if self.fatal: ++ fatalStr = "Fatal" ++ else: ++ fatalStr = "Non-fatal" ++ result = '%s SPIException: type:%s source:%s "%s"'%(fatalStr, self.sourceType, self.exceptionCode, self.description) ++ return result ++ ++cdef make_exception(cspi.SPIException *err, cspi.SPIBoolean is_fatal): ++ # Don't attempt to use SPIAccessibleException_getSource; this is error ++ # handling code, we don't want to introduce further complications ++ return SpiException(is_fatal, ++ cspi.SPIException_getSourceType (err), ++ cspi.SPIException_getExceptionCode (err), ++ cspi.SPIException_getDescription (err)) ++ ++ ++def event_main(): ++ cspi.SPI_event_main() ++ ++def event_quit(): ++ cspi.SPI_event_quit() ++ ++cdef cspi.SPIBoolean exception_handler (cspi.SPIException *err, cspi.SPIBoolean is_fatal) except *: ++ # print "got exception!!!" ++ e = make_exception(err, is_fatal) ++ raise e ++ ++# at-spi-/cpsi.h contains: ++# typedef SPIBoolean (*SPIExceptionHandler) (SPIException *err, SPIBoolean is_fatal); ++# and ++# SPIBoolean SPI_exceptionHandlerPush (SPIExceptionHandler *handler); ++# There's thus an extra unnecessary level of indirection. ++# We have to jump through the following hoops to get pyrex to deal with this: ++cdef cspi.SPIExceptionHandler exception_handler_as_type ++cdef cspi.SPIExceptionHandler* exception_handler_ptr ++exception_handler_as_type = exception_handler ++exception_handler_ptr = &exception_handler_as_type ++ ++global_exception = None ++ ++cdef class Registry: ++ def __init__ (self): ++ cdef Xlib.Display *display ++ display = Xlib.XOpenDisplay(NULL) ++ if display == NULL: ++ raise X11Exception ++ else: ++ Xlib.XCloseDisplay(display) ++ ++ result = cspi.SPI_init () ++ #if result!=0: ++ # raise AtspiException("SPI_init: exit code %s" % str(result)) ++ ++ result = cspi.SPI_exceptionHandlerPush (exception_handler_ptr) ++ if not result: ++ raise AtspiException("Unable to install SPI exception handler") ++ ++ def __dealloc (self): ++ result = cspi.SPI_exit () ++ if result!=0: ++ raise AtspiException("SPI_init: exit code %s" % str(result)) ++ ++ def getDesktopCount (self): ++ return cspi.SPI_getDesktopCount() ++ ++ def getDesktop (self, index = 0): ++ cdef Desktop desktop ++ desktop = Desktop () ++ if not desktop.__setItem (cspi.SPI_getDesktop (index)): ++ return False ++ return desktop ++ ++ def getDesktopList (self): ++ # Using the bonobo.activation bindings, getDesktopList() returns a ++ # Python list of Desktop objects. The C bindings seem to do it differently, ++ # and Pyrex doesn't like that method. So we're re-implementing the function ++ # using getDesktopCount() and getDesktop() to work around that. ++ # Yay for Zack! ++ # ++ # -Zack ++ cdef Desktop desktop ++ desktops = [] ++ desktop = Desktop () ++ for i in xrange (cspi.SPI_getDesktopCount ()): ++ desktop.__setItem (cspi.SPI_getDesktop (i)) ++ desktops = desktops + [desktop] ++ return desktops ++ ++registry = Registry() ++ ++cdef class Base: ++ """ ++ Wrapper around a cspi.Accessible ++ """ ++ ++ cdef cspi.Accessible *__item ++ ++ def __new__ (self): ++ self.__item = NULL ++ ++ def __dealloc__ (self): ++ if self.__item != NULL: ++ cspi.Accessible_unref (self.__item) ++ ++ cdef bool __setItem (self, cspi.Accessible *obj): ++ if self.__item != NULL: ++ cspi.Accessible_unref (self.__item) ++ if obj != NULL: ++ self.__item = obj ++ cspi.Accessible_ref (self.__item) ++ return True ++ else: ++ return False ++ ++ def __checkSelf (self): ++ assert self.__item != NULL ++ ++# WHY OH WHY won't this work? :( ++# I need to be able to find out of two Accessible classes contain ++# the same cspi.Accessible objects. ++# ++# def isSameAs (self, base): ++# cdef bool foo ++# foo = self.__item == base.__item ++# return foo ++ ++cdef class EventBase: ++ """ ++ Wrapper around a cspi.AccessibleEvent ++ """ ++ cdef cspi.AccessibleEvent *__item ++ ++ def __new__ (self): ++ self.__item = NULL ++ ++ def __dealloc__ (self): ++ if self.__item != NULL: ++ cspi.AccessibleEvent_unref (self.__item) ++ ++ cdef bool __setItem (self, cspi.AccessibleEvent *obj): ++ if self.__item != NULL: ++ cspi.AccessibleEvent_unref (self.__item) ++ if obj != NULL: ++ self.__item = obj ++ cspi.AccessibleEvent_ref (self.__item) ++ return True ++ else: ++ return False ++ ++ def __checkSelf (self): ++ if self.__item == NULL: ++ raise AttributeError, "__item must not be NULL" ++ ++ def __getattr__ (self, attrName): ++ cdef cspi.Accessible* acc ++ cdef Accessible result ++ if attrName == "source": ++ acc = self.__item.source ++ if acc!=NULL: ++ result = Accessible () ++ result.__setItem (acc) ++ return result ++ elif attrName == "detail1": ++ detail1 = self.__item.detail1 ++ return detail1 ++ elif attrName == "detail2": ++ detail1 = self.__item.detail2 ++ return detail1 ++ elif attrName == "type": ++ return self.__item.type ++ ++cdef class StateSet: ++ """ ++ Wrapper around a cspi.AccessibleStateSet ++ """ ++ cdef cspi.AccessibleStateSet *__item ++ ++ def __new__ (self): ++ self.__item = NULL ++ ++ def __dealloc__ (self): ++ if self.__item != NULL: ++ cspi.AccessibleStateSet_unref (self.__item) ++ ++ def __checkSelf (self): ++ if self.__item == NULL: ++ raise AttributeError, "__item must not be NULL" ++ ++ cdef bool __setItem (self, cspi.AccessibleStateSet *obj): ++ if self.__item != NULL: ++ cspi.AccessibleStateSet_unref (self.__item) ++ if obj != NULL: ++ self.__item = obj ++ cspi.AccessibleStateSet_ref (self.__item) ++ return True ++ else: ++ return False ++ ++ cdef bool __contains (self, cspi.AccessibleState s): ++ self.__checkSelf () ++ return cspi.AccessibleStateSet_contains (self.__item, s) ++ ++ def contains (self, state): ++ self.__checkSelf () ++ return self.__contains(state) ++ ++ cdef void __add (self, cspi.AccessibleState s): ++ self.__checkSelf () ++ cspi.AccessibleStateSet_add(self.__item, s) ++ ++ def add (self, state): ++ self.__checkSelf () ++ self.__add (state) ++ ++ cdef void __remove (self, cspi.AccessibleState s): ++ self.__checkSelf () ++ cspi.AccessibleStateSet_remove (self.__item, s) ++ ++ def remove (self, state): ++ self.__checkSelf () ++ self.__remove (state) ++ ++ def __str__ (self): ++ self.__checkSelf () ++ return str(self.states) ++ ++ def __getattr__(self, name): ++ if name == "states": ++ result = [] ++ for state in range(SPI_STATE_INVALID, SPI_STATE_INDETERMINATE): ++ if self.contains(state): ++ result.append(state) ++ return result ++ else: ++ raise AttributeError, name ++ ++cdef class Relation: ++ """ ++ Wrapper around a cspi.AccessibleRelation ++ """ ++ cdef cspi.AccessibleRelation *__item ++ ++ def __new__ (self): ++ self.__item = NULL ++ ++ def __dealloc__ (self): ++ if self.__item != NULL: ++ cspi.AccessibleRelation_unref (self.__item) ++ ++ def __checkSelf (self): ++ if self.__item == NULL: ++ raise AttributeError, "__item must not be NULL" ++ ++ def __str__ (self): ++ self.__checkSelf () ++ return "relation %s -> %s"%(self.getRelationType (), self.getTargets()) ++ ++ def __repr__ (self): ++ self.__checkSelf () ++ return "relation %s -> %s"%(self.getRelationType (), self.getTargets()) ++ ++ cdef bool __setItem (self, cspi.AccessibleRelation *obj): ++ if self.__item != NULL: ++ cspi.AccessibleRelation_unref (self.__item) ++ if obj != NULL: ++ self.__item = obj ++ cspi.AccessibleRelation_ref (self.__item) ++ return True ++ else: ++ return False ++ ++ def getNTargets (self): ++ """ ++ Wrapper around cspi.AccessibleRelation_getNTargets ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleRelation_getNTargets (self.__item) ++ ++ def getTarget (self, i): ++ """ ++ Wrapper around cspi.AccessibleRelation_getTarget ++ """ ++ self.__checkSelf () ++ cdef Accessible target ++ target = Accessible () ++ target.__setItem (cspi.AccessibleRelation_getTarget (self.__item, i)) ++ target.__checkSelf () ++ return target ++ ++ def getTargets (self): ++ """ ++ Gets the targets of this AccessibleRelation as a list of atspi.Accessible ++ """ ++ self.__checkSelf () ++ result = [] ++ count = self.getNTargets() ++ for i in range(count): ++ result.append(self.getTarget(i)) ++ return result ++ ++ def getRelationType (self): ++ """ ++ Wrapper around cspi.AccessibleRelation_getRelationType ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleRelation_getRelationType (self.__item) ++ ++cdef class Accessible (Base): ++ """ ++ Wrapper around cspi.Accessible ++ """ ++ def __getattr__ (self, name): ++ if name == "name": ++ return self.getName () ++ elif name == "role": ++ return self.getRole () ++ elif name == "roleName": ++ return self.getRoleName () ++ elif name == "description": ++ return self.getDescription () ++ elif name == "parent": ++ return self.getParent () ++ elif name == "childCount": ++ return self.getChildCount () ++ elif name == "indexInParent": ++ return self.getIndexInParent () ++ elif name == "stateSet": ++ return self.getStateSet () ++ else: ++ raise AttributeError, name ++ ++ def getName (self): ++ """ ++ Wrapper around cspi.Accessible_getName ++ """ ++ self.__checkSelf() ++ return string(cspi.Accessible_getName(self.__item)) ++ ++ def getDescription (self): ++ """ ++ Wrapper around cspi.Accessible_getDescription ++ """ ++ self.__checkSelf() ++ return string(cspi.Accessible_getDescription(self.__item)) ++ ++ def getParent (self): ++ """ ++ Wrapper around cspi.Accessible_getParent, returning an ++ atspi.Accessible or None ++ """ ++ self.__checkSelf() ++ cdef Accessible parent ++ cdef cspi.Accessible* spiParent ++ ++ spiParent = cspi.Accessible_getParent (self.__item) ++ if spiParent!=NULL: ++ parent = Accessible () ++ parent.__setItem (spiParent) ++ parent.__checkSelf () ++ return parent ++ else: ++ return None ++ ++ def getChildAtIndex (self, index): ++ """ ++ Wrapper around cspi.Accessible_getChildAtIndex, returning an ++ atspi.Accessible, atspi.Application, or None ++ """ ++ self.__checkSelf() ++ cdef int i ++ i = index ++ ++ # This hairiness is due to the fact that Pyrex doesn't allow cdefs ++ # inside if blocks. ++ ++ cdef cspi.Accessible* spiChild ++ spiChild = cspi.Accessible_getChildAtIndex (self.__item, i) ++ # Workaround for GNOME bug #321273 ++ # http://bugzilla.gnome.org/show_bug.cgi?id=321273 ++ if spiChild == NULL: return None ++ ++ cdef object child ++ cdef Application app ++ cdef Accessible acc ++ cdef Text text ++ ++ if cspi.Accessible_isApplication (spiChild): ++ app = Application () ++ app.__setItem (spiChild) ++ child = app ++ else: ++ acc = Accessible () ++ acc.__setItem (spiChild) ++ child = acc ++ ++ return child ++ ++ def getIndexInParent (self): ++ """ ++ Wrapper around cspi.Accessible_getIndexInParent ++ """ ++ self.__checkSelf() ++ return cspi.Accessible_getIndexInParent (self.__item) ++ ++ def getRole (self): ++ """ ++ Wrapper around cspi.Accessible_getRole ++ """ ++ self.__checkSelf() ++ return cspi.Accessible_getRole (self.__item) ++ ++ def getRoleName (self): ++ """ ++ Wrapper around cspi.Accessible_getRoleName ++ """ ++ self.__checkSelf() ++ return string(cspi.Accessible_getRoleName (self.__item)) ++ ++ def getChildCount (self): ++ """ ++ Wrapper around cspi.Accessible_getChildCount ++ """ ++ self.__checkSelf() ++ return cspi.Accessible_getChildCount (self.__item) ++ ++ def getStateSet (self): ++ """ ++ Wrapper around cspi.Accessible_getStateSet, returning an ++ atspi.StateSet ++ """ ++ self.__checkSelf() ++ cdef StateSet set ++ set = StateSet() ++ set.__setItem (cspi.Accessible_getStateSet (self.__item)) ++ return set ++ ++ def getInterface (self, interface): ++ """ ++ This is NOT part of cspi, it is just for compatibility with ++ the bonobo bindings and will probably go away soon. ++ """ ++ self.__checkSelf() ++ return getattr(self, "get%s" % interface) () ++ ++ def getAction (self): ++ """ ++ Wrapper around cspi.Accessible_getAction, returning ++ an atspi.Action or None ++ """ ++ self.__checkSelf() ++ cdef Action action ++ action = Action () ++ action.__setItem (cspi.Accessible_getAction (self.__item)) ++ if action.__item != NULL: ++ return action ++ ++ def getText (self): ++ """ ++ Wrapper around cspi.Accessible_getText, returning an atspi.Text ++ or None ++ """ ++ self.__checkSelf () ++ cdef Text text ++ text = Text () ++ text.__setItem (cspi.Accessible_getText (self.__item)) ++ if text.__item != NULL: ++ return text ++ ++ def getEditableText (self): ++ """ ++ Wrapper around cspi.Accessible_getText, returning an ++ atspi.EditableText or None ++ """ ++ self.__checkSelf () ++ cdef EditableText etext ++ etext = EditableText () ++ etext.__setItem (cspi.Accessible_getEditableText (self.__item)) ++ if etext.__item != NULL: ++ return etext ++ ++ def getHypertext (self): ++ """ ++ Wrapper around cspi.Accessible_getHypertext, returning an ++ atspi.Hypertext or None ++ """ ++ self.__checkSelf () ++ cdef Hypertext hypertext ++ hypertext = Hypertext () ++ hypertext.__setItem (cspi.Accessible_getHypertext (self.__item)) ++ if hypertext.__item != NULL: ++ return hypertext ++ ++ def getImage (self): ++ """ ++ Wrapper around cspi.Accessible_getImage, returning an ++ atspi.Image or None ++ """ ++ self.__checkSelf () ++ cdef Image image ++ image = Image () ++ image.__setItem (cspi.Accessible_getImage (self.__item)) ++ if image.__item != NULL: ++ return image ++ ++ def getValue (self): ++ """ ++ Wrapper around cspi.Accessible_getValue, returning an ++ atspi.Value or None ++ """ ++ self.__checkSelf () ++ cdef Value value ++ value = Value () ++ value.__setItem (cspi.Accessible_getValue (self.__item)) ++ if value.__item != NULL: ++ return value ++ ++ def getSelection (self): ++ """ ++ Wrapper around cspi.Accessible_getSelection, returning an ++ atspi.Selection or None ++ """ ++ self.__checkSelf () ++ cdef Selection selection ++ selection = Selection () ++ selection.__setItem (cspi.Accessible_getSelection (self.__item)) ++ if selection.__item != NULL: ++ return selection ++ ++ def getComponent (self): ++ """ ++ Wrapper around cspi.Accessible_getComponent, returning an ++ atspi.Component or None ++ """ ++ self.__checkSelf () ++ cdef Component component ++ component = Component () ++ component.__setItem (cspi.Accessible_getComponent (self.__item)) ++ if component.__item != NULL: ++ return component ++ ++ def getRelationSet (self): ++ """ ++ Wraps Accessible_getRelationSet, returning a list ++ of atspi.Relation ++ """ ++ # looking at at-poke, result from C API appears to be a NULL-terminated list of pointers, and that we should free the buffer ++ self.__checkSelf () ++ cdef Relation relation ++ ++ relations = [] ++ cdef cspi.AccessibleRelation **relationSet ++ relationSet = cspi.Accessible_getRelationSet (self.__item) ++ ++ i=0 ++ while relationSet[i]: ++ relation = Relation () ++ relation.__setItem (relationSet[i]) ++ relations.append(relation) ++ i=i+1 ++ cspi.free (relationSet) ++ ++ return relations ++ ++ ++cdef class Desktop (Accessible): ++ pass ++ ++ ++cdef class Application (Accessible): ++ """ ++ Wrapper around the low-level cspi.AccessibleApplication_ functions, ++ giving an OO-style API. ++ """ ++ def getToolkit (self): ++ """ ++ Wraps AccessibleApplication_getToolkitName, returning a string ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleApplication_getToolkitName (self.__item) ++ ++ def getVersion (self): ++ """ ++ Wraps AccessibleApplication_getVersion, returning a string ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleApplication_getVersion(self.__item) ++ ++ def getID (self): ++ """ ++ Wraps AccessibleApplication_getID, returning a string ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleApplication_getID (self.__item) ++ ++ def pause (self): ++ """ ++ Wraps AccessibleApplication_pause ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleApplication_pause (self.__item) ++ ++ def resume (self): ++ """ ++ Wraps AccessibleApplication_resume ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleApplication_resume (self.__item) ++ ++cdef class Component (Accessible): ++ """ ++ Wrapper around the low-level cspi.AccessibleComponent_ functions, ++ giving an OO-style API. ++ """ ++ def getExtents (self, type=0): ++ """ ++ Wraps cspi.AccessibleComponent_getExtents, returning an ++ (x,y,w,h) tuple. ++ """ ++ self.__checkSelf () ++ cdef long x, y, w, h ++ cspi.AccessibleComponent_getExtents (self.__item, &x, &y, &w, &h, type) ++ return (x, y, w, h) ++ ++ def getPosition (self, type = 0): ++ """ ++ Wraps cspi.AccessibleComponent_getPosition, returning an ++ (x,y) tuple. ++ """ ++ self.__checkSelf () ++ cdef long x, y ++ cspi.AccessibleComponent_getPosition (self.__item, &x, &y, type) ++ return (x, y) ++ ++ def getSize (self): ++ """ ++ Wraps cspi.AccessibleComponent_getSize, returning a ++ (w,h) tuple. ++ """ ++ self.__checkSelf () ++ cdef long w, h ++ cspi.AccessibleComponent_getSize (self.__item, &w, &h) ++ return (w, h) ++ ++ def getLayer (self): ++ """ ++ Wraps cspi.AccessibleComponent_getLayer, returning an ++ AccessibleComponentLayer. ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleComponent_getLayer (self.__item) ++ ++ def grabFocus (self): ++ """ ++ Wraps cspi.AccessibleComponent_grabFocus, raising AtspiException ++ if it fails ++ """ ++ self.__checkSelf () ++ if not cspi.AccessibleComponent_grabFocus (self.__item): ++ raise AtspiException("AccessibleComponent_grabFocus") ++ ++ def getMDIZOrder (self): ++ """ ++ Wraps cspi.AccessibleComponent_getMDIZOrder, returning an integer. ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleComponent_getMDIZOrder(self.__item) ++ ++cdef class Action (Base): ++ """ ++ Wrapper around the low-level cspi.AccessibleAction_ functions, ++ giving an OO-style API. ++ """ ++ def __getattr__ (self, name): ++ if name == "nActions": ++ return self.getNActions () ++ else: ++ raise AttributeError, name ++ ++ def getNActions (self): ++ """ ++ Wraps cspi.AccessibleAction_getNActions ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleAction_getNActions (self.__item) ++ ++ def doAction (self, index): ++ """ ++ Wraps cspi.AccessibleAction_doAction ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleAction_doAction (self.__item, index) ++ ++ def getKeyBinding (self, index): ++ """ ++ Wraps cspi.AccessibleAction_getKeyBinding ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleAction_getKeyBinding (self.__item, index) ++ ++ def getName (self, index): ++ """ ++ Wraps cspi.AccessibleAction_getName ++ """ ++ self.__checkSelf () ++ return string(cspi.AccessibleAction_getName (self.__item, index)) ++ ++ def getDescription (self, index): ++ """ ++ Wraps cspi.AccessibleAction_getDescription ++ """ ++ self.__checkSelf () ++ return string(cspi.AccessibleAction_getDescription (self.__item, index)) ++ ++ ++cdef class Text (Base): ++ """ ++ Wrapper around the low-level cspi.AccessibleText_ functions, ++ giving an OO-style API. ++ """ ++ def addSelection (self, startOffset, endOffset): ++ """ ++ Wraps cspi.AccessibleText_addSelection ++ """ ++ self.__checkSelf () ++ if not cspi.AccessibleText_addSelection (self.__item, startOffset, endOffset): ++ raise AtspiException("AccessibleText_addSelection") ++ ++ ++ #def getAttributes (self, offset, startOffset, endOffset): ++ # self.__checkSelf () ++ # return cspi.AccessibleText_getAttributes (self.__item, offset, startOffset, endOffset) ++ def getCaretOffset (self): ++ """ ++ Wraps cspi.AccessibleText_getCaretOffset ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleText_getCaretOffset (self.__item) ++ ++ def getCharacterCount (self): ++ """ ++ Wraps cspi.AccessibleText_getCharacterCount ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleText_getCharacterCount (self.__item) ++ ++ def getNSelections (self): ++ """ ++ Wraps cspi.AccessibleText_getNSelections ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleText_getNSelections (self.__item) ++ ++ #def getSelection (self, selectionNum, startOffset, endOffset): ++ # self.__checkSelf () ++ # return cspi.AccessibleText_getSelection (self.__item, selectionNum, startOffset, endOffset) ++ ++ def getText (self, startOffset, endOffset): ++ """ ++ Wraps cspi.AccessibleText_getText ++ """ ++ self.__checkSelf () ++ return string(cspi.AccessibleText_getText (self.__item, startOffset, endOffset)) ++ ++ def removeSelection (self, selectionNum): ++ """ ++ Wraps cspi.AccessibleText_removeSelection, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ if not cspi.AccessibleText_removeSelection (self.__item, selectionNum): ++ raise AtspiException("AccessibleText_removeSelection") ++ ++ def setSelection (self, selectionNum, startOffset, endOffset): ++ """ ++ Wraps cspi.AccessibleText_setSelection, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ if not cspi.AccessibleText_setSelection (self.__item, selectionNum, startOffset, endOffset): ++ raise AtspiException("AccessibleText_setSelection") ++ ++ def setCaretOffset (self, position): ++ """ ++ Wraps cspi.AccessibleText_setCaretOffset, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ if not cspi.AccessibleText_setCaretOffset (self.__item, position): ++ raise AtspiException("AccessibleText_setCaretOffset") ++ ++cdef class EditableText (Text): ++ """ ++ Wrapper around the low-level cspi.AccessibleEditableText_ functions, ++ giving an OO-style API. ++ """ ++ def setTextContents (self, newContents): ++ """ ++ Wraps cspi.AccessibleEditableText_setTextContents, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ if not cspi.AccessibleEditableText_setTextContents (self.__item, newContents): ++ raise AtspiException("AccessibleEditableText_setTextContents") ++ ++ def setAttributes (self, attributes, startOffset, endOffset): ++ """ ++ Wraps cspi.AccessibleEditableText_setAttributes, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ if not cspi.AccessibleEditableText_setAttributes (self.__item, attributes, startOffset, endOffset): ++ raise AtspiException("AccessibleEditableText_setAttributes") ++ ++ def insertText (self, position, text): ++ """ ++ Wraps cspi.AccessibleEditableText_insertText, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ if not cspi.AccessibleEditableText_insertText (self.__item, position, text, cspi.strlen(text)): ++ raise AtspiException("AccessibleEditableText_insertText") ++ ++cdef class Hypertext (Text): ++ """ ++ Wrapper around the low-level cspi.AccessibleHypertext_ functions, ++ giving an OO-style API. ++ """ ++ def getNLinks (self): ++ """ ++ Wraps cspi.AccessibleHypertext_getNLinks, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleHypertext_getNLinks (self.__item) ++ ++ def getLink (self, linkIndex): ++ """ ++ Wraps cspi.AccessibleHypertext_getLink, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ cdef Hyperlink hyperlink ++ hyperlink = Hyperlink () ++ hyperlink.__setItem (cspi.AccessibleHypertext_getLink (self.__item, linkIndex)) ++ if hyperlink.__item != NULL: ++ return hyperlink ++ ++ def getLinkIndex (self, characterOffset): ++ """ ++ Wraps cspi.AccessibleHypertext_getLinkIndex, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleHypertext_getLinkIndex (self.__item, characterOffset) ++ ++cdef class Hyperlink (Base): ++ """ ++ Wrapper around the low-level cspi.AccessibleHyperlink_ functions, ++ giving an OO-style API. ++ """ ++ def getNAnchors (self): ++ """ ++ Wraps cspi.AccessibleHyperlink_getNAnchors, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleHyperlink_getNAnchors (self.__item) ++ ++ def getIndexRange (self): ++ """ ++ Wraps cspi.AccessibleHyperlink_getIndexRange, returning [startIndex, endIndex] pair ++ """ ++ self.__checkSelf () ++ cdef long startIndex, endIndex ++ cspi.AccessibleHyperlink_getIndexRange(self.__item, &startIndex, &endIndex) ++ return [startIndex, endIndex] ++ ++ ++ def getObject (self, i): ++ """ ++ Wraps cspi.AccessibleHyperlink_getObject ++ """ ++ self.__checkSelf () ++ cdef Accessible object ++ object = Accessible () ++ object.__setItem (cspi.AccessibleHyperlink_getObject (self.__item, i)) ++ object.__checkSelf () ++ return object ++ ++ def getURI (self, i): ++ """ ++ Wraps cspi.AccessibleHyperlink_getURI, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleHyperlink_getURI (self.__item, i) ++ ++ def isValid (self): ++ """ ++ Wraps cspi.AccessibleHyperlink_isValid, raising AtspiException if it fails ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleHyperlink_isValid (self.__item) ++ ++cdef class Image (Base): ++ """ ++ Wrapper around the low-level cspi.AccessibleImage_ functions, ++ giving an OO-style API. ++ """ ++ def getImageDescription (self): ++ """ ++ Wraps cspi.AccessibleImage_getImageDescription ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleImage_getImageDescription (self.__item) ++ ++ def getImageSize (self): ++ """ ++ Wraps cspi.AccessibleImage_getImageSize, returning a (w,h) pair ++ """ ++ self.__checkSelf () ++ cdef long w, h ++ cspi.AccessibleImage_getImageSize(self.__item, &w, &h); ++ return [w, h] ++ ++ def getImagePosition (self, type=0): ++ """ ++ Wraps cspi.AccessibleImage_getImagePosition, returning a (x,y) ++ pair ++ """ ++ self.__checkSelf () ++ cdef long x, y ++ cspi.AccessibleImage_getImagePosition(self.__item, &x, &y, type) ++ return [x, y] ++ ++ def getImageExtents (self, type=0): ++ """ ++ Wraps cspi.AccessibleImage_getImageExtents, returning a ++ (x,y,w,h) tuple ++ """ ++ self.__checkSelf () ++ cdef long x, y, w, h ++ cspi.AccessibleImage_getImageExtents(self.__item, &x, &y, &w, &h, type) ++ return [x, y, w, h] ++ ++cdef class Value (Base): ++ """ ++ Wrapper around the low-level cspi.AccessibleValue_ functions, ++ giving an OO-style API. ++ """ ++ def getMinimumValue (self): ++ """ ++ Wraps cspi.AccessibleValue_getMinimumValue ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleValue_getMinimumValue(self.__item) ++ ++ def getCurrentValue (self): ++ """ ++ Wraps cspi.AccessibleValue_getMinimumValue ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleValue_getCurrentValue(self.__item) ++ ++ def getMaximumValue (self): ++ """ ++ Wraps cspi.AccessibleValue_getMinimumValue ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleValue_getMaximumValue(self.__item) ++ ++ def setCurrentValue (self, newValue): ++ """ ++ Wraps cspi.AccessibleValue_setCurrentValue ++ """ ++ self.__checkSelf () ++ if not cspi.AccessibleValue_setCurrentValue (self.__item, newValue): ++ raise AtspiException("AccessibleValue_setCurrentValue") ++ ++cdef class Selection (Base): ++ """ ++ Wrapper around the low-level cspi.AccessibleSelection_ functions, ++ giving an OO-style API. ++ """ ++ ++ def getNSelectedChildren (self): ++ """ ++ Wraps cspi.AccessibleSelection_getNSelectedChildren ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleSelection_getNSelectedChildren (self.__item) ++ ++ def getSelectedChild (self, index): ++ """ ++ Wraps cspi.AccessibleSelection_getSelectedChild ++ """ ++ self.__checkSelf () ++ ++ cdef cspi.Accessible* spiChild ++ spiChild = cspi.AccessibleSelection_getSelectedChild (self.__item, index) ++ ++ assert spiChild != NULL ++ ++ cdef object child ++ cdef Application app ++ cdef Accessible acc ++ cdef Text text ++ ++ if cspi.Accessible_isApplication (spiChild): ++ app = Application () ++ app.__setItem (spiChild) ++ child = app ++ else: ++ acc = Accessible () ++ acc.__setItem (spiChild) ++ child = acc ++ ++ return child ++ ++ def selectChild (self, index): ++ """ ++ Wraps cspi.AccessibleSelection_selectChild ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleSelection_selectChild (self.__item, index) ++ ++ def deselectSelectedChild (self, index): ++ """ ++ Wraps cspi.AccessibleSelection_deselectSelectedChild ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleSelection_deselectSelectedChild (self.__item, index) ++ ++ def isChildSelected (self, index): ++ """ ++ Wraps cspi.AccessibleSelection_isChildSelected ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleSelection_isChildSelected (self.__item, index) ++ ++ def selectAll (self): ++ """ ++ Wraps cspi.AccessibleSelection_selectAll ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleSelection_selectAll( self.__item) ++ ++ def clearSelection (self): ++ """ ++ Wraps cspi.AccessibleSelection_clearSelection ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleSelection_clearSelection (self.__item) ++ ++cdef class Table (Base): ++ """ ++ Wrapper around the low-level cspi.AccessibleTable_ functions, ++ giving an OO-style API. ++ """ ++ ++ # def getTableAccessibleAt (self, row, column): ++ # def getTableCaption (self): ++ ++ def getTableColumnAtIndex (self, index): ++ """ ++ Wraps cspi.AccessibleTable_getColumnAtIndex ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getColumnAtIndex(self.__item, index) ++ ++ def getTableColumnDescription (self, column): ++ """ ++ Wraps cspi.AccessibleTable_getColumnDescription ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getColumnDescription(self.__item, column) ++ ++ def getTableColumnExtentAt (self, row, column): ++ """ ++ Wraps cspi.AccessibleTable_getColumnExtentAt ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getColumnExtentAt(self.__item, row, column) ++ ++ # def getTableColumnHeader (self, column): ++ ++ def getTableIndexAt (self, row, column): ++ """ ++ Wraps cspi.AccessibleTable_getIndexAt ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getIndexAt(self.__item, row, column) ++ ++ def getTableNColumns (self): ++ """ ++ Wraps cspi.AccessibleTable_getNColumns ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getNColumns(self.__item) ++ ++ def getTableNRows (self): ++ """ ++ Wraps cspi.AccessibleTable_getNRows ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getNRows(self.__item) ++ ++ def getTableNSelectedColumns (self): ++ """ ++ Wraps cspi.AccessibleTable_getNSelectedColumns ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getNSelectedColumns(self.__item) ++ ++ def getTableNSelectedRows (self): ++ """ ++x Wraps cspi.AccessibleTable_getNSelectedRows ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getNSelectedRows(self.__item) ++ ++ def getTableRowAtIndex (self, index): ++ """ ++ Wraps cspi.AccessibleTable_getRowAtIndex ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getRowAtIndex(self.__item, index) ++ ++ def getTableRowDescription (self, row): ++ """ ++ Wraps cspi.AccessibleTable_getRowDescription ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getRowDescription(self.__item, row) ++ ++ def getTableRowExtentAt (self, row, column): ++ """ ++ Wraps cspi.AccessibleTable_getRowExtentAt ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_getRowExtentAt(self.__item, row, column) ++ ++ # def getTableRowHeader (self, row): ++ # def getTableSelectedRows (self, **selectedRows): - Not sure if the variable which is a pointer to a pointer is acceptable ++ # def getTableSelectedColumns (self, **selectedColumns): - Same issue as above ++ # def getTableSummary (self): ++ ++ def isTableColumnSelected (self, column): ++ """ ++ Wraps cspi.AccessibleTable_isColumnSelected ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_isColumnSelected(self.__item, column) ++ ++ def isTableRowSelected (self, row): ++ """ ++ Wraps cspi.AccessibleTable_isRowSelected ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_isRowSelected(self.__item, row) ++ ++ def isTableSelected (self, row, column): ++ """ ++ Wraps cspi.AccessibleTable_isSelected ++ """ ++ self.__checkSelf () ++ return cspi.AccessibleTable_isSelected(self.__item, row, column) ++ ++ ++cdef class Event (EventBase): ++ #def AccessibleEventListener* SPI_createAccessibleEventListener (AccessibleEventListenerCB callback, void *user_data) ++ #void AccessibleEventListener_unref (AccessibleEventListener *listener) ++ #SPIBoolean AccessibleEventListener_addCallback (AccessibleEventListener *listener, AccessibleEventListenerCB callback, void *user_data) ++ #SPIBoolean AccessibleEventListener_removeCallback (AccessibleEventListener *listener, AccessibleEventListenerCB callback) ++ ++ #Accessible* AccessibleActiveDescendantChangedEvent_getActiveDescendant (AccessibleEvent *event) ++ #Accessible* AccessibleChildChangedEvent_getChildAccessible (AccessibleEvent *event) ++ ++ def getDescriptionChangedEventDescriptionString (self): ++ self.__checkSelf() ++ return string(cspi.AccessibleDescriptionChangedEvent_getDescriptionString(self.__item)) ++ ++ def getNameChangedEventNameString (self): ++ self.__checkSelf() ++ return string(cspi.AccessibleNameChangedEvent_getNameString(self.__item)) ++ ++ # Accessible* AccessibleParentChangedEvent_getParentAccessible (AccessibleEvent *event) ++ ++ def getTableCaptionChangedEventCaptionString(self): ++ self.__checkSelf() ++ return string(cspi.AccessibleTableCaptionChangedEvent_getCaptionString(self.__item)) ++ ++ def getTableColumnDescriptionChangedEventDescriptionString(self): ++ self.__checkSelf () ++ return string(cspi.AccessibleTableColumnDescriptionChangedEvent_getDescriptionString(self.__item)) ++ ++ # Accessible* AccessibleTableHeaderChangedEvent_getHeaderAccessible (AccessibleEvent *event) ++ ++ def getTableRowDescriptionChangedEventDescriptionString(self): ++ self.__checkSelf () ++ return string(cspi.AccessibleTableRowDescriptionChangedEvent_getDescriptionString(self.__item)) ++ ++ #Accessible* AccessibleTableSummaryChangedEvent_getSummaryAccessible (AccessibleEvent *event) ++ ++ def getTextChangedEventChangeString (self): ++ self.__checkSelf () ++ return string(cspi.AccessibleTextChangedEvent_getChangeString(self.__item)) ++ ++ def getTextSelectionChangedEventSelectionString (self): ++ self.__checkSelf () ++ return string(cspi.AccessibleTextSelectionChangedEvent_getSelectionString(self.__item)) ++ ++ def getWindowEventTitleString (self): ++ self.__checkSelf () ++ return string(cspi.AccessibleWindowEvent_getTitleString(self.__item)) ++ ++class EventGenerator: ++ """ ++ Wrapper layer around SPI_generateKeyboardEvent and ++ SPI_generateMouseEvent, used for generating input events. ++ ++ Use AccessibleAction in preference to this. ++ """ ++ def injectKeyboardString (self, string): ++ """ ++ Inject a string as if it had been typed using an input method. ++ """ ++ # Seems to only work if you do it one character at a time... ++ for char in string: ++ self.__generateKeystringEvent (str(char), cspi.SPI_KEY_STRING) ++ ++ def __keyStringToKeyCode(self, keyString): ++ cdef Xlib.Display *display ++ display = Xlib.XOpenDisplay(NULL) ++ ++ cdef Xlib.KeySym sym ++ sym = Xlib.XStringToKeysym(keyString) ++ cdef Xlib.KeyCode code ++ code = Xlib.XKeysymToKeycode(display, sym) ++ ++ #print str(keyString), str(int(sym)), code ++ ++ Xlib.XCloseDisplay(display) ++ return int(code) ++ ++ def generateKeyCombo (self, keyStrings): ++ modifiers = keyStrings[:-1] ++ finalKey = keyStrings[-1] ++ ++ for modifier in modifiers: ++ code = self.__keyStringToKeyCode(modifier) ++ self.generateKeyboardEvent(code, '', cspi.SPI_KEY_PRESS) ++ ++ code = self.__keyStringToKeyCode(finalKey) ++ self.generateKeyboardEvent(code, '', cspi.SPI_KEY_PRESSRELEASE) ++ ++ for modifier in modifiers: ++ code = self.__keyStringToKeyCode(modifier) ++ self.generateKeyboardEvent(code, '', cspi.SPI_KEY_RELEASE) ++ ++ ++ def __generateKeyvalEvent (self, keyval, synthType): ++ self.generateKeyboardEvent (keyval, None, synthType) ++ ++ def __generateKeystringEvent (self, keystring, synthType): ++ self.generateKeyboardEvent (0, keystring, synthType) ++ ++ def generateKeyboardEvent (self, keyval, keystring, synthType): ++ if not cspi.SPI_generateKeyboardEvent (keyval, keystring, synthType): ++ raise AtspiException("SPI_generateKeyboardEvent") ++ ++ def click (self, x, y, button): ++ """ ++ Synthesize a mouse button click at (x,y) ++ """ ++ self.__generateButtonEvent (x, y, button, "c") ++ ++ def doubleClick (self, x, y, button): ++ """ ++ Synthesize a mouse button double-click at (x,y) ++ """ ++ self.__generateButtonEvent (x, y, button, "d") ++ ++ def press (self, x, y, button): ++ """ ++ Synthesize a mouse button press at (x,y) ++ """ ++ self.__generateButtonEvent (x, y, button, "p") ++ ++ def release (self, x, y, button): ++ """ ++ Synthesize a mouse button release at (x,y) ++ """ ++ self.__generateButtonEvent (x, y, button, "r") ++ ++ def absoluteMotion (self, x, y): ++ """ ++ Synthesize mouse absolute motion to (x,y) ++ """ ++ self.__generateEvent (x, y, "abs") ++ ++ def relativeMotion (self, x, y): ++ """ ++ Synthesize mouse relative motion of (x,y) ++ """ ++ self.__generateEvent (x, y, "rel") ++ ++ def drag (self, fromXY, toXY, button): ++ """ ++ Synthesize a drag (press, move and release) from (x,y) to (x,y). ++ ++ These are absolute screen coordinates ++ """ ++ (x,y) = fromXY ++ self.press (x, y, button) ++ ++ (x,y) = toXY ++ self.absoluteMotion(x,y) ++ ++ self.release (x, y, button) ++ ++ def __generateEvent (self, x, y, name): ++ """ ++ Thin wrapper around SPI_generateMouseEvent. ++ ++ Event names: b1p = button 1 press; b2r = button 2 release; ++ b3c = button 3 click; b2d = button 2 double-click; ++ abs = absolute motion; rel = relative motion. ++ """ ++ if not cspi.SPI_generateMouseEvent (x, y, name): ++ raise AtspiException("Error generating mouse event") ++ ++ def __generateButtonEvent (self, x, y, button, suffix): ++ self.__generateEvent (x, y, self.__generateButtonName(button)+suffix) ++ ++ def __generateButtonName(self, button): ++ if button==1: ++ return "b1" ++ elif button==2: ++ return "b2" ++ elif button==3: ++ return "b3" ++ else: raise ValueError, "Unknown button" ++ ++# We use this C function to marshal a call to a python function. The Python callback ++# function is installed as the userdata of this C callback function. See the ++# "cheesefinder" demo in the Pyrex sources. ++# We ignore the "const"ness of the AccessibleEvent ++cdef void marshalAccessibleEventCallback (cspi.AccessibleEvent *event, void *python_fn) except *: ++ e = Event() ++ EventBase.__setItem(e, event) ++ (python_fn) (e) ++ ++cdef class EventListener: ++ """ ++ Wrapper around the low-level cspi.AccessibleEventListener_ functions, ++ giving an OO-style API. ++ """ ++ cdef cspi.AccessibleEventListener *__item ++ cdef public object eventTypes ++ ++ def __init__ (self, callback, eventTypes): ++ """ ++ Registers a python callback function to be called. ++ The callback is expected to have one input, of type atspi.Event, and no return value. ++ See documentation of SPI_registerGlobalEventListener for the event names ++ """ ++ self.eventTypes = eventTypes ++ self.__item = cspi.SPI_createAccessibleEventListener (marshalAccessibleEventCallback, callback) ++ for eventType in self.eventTypes: ++ #char *e ++ e = eventType ++ if not cspi.SPI_registerGlobalEventListener (self.__item, e): ++ raise AtspiException("Unable to register event listener") ++ ++ def deregister(self): ++ for eventType in self.eventTypes: ++ cspi.SPI_deregisterGlobalEventListener(self.__item, eventType) ++ ++ def __dealloc__ (self): ++ if self.__item != NULL: ++ self.deregister() ++ cspi.AccessibleEventListener_unref (self.__item) ++ ++ def __checkSelf (self): ++ if self.__item == NULL: ++ raise AttributeError, "__item must not be NULL" ++ ++cdef class DeviceEvent: ++ """ ++ Wrapper around a cspi.AccessibleDeviceEvent ++ """ ++ cdef cspi.AccessibleDeviceEvent *__item ++ cdef public object keyID ++ cdef public object keyCode ++ cdef public object keyString ++ cdef public object timeStamp ++ cdef public object type ++ cdef public object modifiers ++ cdef public object isText ++ ++ def __new__ (self): ++ self.__item = NULL ++ ++ cdef bool __setItem (self, cspi.AccessibleDeviceEvent *obj): ++ if obj != NULL: ++ self.__item = obj ++ self.keyID = self.__item.keyID ++ self.keyCode = self.__item.keycode ++ self.keyString = self.__item.keystring ++ self.timeStamp = self.__item.timestamp ++ self.type = self.__item.type ++ self.modifiers = self.__item.modifiers ++ if self.__item.is_text: self.isText = True ++ else: self.isText = False ++ return True ++ else: ++ return False ++ ++ def __checkSelf (self): ++ if self.__item == NULL: ++ raise AttributeError, "__item must not be NULL" ++ ++# def __dealloc__ (self): ++# if self.__item != NULL: ++# cspi.AccessibleDeviceEvent_unref (self.__item) ++ ++ ++cdef cspi.SPIBoolean marshalAccessibleDeviceEventCallback (cspi.AccessibleDeviceEvent *event, void *python_fn) except 1: ++ k = DeviceEvent() ++ #k.__setItem(event) ++ DeviceEvent.__setItem(k, event) ++ k.__checkSelf() ++ (python_fn) (k) ++ return False ++ ++cdef class DeviceListener: ++ """ ++ Wrapper around the low-level cspi.AccessibleDeviceListener_ functions, ++ giving an OO-style API. ++ """ ++ cdef cspi.AccessibleDeviceListener *__item ++ cdef public object modMasks ++ ++ def __init__ (self, callback, eventMask = cspi.SPI_KEY_PRESSED | cspi.SPI_KEY_RELEASED): ++ """ ++ Registers a python callback function to be called. ++ ++ eventMask may be one of the following: ++ key pressed: 1 ++ key released: 2 ++ key pressed or released (default): 3 ++ """ ++ self.__item = cspi.SPI_createAccessibleDeviceListener (marshalAccessibleDeviceEventCallback, callback) ++ cdef cspi.AccessibleKeySet *keySet ++ keySet = SPI_KEYSET_ALL_KEYS ++ self.modMasks = [] ++ cdef short int modMask ++ syncType = SPI_KEYLISTENER_SYNCHRONOUS | SPI_KEYLISTENER_CANCONSUME ++ #syncType = SPI_KEYLISTENER_NOSYNC ++ for modMask from 0 <= modMask < (1 << 8): ++ self.modMasks.append(modMask) ++ desc = "keySet "+str( keySet)+" modMask "+str(modMask)+" eventMask "+str(eventMask)+" syncType "+str(syncType) ++ desc = str(desc) ++ if not cspi.SPI_registerAccessibleKeystrokeListener (self.__item, keySet, modMask, eventMask, syncType): ++ raise AtspiException("Unable to register keystroke listener", desc) ++ ++ def deregister(self): ++ if self.__item != NULL: ++ for modMask in self.modMasks: ++ cspi.SPI_deregisterAccessibleKeystrokeListener(self.__item, modMask) ++ ++ def __dealloc__ (self): ++ if self.__item != NULL: ++ self.deregister() ++ cspi.AccessibleDeviceListener_unref (self.__item) ++ ++ def __checkSelf (self): ++ if self.__item == NULL: ++ raise AttributeError, "__item must not be NULL" ++ ++ ++# vim: sw=4 ts=4 sts=4 noet ai diff --git a/staging/twisted/PKGBUILD b/staging/twisted/PKGBUILD new file mode 100644 index 000000000..35bf73958 --- /dev/null +++ b/staging/twisted/PKGBUILD @@ -0,0 +1,37 @@ +# $Id: PKGBUILD 168774 2012-10-15 21:19:51Z eric $ +# Maintainer : Ionut Biru +# Contributor: Juergen Hoetzel +# Contributor: Douglas Soares de Andrade + +pkgname=twisted +pkgver=12.2.0 +pkgrel=2 +pkgdesc="Asynchronous networking framework written in Python." +arch=('i686' 'x86_64') +url="http://twistedmatrix.com/" +license=('MIT') +depends=('python2-crypto' 'python2-zope-interface') +optdepends=('python2-pyopenssl' + 'python2-soappy: for twisted.web.soap' + 'python2-pyasn1: for using conch' + 'pygtk: for using manhole' + 'tk: for using tkconch') +install=twisted.install +source=(http://twistedmatrix.com/Releases/Twisted/${pkgver%.*}/Twisted-$pkgver.tar.bz2) +sha1sums=('c51834c1270e7a4bb0de9190056e4317413920f9') + +build() { + cd "$srcdir/Twisted-$pkgver" + python2 setup.py build +} + +package() { + cd "$srcdir/Twisted-$pkgver" + python2 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 + install -D -m644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + + sed -i 's:^#!.*bin.*python:#!/usr/bin/python2:' \ + "$pkgdir"/usr/lib/python2.7/site-packages/twisted/trial/test/scripttest.py \ + "$pkgdir"/usr/lib/python2.7/site-packages/twisted/mail/test/pop3testserver.py \ + "$pkgdir"/usr/lib/python2.7/site-packages/twisted/python/test/pullpipe.py +} diff --git a/staging/twisted/twisted.install b/staging/twisted/twisted.install new file mode 100644 index 000000000..8e93ffd3c --- /dev/null +++ b/staging/twisted/twisted.install @@ -0,0 +1,11 @@ +post_install() { + python2 -c 'from twisted.plugin import IPlugin, getPlugins; list(getPlugins(IPlugin))' >/dev/null 2>&1 || return 1 +} + +post_upgrade() { + post_install +} + +post_remove() { + find /usr/lib/python2.7/site-packages/twisted/plugins -name dropin.cache | xargs -r rm -f +} diff --git a/staging/vde2/PKGBUILD b/staging/vde2/PKGBUILD new file mode 100644 index 000000000..b4646d06e --- /dev/null +++ b/staging/vde2/PKGBUILD @@ -0,0 +1,50 @@ +# $Id: PKGBUILD 168790 2012-10-16 00:34:59Z allan $ +# Contributor: Sergej Pupykin +# Maintainer: Tobias Powalowski +pkgname=vde2 +pkgver=2.3.2 +pkgrel=2 +pkgdesc="Virtual Distributed Ethernet for emulators like qemu" +url="http://sourceforge.net/projects/vde/" +license=("GPL" "LGPL" "CUSTOM") +arch=('i686' 'x86_64') +depends=('bash' 'libpcap' 'openssl') +makedepends=('python') +backup=(etc/conf.d/vde) +source=(http://downloads.sourceforge.net/vde/$pkgname-$pkgver.tar.bz2 + dhcpd.conf.sample + iptables.rules.sample + vde-config.sample + vde-connection.sample + vde.conf + vde.rc) +install=vde2.install +options=(!libtool !makeflags) + +build() { + cd $srcdir/$pkgname-$pkgver + ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib/vde2 \ + --enable-experimental + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + make prefix=$pkgdir/usr sysconfdir=$pkgdir/etc libexecdir=$pkgdir/usr/lib/vde2 install + install -D -m 755 ../vde.rc $pkgdir/etc/rc.d/vde + install -D -m 644 ../vde.conf $pkgdir/etc/conf.d/vde + install -D -m 644 ../vde-config.sample $pkgdir/etc/vde/vde-config.sample + install -D -m 644 ../vde-connection.sample $pkgdir/etc/vde/vde-connection.sample + install -D -m 644 ../dhcpd.conf.sample $pkgdir/usr/share/vde2/dhcpd.conf.sample + install -D -m 644 ../iptables.rules.sample $pkgdir/usr/share/vde2/iptables.rules.sample + # install slirp license + install -D -m 644 COPYING.slirpvde $pkgdir/usr/share/licenses/vde2/COPYING.slirpvde +} + +md5sums=('46fbc5f97f03dc517aa3b2c9d9ea6628' + '7d9bc56d2e561d849e915000d1c0f269' + 'a920123fc620bcedbccb703a8d1bdc55' + 'cb8ace28e8efd4dad128be4be71b3b07' + '63033c33565e2030541c5e05e9d9b063' + 'a22730f051f4840da4a3162a88ff8156' + '6c7dc01bc2f039f0ff1682ee70d3d1da') diff --git a/staging/vde2/dhcpd.conf.sample b/staging/vde2/dhcpd.conf.sample new file mode 100644 index 000000000..565a78b27 --- /dev/null +++ b/staging/vde2/dhcpd.conf.sample @@ -0,0 +1,12 @@ +ddns-update-style none; + +subnet 192.168.254.0 netmask 255.255.255.0 { + range 192.168.254.1 192.168.254.253; + option routers 192.168.254.254; + option domain-name "virtual.example.com"; + # find your DNS servers from /etc/resolv.conf + # otherwise only pure IP addresses will work + option domain-name-servers 192.168.254.254; + option broadcast-address 192.168.254.255; + default-lease-time 86400; +} diff --git a/staging/vde2/iptables.rules.sample b/staging/vde2/iptables.rules.sample new file mode 100644 index 000000000..ac712ee21 --- /dev/null +++ b/staging/vde2/iptables.rules.sample @@ -0,0 +1,5 @@ +*filter +-A INPUT -i tun -j ACCEPT +-A FORWARD -s 192.168.254.0/255.255.255.0 -j ACCEPT +*nat +-A POSTROUTING -s 192.168.254.0/24 -j MASQUERADE diff --git a/staging/vde2/vde-config.sample b/staging/vde2/vde-config.sample new file mode 100644 index 000000000..c5a5b7d88 --- /dev/null +++ b/staging/vde2/vde-config.sample @@ -0,0 +1,35 @@ +# Set options vde_switch program +# To activate this vde profile add it to /etc/conf.d/vde + +# Global options +VDE_NUMPORTS="32" # Number of ports (default 32) +VDE_HUB="no" # [yes|no] Make the switch act as a hub +VDE_FSTP="no" # [yes|no] Activate the fast spanning tree protocol +VDE_MAC="" # Set the Switch MAC address +VDE_PRIOTIRY="" # Set the priority for FST (MAC extension) +VDE_HASHSIZE="" # Hash table size + +# Options from datasock module +VDE_SOCK="/var/run/vde/sample.sock" # control directory pathname +VDE_SOCK_MODE="660" # Standard access mode for comm sockets (octal) +VDE_SOCK_GROUP="root" # Group owner for comm sockets + +# Options from consmgmt module +VDE_MANAGEMENT_SOCK="/var/run/vde/sample.mgmt" # path of the management UNIX socket +VDE_MANAGEMENT_SOCK_MODE="660" # management UNIX socket access mode (octal) + +# Other options to parse to vde_switch +VDE_OPTIONS="" + +# VDE with internet support +# You can use either tuntap method or slirpvde method. + +# Options from tuntap module +VDE_TAP="" # Enable routing through TAP tap interface (comma separated array eg.:"tap0,tap1"). + +# slirpvde daemon support +SLIRP="no" # [yes|no] enable/disable SLIRP daemon support +SLIRP_DHCP="no" # [yes|no] turn on the DHCP server for the network autoconfiguration of all the units connected to the VDE +SLIRP_NETWORK="" # specify the network address (default 10.0.2.0) +# other options to parse to slirpvde +SLIRP_OPTIONS="" \ No newline at end of file diff --git a/staging/vde2/vde-connection.sample b/staging/vde2/vde-connection.sample new file mode 100644 index 000000000..4a75e1f52 --- /dev/null +++ b/staging/vde2/vde-connection.sample @@ -0,0 +1,6 @@ +# You can add vde switch connections below +# just without the # at the beginning: +# vde_plug /var/run/vde/sample.sock = vde_plug /var/run/vde/sample2.sock +# or if hosts are different use this syntax: +# vde_plug /var/run/vde/sample.sock = ssh host2 vde_plug /var/run/vde/sample.sock + diff --git a/staging/vde2/vde.conf b/staging/vde2/vde.conf new file mode 100644 index 000000000..bc61dceda --- /dev/null +++ b/staging/vde2/vde.conf @@ -0,0 +1,11 @@ +# Set options for a vde daemon script +# +# Array for your vde config files, eg.: "internal-net external-net" +# You need a config file in /etc/vde/ with the same name. +# Sample config file provided: /etc/vde/vde-config.sample +VDE_CONFIG="" + +# Array for your dpipe connections, eg.: "connect-switches" +# You need a config file in /etc/vde/ with the same name. +# Sample config file provided: /etc/vde/vde-connection.sample +VDE_CONNECTION="" \ No newline at end of file diff --git a/staging/vde2/vde.rc b/staging/vde2/vde.rc new file mode 100755 index 000000000..b368f9955 --- /dev/null +++ b/staging/vde2/vde.rc @@ -0,0 +1,113 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/vde + +case "$1" in + start) + # bring up all defined profiles + for i in $VDE_CONFIG; do + [ -e /etc/vde/$i ] && . /etc/vde/$i + stat_busy "Starting vde_switch $i" + # get options from profile + [ -n "$VDE_NUMPORTS" ] && OPTIONS="-n $VDE_NUMPORTS" + [ "$VDE_HUB" = "yes" ] && OPTIONS="$OPTIONS -x" + [ "$VDE_FSTP" = "yes" ] && OPTIONS="$OPTIONS -F" + [ -n "$VDE_MAC" ] && OPTIONS="$OPTIONS --macaddr $VDE_MAC" + [ -n "$VDE_PRIORITY" ] && OPTIONS="$OPTIONS --priority $VDE_PRIORITY" + [ -n "$VDE_HASH" ] && OPTIONS="$OPTIONS --hashsize $VDE_HASH" + [ -n "$VDE_SOCK" ] && OPTIONS="$OPTIONS -s $VDE_SOCK" + [ -n "$VDE_SOCK_MODE" ] && OPTIONS="$OPTIONS -m $VDE_SOCK_MODE" + [ -n "$VDE_SOCK_GROUP" ] && OPTIONS="$OPTIONS -g $VDE_SOCK_GROUP" + [ -n "$VDE_MANAGEMENT_SOCK" ] && OPTIONS="$OPTIONS -M $VDE_MANAGEMENT_SOCK" + [ -n "$VDE_MANAGEMENT_SOCK_MODE" ] && OPTIONS="$OPTIONS --mgmtmode $VDE_MANAGEMENT_SOCK_MODE" + [ -n "$VDE_TAP" ] && OPTIONS="$OPTIONS -t $VDE_TAP" + [ -n "$VDE_OPTIONS" ] && OPTIONS="$OPTIONS $VDE_OPTIONS" + vde_switch $OPTIONS -p /var/run/vde-$i.pid -daemon &>/dev/null + [ -n "$VDE_SOCK" -a -n "$VDE_SOCK_GROUP" ] && chgrp "$VDE_SOCK_GROUP" "$VDE_SOCK" + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + if [ "$SLIRP" = "yes" ]; then + stat_busy "Starting slirpvde for $i" + [ "$SLIRP_DHCP" = "yes" ] && SP_OPTIONS="-D" + [ -n "$SLIRP_NETWORK" ] && SP_OPTIONS="$SP_OPTIONS -n $SLIRP_NETWORK" + [ -n "$SLIRP_OPTIONS" ] && SP_OPTIONS="$SP_OPTIONS $SLIRP_OPTIONS" + [ -n "$VDE_SOCK" ] && SP_OPTIONS="$SP_OPTIONS -s $VDE_SOCK" + [ -n "$VDE_SOCK_MODE" ] && SP_OPTIONS="$SP_OPTIONS -m $VDE_SOCK_MODE" + [ -n "$VDE_SOCK_GROUP" ] && SP_OPTIONS="$SP_OPTIONS -g $VDE_SOCK_GROUP" + slirpvde $SP_OPTIONS -p /var/run/slirpvde-$i.pid -daemon &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + unset OPTIONS + unset SP_OPTIONS + fi + done + for i in $VDE_CONNECTION; do + # connect specified vde_switches + if [ "$(grep ^vde_plug /etc/vde/$i)" ]; then + stat_busy "Connecting VDE switches $i together..." + while read j; do + switch="$(echo $j | grep ^vde_plug)" + [ -n "$switch" ] && (dpipe $switch &) + done /dev/null 2>&1 + for i in $VDE_CONFIG; do + [ -e /etc/vde/$i ] && . /etc/vde/$i + if [ "$SLIRP" = "yes" ]; then + stat_busy "Stopping slirpvde for $i" + kill $(cat /var/run/slirpvde-$i.pid) &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + rm /var/run/slirpvde-$i.pid &> /dev/null + fi + stat_busy "Stopping vde_switch $i" + kill $(cat /var/run/vde-$i.pid) &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + rm /var/run/vde-$i.pid &> /dev/null + stat_busy "Removing $i vde sockets" + rm -rf $VDE_SOCK $VDE_MANAGEMENT_SOCK + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + done + unset OPTIONS + unset SP_OPTIONS + [ -e /var/run/vde/gmon.out ] && rm /var/run/vde/gmon.out + rm_daemon vde + ;; + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/staging/vde2/vde2.install b/staging/vde2/vde2.install new file mode 100644 index 000000000..74e1710ff --- /dev/null +++ b/staging/vde2/vde2.install @@ -0,0 +1,10 @@ +post_install() { + echo "Change /etc/conf.d/vde to your needs." + echo "vde config files should be placed in /etc/vde, sample files are provided." + echo "iptables and dhcpd sample files have been installed to '/usr/share/vde2'." + echo "Merge those examples, if needed to the according config files." +} + +post_upgrade() { + post_install $1 +} diff --git a/staging/xfce4-session/PKGBUILD b/staging/xfce4-session/PKGBUILD index c3fccce41..1a320ff4a 100644 --- a/staging/xfce4-session/PKGBUILD +++ b/staging/xfce4-session/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 168729 2012-10-14 23:01:20Z foutrelis $ +# $Id: PKGBUILD 168748 2012-10-15 13:21:21Z foutrelis $ # Maintainer: Evangelos Foutras # Contributor: tobias pkgname=xfce4-session pkgver=4.10.0 -pkgrel=5 +pkgrel=6 pkgdesc="A session manager for Xfce" arch=('i686' 'x86_64') url="http://www.xfce.org/" @@ -39,7 +39,6 @@ build() { --libexecdir=/usr/lib/xfce4 \ --localstatedir=/var \ --disable-static \ - --disable-legacy-sm \ --disable-debug make } diff --git a/testing/e2fsprogs/PKGBUILD b/testing/e2fsprogs/PKGBUILD index b9eafd672..2b9b9f152 100644 --- a/testing/e2fsprogs/PKGBUILD +++ b/testing/e2fsprogs/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 164382 2012-07-31 20:39:10Z ronald $ +# $Id: PKGBUILD 168762 2012-10-15 19:04:27Z ronald $ # Maintainer: Ronald van Haren # Contributor: judd pkgname=e2fsprogs -pkgver=1.42.5 +pkgver=1.42.6 pkgrel=1 pkgdesc="Ext2/3/4 filesystem utilities" arch=('i686' 'x86_64') @@ -16,7 +16,7 @@ source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pk 'MIT-LICENSE') backup=('etc/mke2fs.conf') install=${pkgname}.install -sha1sums=('41bc6d247238eac65864193e6de941956da493cb' +sha1sums=('cd05cd4205a00d01a6da821660cff386788e9be3' 'f4a0d5b0cdb980e3fedd6f5e7dde0b0ffb7bbdfb') build() { diff --git a/testing/iproute2/PKGBUILD b/testing/iproute2/PKGBUILD index 425808741..42f4a58fa 100644 --- a/testing/iproute2/PKGBUILD +++ b/testing/iproute2/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 165268 2012-08-14 18:56:21Z ronald $ +# $Id: PKGBUILD 168760 2012-10-15 18:55:23Z ronald $ # Maintainer: Ronald van Haren # Contributor: Judd Vinet pkgname=iproute2 -pkgver=3.5.1 +pkgver=3.6.0 pkgrel=1 pkgdesc="IP Routing Utilities" arch=('i686' 'x86_64') license=('GPL2') url="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" -depends=('glibc' 'db') +depends=('glibc' 'db' 'iptables') makedepends=('linux-atm') optdepends=('linux-atm: ATM support') provides=('iproute') @@ -20,7 +20,7 @@ backup=('etc/iproute2/ematch_map' 'etc/iproute2/rt_dsfield' 'etc/iproute2/rt_pro 'etc/iproute2/rt_realms' 'etc/iproute2/rt_scopes' 'etc/iproute2/rt_tables') source=(http://www.kernel.org/pub/linux/utils/net/$pkgname/$pkgname-$pkgver.tar.xz iproute2-fhs.patch) -sha1sums=('461f3e97d84264a597176de3ba94633114959df5' +sha1sums=('6fa16fd2158d0f289ef454cad46555ead1c33c2d' '35b8cf2dc94b73eccad427235c07596146cd6f6c') build() { diff --git a/testing/iptables/PKGBUILD b/testing/iptables/PKGBUILD index f6d2c8e13..a97879edc 100644 --- a/testing/iptables/PKGBUILD +++ b/testing/iptables/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 164378 2012-07-31 20:17:23Z ronald $ +# $Id: PKGBUILD 168758 2012-10-15 18:45:48Z ronald $ # Maintainer: Ronald van Haren # Contributor: Thomas Baechler pkgname=iptables -pkgver=1.4.15 +pkgver=1.4.16.2 pkgrel=1 pkgdesc='Linux kernel packet control tool' arch=('i686' 'x86_64') @@ -28,7 +28,7 @@ source=("http://www.iptables.org/projects/iptables/files/${pkgname}-${pkgver}.ta ip6tables.service iptables-flush) backup=(etc/conf.d/iptables) -sha1sums=('56ab3b143af2ad443c9652db3a38ef8869cd2207' +sha1sums=('6fd368c4f6c31752011a716cccd951601157a493' '5bb6fa526665cdd728c26f0f282f5a51f220cf88' '2db68906b603e5268736f48c8e251f3a49da1d75' '83b3363878e3660ce23b2ad325b53cbd6c796ecf' @@ -43,7 +43,6 @@ sha1sums=('56ab3b143af2ad443c9652db3a38ef8869cd2207' '5c4eb4ea88c302e8ff98f435a11dd59b00f4d8b9' 'f1f16f44c6a5547b6f251d13007fe6585761e8b0' 'e7abda09c61142121b6695928d3b71ccd8fdf73a') - build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/testing/lvm2/PKGBUILD b/testing/lvm2/PKGBUILD index 0467d11bd..184226746 100644 --- a/testing/lvm2/PKGBUILD +++ b/testing/lvm2/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 165057 2012-08-09 22:06:25Z eric $ +# $Id: PKGBUILD 168776 2012-10-15 21:23:50Z thomas $ # Maintainer: Eric Bélanger # Maintainer: Thomas Bächler pkgbase=lvm2 pkgname=('lvm2' 'device-mapper') -pkgver=2.02.97 +pkgver=2.02.98 pkgrel=1 arch=('i686' 'x86_64') url="http://sourceware.org/lvm2/" @@ -17,13 +17,13 @@ source=(ftp://sources.redhat.com/pub/lvm2/LVM2.${pkgver}.tgz{,.asc} lvm.service lvm-on-crypt.service lvm2.conf) -sha1sums=('ca92d976628246745f0981d1514a79a4a8e32314' - '9f0c6047fe3c275db7af20f383bd41744fcafc33' +sha1sums=('077425115b164c335a9930df745943e9ea666a8a' + '4713c852fc668e6fbd36ff7c6b5675b10a95a0f8' '3e1680f9b76ce9150d08865d99db90fd15532271' 'cedc9948123c870f9c5aa3357d0075b41a9c8135' 'f6a554eea9557c3c236df2943bb6e7e723945c41' - '17df8689630a77e46899a8bd56997d9db896d5af' - '7336aa1d53db9c843916b2cbb433434e4e354a24' + 'edce6b6e8d03f7cbad4bfff49fab01d618415be8' + '652fb58dd7676caa0515f0a06d537744e071c6cf' 'ccefad65fde3d50331a42b0e90a1539dc7c8b9e4') build() { diff --git a/testing/lvm2/lvm-on-crypt.service b/testing/lvm2/lvm-on-crypt.service index 4ade6c5b0..346c5ac8e 100644 --- a/testing/lvm2/lvm-on-crypt.service +++ b/testing/lvm2/lvm-on-crypt.service @@ -7,7 +7,7 @@ Before=shutdown.target Conflicts=shutdown.target [Service] -ExecStart=/sbin/vgchange --sysinit --available y +ExecStart=/sbin/vgchange --available y Type=oneshot TimeoutSec=0 RemainAfterExit=yes diff --git a/testing/lvm2/lvm.service b/testing/lvm2/lvm.service index 277d5a773..14269b1be 100644 --- a/testing/lvm2/lvm.service +++ b/testing/lvm2/lvm.service @@ -7,7 +7,7 @@ Before=basic.target shutdown.target Conflicts=shutdown.target [Service] -ExecStart=/sbin/vgchange --sysinit --available y +ExecStart=/sbin/vgchange --available y Type=oneshot TimeoutSec=0 RemainAfterExit=yes -- cgit v1.2.3-54-g00ecf