diff options
Diffstat (limited to 'community')
40 files changed, 1579 insertions, 144 deletions
diff --git a/community/calibre/PKGBUILD b/community/calibre/PKGBUILD index 8f866e3c9..333a63acb 100644 --- a/community/calibre/PKGBUILD +++ b/community/calibre/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 45837 2011-04-29 22:19:40Z giovanni $ +# $Id: PKGBUILD 45966 2011-04-30 22:16:22Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Petrov Roman <nwhisper@gmail.com> # Contributor: Andrea Fagiani <andfagiani _at_ gmail dot com> pkgname=calibre -pkgver=0.7.58 +pkgver=0.7.59 pkgrel=1 pkgdesc="Ebook management application" arch=('i686' 'x86_64') @@ -20,7 +20,7 @@ optdepends=('ipython: to use calibre-debug') install=calibre.install source=(http://calibre-ebook.googlecode.com/files/${pkgname}-${pkgver}.tar.gz desktop_integration.patch) -md5sums=('48e8be1826ae6bbc000aeb904f60b967' +md5sums=('78ebed5248758b9be1d135ae018b8dfe' 'bcc538a3b004429bf8f5a0ac1d89a37f') build() { diff --git a/community/clementine/PKGBUILD b/community/clementine/PKGBUILD index 09d5b1c04..8f453aba7 100644 --- a/community/clementine/PKGBUILD +++ b/community/clementine/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 43984 2011-04-01 14:24:01Z stephane $ +# $Id: PKGBUILD 44544 2011-04-08 11:52:13Z stephane $ #Maintainer: Stéphane Gaudreault <stephane@archlinux.org> #Contributor: BlackEagle < ike DOT devolder AT gmail DOT com > #Contributor: Dany Martineau <dany.luc.martineau@gmail.com> pkgname=clementine pkgver=0.7.1 -pkgrel=1 +pkgrel=2 pkgdesc="A music player and library organizer" url="http://www.clementine-player.org/" license=('GPL') arch=('i686' 'x86_64') -depends=('gstreamer0.10' 'taglib' 'glew' 'liblastfm' 'libgpod' 'libmtp' 'hicolor-icon-theme') +depends=('gstreamer0.10' 'taglib' 'glew' 'liblastfm' 'libgpod' 'libmtp' 'libplist' 'hicolor-icon-theme' 'qt' 'libimobiledevice') makedepends=('cmake' 'boost') optdepends=('gstreamer0.10-base-plugins: for more open formats' 'gstreamer0.10-good-plugins: for use with "Good" plugin libraries' diff --git a/community/giggle/PKGBUILD b/community/giggle/PKGBUILD index ecbf47b18..36fb72bab 100644 --- a/community/giggle/PKGBUILD +++ b/community/giggle/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 28719 2010-10-04 19:55:45Z tdziedzic $ +# $Id: PKGBUILD 44519 2011-04-08 03:41:57Z tdziedzic $ # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: neodreams <yanbrodeur@gmail.com> pkgname=giggle pkgver=0.5 -pkgrel=4 +pkgrel=5 pkgdesc="Graphical frontend for the git directory tracker (think of gitk on GTK+)." arch=('i686' 'x86_64') url="http://live.gnome.org/giggle" diff --git a/community/gimmie/PKGBUILD b/community/gimmie/PKGBUILD index 79ca3c262..01c79a4d4 100644 --- a/community/gimmie/PKGBUILD +++ b/community/gimmie/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 38302 2011-01-25 10:22:59Z spupykin $ +# $Id: PKGBUILD 44484 2011-04-07 20:23:57Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: György Balló <ballogy@freestart.hu> pkgname=gimmie pkgver=0.2.8 -pkgrel=13 +pkgrel=14 pkgdesc="desktop organizer which allows interaction with applications, contacts, documents, etc" arch=('i686' 'x86_64') url="http://beatniksoftware.com/gimmie/" @@ -21,6 +21,16 @@ md5sums=('721b8ec80f0247e1281aeb4aa5614c2f') build() { cd "$srcdir/$pkgname-$pkgver" sed -i 's@^#!.*python$@#!/usr/bin/python2@' gimmie/gimmie_{threads,bar}.py + + export CFLAGS="$CFLAGS `pkg-config --cflags glib-2.0`" + export LDFLAGS="$LDFLAGS `pkg-config --libs glib-2.0`" + + export CFLAGS="$CFLAGS `pkg-config --cflags gtk+-2.0`" + export LDFLAGS="$LDFLAGS `pkg-config --libs gtk+-2.0`" + + export CFLAGS="$CFLAGS `pkg-config --cflags pygtk-2.0`" + export LDFLAGS="$LDFLAGS `pkg-config --libs pygtk-2.0`" + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libexecdir="/usr/lib/$pkgname" \ --disable-static --disable-schemas-install \ --with-gconf-schema-file-dir=/usr/share/gconf/schemas \ diff --git a/community/glipper/PKGBUILD b/community/glipper/PKGBUILD index d95fc83c3..430fa5e2e 100644 --- a/community/glipper/PKGBUILD +++ b/community/glipper/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 38218 2011-01-23 22:09:28Z spupykin $ +# $Id: PKGBUILD 44486 2011-04-07 20:24:38Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Pbl Gomez <pblgomez@gmail.com> pkgname=glipper pkgver=1.0 -pkgrel=11 +pkgrel=12 pkgdesc="Clipboard for gnome desktop" arch=('i686' 'x86_64') url="http://sourceforge.net/projects/glipper/" diff --git a/community/gnome-system-tools/PKGBUILD b/community/gnome-system-tools/PKGBUILD index 93061628a..aef106546 100644 --- a/community/gnome-system-tools/PKGBUILD +++ b/community/gnome-system-tools/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 27934 2010-09-30 15:07:45Z ibiru $ +# $Id: PKGBUILD 44473 2011-04-07 19:13:54Z ibiru $ # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: Hugo Doria <hugodoria@archlinux-br.org> pkgname=gnome-system-tools -pkgver=2.32.0 +pkgver=3.0.0 pkgrel=1 pkgdesc="Gnome System Configuration Utilities" arch=('i686' 'x86_64') url="http://www.gnome.org/projects/gst/" license=('GPL') options=('!libtool') -depends=('wireless_tools' 'liboobs>=2.32.0' 'nautilus>=2.30.1' 'polkit-gnome>=0.97' 'dconf') -makedepends=('gnome-doc-utils>=0.20.1' 'intltool>=0.40') +depends=('wireless_tools' 'liboobs' 'nautilus' 'polkit-gnome' 'dconf') +makedepends=('gnome-doc-utils' 'intltool') install=gnome-system-tools.install -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('71d52698ccb60bc07d6e4e442b7cb178ebf1152396379500df5ec62da4c4d14a') +source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2) +sha256sums=('905df26c02f00a6c2c18706ba3db7eab764e3df6576289e103504aa39a47ae0b') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/gnote/PKGBUILD b/community/gnote/PKGBUILD index d2fb73ada..ec1807a21 100644 --- a/community/gnote/PKGBUILD +++ b/community/gnote/PKGBUILD @@ -1,23 +1,22 @@ -# $Id: PKGBUILD 41039 2011-03-03 11:13:48Z ibiru $ +# $Id: PKGBUILD 45878 2011-04-30 20:15:23Z ibiru $ # Maintainer: Ionut Biru <ibiru@archlinux.org> # Contributor: uastasi <uastasi@archlinux.us> pkgname=gnote -pkgver=0.7.3 -pkgrel=3 +pkgver=0.7.4 +pkgrel=1 pkgdesc="Experimental port of Tomboy to C++ " arch=('i686' 'x86_64') url="http://live.gnome.org/Gnote" license=('GPL') -depends=('boost-libs' 'gtkspell' 'libpanelappletmm' 'libxslt') +depends=('gtkmm' 'gconf' 'gtkspell' 'libxslt') makedepends=('intltool' 'gnome-doc-utils' 'boost') options=('!libtool') install=gnote.install source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('4853315711baf7647cdae4c2f7d23e22e2b13322605efe3dd98796a06f928321') +sha256sums=('19bf64397278b85703979fd4943692f6c44579e597bad27acf04a64d6813e6f2') build() { cd "${srcdir}/${pkgname}-${pkgver}" - export CXXFLAGS="${CXXFLAGS} -DBOOST_FILESYSTEM_VERSION=2" ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ @@ -26,8 +25,12 @@ build() { --disable-schemas-install \ --disable-static make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/share/gconf/schemas" gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnote ${pkgdir}/etc/gconf/schemas/*.schemas - rm -f ${pkgdir}/etc/gconf/schemas/*.schemas + rm -rf ${pkgdir}/etc/gconf/ } diff --git a/community/gnubiff/PKGBUILD b/community/gnubiff/PKGBUILD index 4671b7005..628d336b3 100644 --- a/community/gnubiff/PKGBUILD +++ b/community/gnubiff/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 14203 2010-04-02 08:57:36Z spupykin $ +# $Id: PKGBUILD 44789 2011-04-11 20:19:28Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Tom K <tomk@runbox.com> # Contributor: Todd Musall <tmusall@gmail.com> pkgname=gnubiff -pkgver=2.2.11 -pkgrel=4 +pkgver=2.2.13 +pkgrel=1 pkgdesc="Mail notification program that checks for mail and displays headers when new mail has arrived" arch=('i686' 'x86_64') url="http://gnubiff.sourceforge.net/" @@ -14,7 +14,7 @@ depends=('gnome-panel') makedepends=('perlxml') conflicts=(gnubiff-gtk) source=(http://downloads.sourceforge.net/gnubiff/gnubiff-$pkgver.tar.gz) -md5sums=('d9e899f25b1e83081ccd3ac97ee31b8b') +md5sums=('65423957eb027b94c9e661611c0e4271') build() { [ "$GNOMEDIR" = "" ] && GNOMEDIR=/usr @@ -46,9 +46,13 @@ diff -wbBur gnubiff-2.2.10/src/support.h gnubiff-2.2.10.my/src/support.h } EOF - LDFLAGS="-lgnomeui-2" CFLAGS="-I/usr/include/libgnomeui-2.0" CPPFLAGS="-I/usr/include/libgnomeui-2.0" ./configure --prefix=/usr --with-password --with-password-string --disable-fam - make || return 1 - make DESTDIR=$startdir/pkg install || return 1 + export LDFLAGS="$LDFLAGS -lgnomeui-2" + export CFLAGS="$CFLAGS -I/usr/include/libgnomeui-2.0" + export CPPFLAGS="$CPPFLAGS -I/usr/include/libgnomeui-2.0" + ./configure --prefix=/usr --with-password --with-password-string --disable-fam \ + --disable-gnome + make + make DESTDIR=$startdir/pkg install rm -rf ${pkgdir}/usr/share/info/dir } diff --git a/community/google-gadgets/PKGBUILD b/community/google-gadgets/PKGBUILD index dd8d16abf..5e7d6c624 100644 --- a/community/google-gadgets/PKGBUILD +++ b/community/google-gadgets/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 43358 2011-03-25 11:00:25Z schiv $ +# $Id: PKGBUILD 44556 2011-04-08 21:04:15Z spupykin $ # Maintainer: Ray Rashif <schiv@archlinux.org> pkgbase=google-gadgets @@ -8,7 +8,7 @@ _basedir="$startdir/pkg/base" pkgver=0.11.2 _sover=1.0 _sobump=0.0.0 -pkgrel=3 +pkgrel=4 arch=('i686' 'x86_64') url="http://code.google.com/p/google-gadgets-for-linux/" license=('APACHE') @@ -19,8 +19,10 @@ makedepends=('gstreamer0.10-base-plugins' 'libwebkit' 'networkmanager' 'zip' 'flex') options=('!libtool') -source=("http://google-gadgets-for-linux.googlecode.com/files/$_realname-$pkgver.tar.bz2") -md5sums=('279305553bcbf74f3e3615f6abc36a5e') +source=("http://google-gadgets-for-linux.googlecode.com/files/$_realname-$pkgver.tar.bz2" + "wifi-types.patch") +md5sums=('279305553bcbf74f3e3615f6abc36a5e' + 'f0df71c60a174e9d629db87b8bd9e102') build() { cd "$srcdir/$_realname-$pkgver" @@ -31,6 +33,7 @@ build() { # xulrunner 2.0 is incompatible; # we build without smjs-script/browser-element + patch -p1 <$srcdir/wifi-types.patch ./configure --prefix=/usr \ --disable-werror \ --disable-update-desktop-database \ diff --git a/community/google-gadgets/wifi-types.patch b/community/google-gadgets/wifi-types.patch new file mode 100644 index 000000000..be9383a61 --- /dev/null +++ b/community/google-gadgets/wifi-types.patch @@ -0,0 +1,36 @@ +diff -wbBur google-gadgets-for-linux-0.11.2/extensions/linux_system_framework/network.cc google-gadgets-for-linux-0.11.2.my/extensions/linux_system_framework/network.cc +--- google-gadgets-for-linux-0.11.2/extensions/linux_system_framework/network.cc 2009-03-15 04:12:42.000000000 +0000 ++++ google-gadgets-for-linux-0.11.2.my/extensions/linux_system_framework/network.cc 2011-04-08 20:57:16.000000000 +0000 +@@ -23,17 +23,9 @@ + namespace framework { + namespace linux_system { + +-#ifdef NM_DEVICE_TYPE_WIFI + static const int kDeviceTypeWifi = NM_DEVICE_TYPE_WIFI; +-#else +-static const int kDeviceTypeWifi = DEVICE_TYPE_802_11_WIRELESS; +-#endif + +-#ifdef NM_DEVICE_TYPE_ETHERNET + static const int kDeviceTypeEthernet = NM_DEVICE_TYPE_ETHERNET; +-#else +-static const int kDeviceTypeEthernet = DEVICE_TYPE_802_3_ETHERNET; +-#endif + + static const int kDeviceTypeUnknown = 0; + +diff -wbBur google-gadgets-for-linux-0.11.2/extensions/linux_system_framework/wireless.cc google-gadgets-for-linux-0.11.2.my/extensions/linux_system_framework/wireless.cc +--- google-gadgets-for-linux-0.11.2/extensions/linux_system_framework/wireless.cc 2009-12-28 10:39:53.000000000 +0000 ++++ google-gadgets-for-linux-0.11.2.my/extensions/linux_system_framework/wireless.cc 2011-04-08 20:57:39.000000000 +0000 +@@ -77,11 +77,7 @@ + + using namespace ggadget::dbus; + +-#ifdef NM_DEVICE_TYPE_WIFI + static const int kDeviceTypeWifi = NM_DEVICE_TYPE_WIFI; +-#else +-static const int kDeviceTypeWifi = DEVICE_TYPE_802_11_WIRELESS; +-#endif + + // Defined in nm 0.7 + static const int kDeviceStateActivated = 8; diff --git a/community/gphpedit/PKGBUILD b/community/gphpedit/PKGBUILD index 352a3252d..83287457c 100644 --- a/community/gphpedit/PKGBUILD +++ b/community/gphpedit/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 18217 2010-06-01 12:55:06Z spupykin $ +# $Id: PKGBUILD 44458 2011-04-07 16:24:21Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: tobias <tobias@archlinux.org> # Contributor: Tobias Kieslich <tobias@justdreams.de> pkgname=gphpedit pkgver=0.9.98RC1 -pkgrel=1 +pkgrel=2 pkgdesc="a scintilla/gnome based editor specialized on php-files" arch=(i686 x86_64) license=('GPL') @@ -20,12 +20,12 @@ md5sums=('cc3c5f50704fa0ed3ef3d4ac983db525' build() { cd ${srcdir}/*$pkgname* -# patch -Np1 -i ${srcdir}/doc-fix.patch || return 1 +# patch -Np1 -i ${srcdir}/doc-fix.patch ./autogen.sh ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var - make || return 1 - make DESTDIR=$pkgdir install || return 1 + make + make DESTDIR=$pkgdir install # extend MimeType declaration echo "MimeType=application/x-php;text-x-php-text/x-php-source;" >> \ diff --git a/community/gphpedit/gphpedit.install b/community/gphpedit/gphpedit.install index 21f20806c..39bc96919 100644 --- a/community/gphpedit/gphpedit.install +++ b/community/gphpedit/gphpedit.install @@ -6,11 +6,6 @@ post_upgrade() { post_install $1 } -pre_remove() { - /bin/true -} - post_remove() { post_install } - diff --git a/community/gtkwave/PKGBUILD b/community/gtkwave/PKGBUILD index 477ec5817..3376c0148 100644 --- a/community/gtkwave/PKGBUILD +++ b/community/gtkwave/PKGBUILD @@ -2,7 +2,7 @@ # Contributor: Jared Casper <jaredcasper@gmail.com> pkgname=gtkwave -pkgver=3.3.20 +pkgver=3.3.21 pkgrel=1 pkgdesc='A wave viewer which reads LXT, LXT2, VZT, GHW and VCD/EVCD files' arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ depends=('gtk2') makedepends=('gperf') install="${pkgname}.install" source=("http://gtkwave.sourceforge.net/${pkgname}-${pkgver}.tar.gz") -md5sums=('91f35ce56817b1a0b37a904be4e5f021') +md5sums=('ae3a99a2304f45703471629c7b614ef6') build() { cd ${pkgname}-${pkgver} diff --git a/community/ibus/PKGBUILD b/community/ibus/PKGBUILD index 2ad3e0e93..ab31b3bf7 100644 --- a/community/ibus/PKGBUILD +++ b/community/ibus/PKGBUILD @@ -4,12 +4,12 @@ pkgname=ibus pkgver=1.3.9 -pkgrel=2 +pkgrel=3 pkgdesc='Next Generation Input Bus for Linux.' arch=('i686' 'x86_64') license=('LGPL') url='http://ibus.googlecode.com' -depends=('dbus-python>=0.83.0' 'gconf' 'python2' 'pygtk' 'pyxdg' 'iso-codes' 'librsvg' 'python-notify' 'hicolor-icon-theme') +depends=('dbus-python>=0.83.0' 'gconf' 'python2' 'pygtk' 'pyxdg' 'iso-codes' 'librsvg' 'python-notify' 'hicolor-icon-theme' 'gtk3') optdepends=('notification-daemon') makedepends=('intltool') options=('!libtool') @@ -27,7 +27,8 @@ build() { --libexecdir=/usr/lib/ibus \ --sysconfdir=/etc \ --with-gconf-schema-file-dir=/usr/share/gconf/schemas \ - --enable-introspection=no # disabled because build fails with + --enable-gtk3 + #--enable-introspection=no # disabled because build fails with # gobject-introspection 0.9.10-2 # python2 fix diff --git a/community/ibus/ibus.install b/community/ibus/ibus.install index d5c04de2b..439f00b29 100644 --- a/community/ibus/ibus.install +++ b/community/ibus/ibus.install @@ -5,6 +5,9 @@ post_install() { /usr/sbin/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() { @@ -22,4 +25,7 @@ pre_remove() { post_remove() { /usr/bin/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/inputattach/0001-Add-w8001-flag.patch b/community/inputattach/0001-Add-w8001-flag.patch new file mode 100644 index 000000000..ba6f9394b --- /dev/null +++ b/community/inputattach/0001-Add-w8001-flag.patch @@ -0,0 +1,27 @@ +From 729257077e328e0b2fa1bba5a5509c09a743d5d0 Mon Sep 17 00:00:00 2001 +From: Peter Hutterer <peter.hutterer@who-t.net> +Date: Tue, 13 Jul 2010 11:49:47 +1000 +Subject: [PATCH 2/3] Add w8001 flag for serial Wacom devices. + +Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> +--- + inputattach.c | 3 +++ + 1 files changed, 3 insertions(+), 0 deletions(-) + +diff --git a/inputattach.c b/inputattach.c +index a7de302..0382954 100644 +--- a/inputattach.c ++++ b/inputattach.c +@@ -495,6 +495,9 @@ static struct input_types input_types[] = { + { "--dump", "-dump", "Just enable device", + B2400, CS8, + 0, 0x00, 0x00, 0, dump_init }, ++{ "--w8001", "-w8001", "Wacom W8001", ++ B38400, CS8, ++ SERIO_W8001, 0x00, 0x00, 0, NULL }, + { NULL, NULL, NULL, 0, 0, 0, 0, 0, 0, NULL } + }; + +-- +1.7.2.3 + diff --git a/community/inputattach/0002-Allow-for-custom-baud-rates.patch b/community/inputattach/0002-Allow-for-custom-baud-rates.patch new file mode 100644 index 000000000..78f5d19c8 --- /dev/null +++ b/community/inputattach/0002-Allow-for-custom-baud-rates.patch @@ -0,0 +1,70 @@ +From 5d9373f24f1b519c030024b2f36277ba9713697c Mon Sep 17 00:00:00 2001 +From: Peter Hutterer <peter.hutterer@who-t.net> +Date: Wed, 21 Jul 2010 14:41:04 +1000 +Subject: [PATCH 3/3] Allow for custom baud rates. + +Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> +--- + inputattach.c | 25 ++++++++++++++++++++++++- + 1 files changed, 24 insertions(+), 1 deletions(-) + +diff --git a/inputattach.c b/inputattach.c +index 0382954..6806fc8 100644 +--- a/inputattach.c ++++ b/inputattach.c +@@ -506,7 +506,7 @@ static void show_help(void) + struct input_types *type; + + puts(""); +- puts("Usage: inputattach [--daemon] <mode> <device>"); ++ puts("Usage: inputattach [--daemon] [--baud <baud>] <mode> <device>"); + puts(""); + puts("Modes:"); + +@@ -530,6 +530,7 @@ int main(int argc, char **argv) + int i; + char c; + int retval; ++ int baud = -1; + + for (i = 1; i < argc; i++) { + if (!strcasecmp(argv[i], "--help")) { +@@ -540,6 +541,15 @@ int main(int argc, char **argv) + } else if (need_device) { + device = argv[i]; + need_device = 0; ++ } else if (!strcasecmp(argv[i], "--baud")) { ++ if (argc <= i + 1) { ++ show_help(); ++ fprintf(stderr, ++ "inputattach: require baud rate\n"); ++ return EXIT_FAILURE; ++ } ++ ++ baud = atoi(argv[++i]); + } else { + if (type && type->name) { + fprintf(stderr, +@@ -580,6 +590,19 @@ int main(int argc, char **argv) + return 1; + } + ++ switch(baud) { ++ case -1: break; ++ case 2400: type->speed = B2400; break; ++ case 4800: type->speed = B4800; break; ++ case 9600: type->speed = B9600; break; ++ case 19200: type->speed = B19200; break; ++ case 38400: type->speed = B38400; break; ++ default: ++ fprintf(stderr, "inputattach: invalid baud rate '%d'\n", ++ baud); ++ return EXIT_FAILURE; ++ } ++ + setline(fd, type->flags, type->speed); + + if (type->flush) +-- +1.7.2.3 + diff --git a/community/inputattach/PKGBUILD b/community/inputattach/PKGBUILD index 54b3af023..0953d0a3a 100644 --- a/community/inputattach/PKGBUILD +++ b/community/inputattach/PKGBUILD @@ -2,30 +2,42 @@ pkgname=inputattach pkgver=1.24 -pkgrel=2 +pkgrel=3 pkgdesc="Attach serial mice, keyboards and other input devices to the kernel input system" arch=('i686' 'x86_64') url="http://linuxconsole.sourceforge.net/" license=('GPL') -depends=('glibc' 'bash') +depends=('bash') makedepends=('gcc') -backup=(etc/conf.d/inputattach.conf) +backup=(etc/conf.d/inputattach) install=inputattach.install source=('http://kernel.org/pub/linux/kernel/people/dtor/inputattach.c' 'http://kernel.org/pub/linux/kernel/people/dtor/serio-ids.h' - 'inputattach.conf.d' - 'inputattach.rc.d') -md5sums=('eb595a766ca363edb3b14c25404596ce' - '93d34d96cd3ad19ea1aeca7f68a66b4a' - 'ca36071f8384314c037e1e8b15c63afe' - 'd484778b0464e25b22cda89ac7fed156') + 'inputattach.conf.d' 'inputattach.rc.d' + '0001-Add-w8001-flag.patch' '0002-Allow-for-custom-baud-rates.patch') +md5sums=('eb595a766ca363edb3b14c25404596ce' '93d34d96cd3ad19ea1aeca7f68a66b4a' + '7ca903e54829764c8241233af5069216' '8d62f8840a2e6457a953f667df39ef99' + 'f1b3ddae308351357f557cbd5c6cda81' '8f76908449cae24a95adbf0bc0a17721') build() { - cc $CFLAGS inputattach.c -o inputattach || return 1 + cd "$srcdir" - install -D -m755 inputattach $startdir/pkg/usr/sbin/inputattach && \ - install -D -m644 $startdir/src/inputattach.conf.d \ - $startdir/pkg/etc/conf.d/inputattach.conf && \ - install -D -m755 $startdir/src/inputattach.rc.d \ - $startdir/pkg/etc/rc.d/inputattach + # 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" + + 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" } diff --git a/community/inputattach/inputattach.conf.d b/community/inputattach/inputattach.conf.d index 1e04240fa..ae8d1842a 100644 --- a/community/inputattach/inputattach.conf.d +++ b/community/inputattach/inputattach.conf.d @@ -1,11 +1,10 @@ # # Configuration for inputattach # +# IAPARAMS is an array of inputattach arguments, see 'inputattach --help'. +# An inputattach instance will be started for each element. -# inputattach mode - see 'inputattach --help' for list e.g. "--microsoft" for -# 2 button Microsoft mouse -IAMODE="--microsoft" - -# inputattach device - /dev file entry where device is attached e.g. -# "/dev/ttyS0" for device attached to first system serial port -IADEV="/dev/ttyS0" +IAPARAMS=( + "--microsoft /dev/ttyS0" + #"--baud 9600 --w8001 /dev/ttyS1" +) diff --git a/community/inputattach/inputattach.install b/community/inputattach/inputattach.install index 965958b6b..b5381e14a 100644 --- a/community/inputattach/inputattach.install +++ b/community/inputattach/inputattach.install @@ -1,9 +1,18 @@ ## arg 1: the new package version + +post_upgrade() { + (( $(vercmp 1.24-3 $2) > 0 )) && cat <<MSG +ATTENTION: + /etc/conf.d/inputattach.conf has been replaced by /etc/conf.d/inputattach + Make sure you adjust the new config file, which has a new format. +MSG +} + post_install() { cat << EOF The correct device mode and /dev device file will need to be set in -/etc/conf.d/inputattach.conf before starting /etc/rc.d/inputattach +/etc/conf.d/inputattach before starting /etc/rc.d/inputattach EOF } diff --git a/community/inputattach/inputattach.rc.d b/community/inputattach/inputattach.rc.d index 7f260f9f8..6b92827be 100644 --- a/community/inputattach/inputattach.rc.d +++ b/community/inputattach/inputattach.rc.d @@ -1,60 +1,37 @@ #!/bin/bash -daemon_name=inputattach - . /etc/rc.conf - -. /etc/conf.d/$daemon_name.conf - . /etc/rc.d/functions - -get_pid() { - pidof $daemon_name -} +. /etc/conf.d/inputattach case "$1" in start) - stat_busy "Starting $daemon_name daemon" - - PID=`get_pid` - if [ -z "$PID" ]; then - [ -f /var/run/$daemon_name.pid ] && rm -f /var/run/$daemon_name.pid - # RUN - $daemon_name --daemon $IAMODE $IADEV - # - if [ $? -gt 0 ]; then + stat_busy "Starting inputattach" + for param in ${IAPARAMS[@]}; do + if ! /usr/sbin/inputattach --daemon $param; then stat_fail exit 1 - else - echo `get_pid` > /var/run/$daemon_name.pid - add_daemon $daemon_name - stat_done fi - else - stat_fail - exit 1 - fi - ;; + done + add_daemon inputattach + stat_done + ;; stop) - stat_busy "Stopping $daemon_name daemon" - PID=`get_pid` - # KILL - [ ! -z "$PID" ] && kill $PID &> /dev/null - # + stat_busy "Stopping inputattach" + PID=`pidof -o %PPID /usr/sbin/inputattach` + [ ! -z "$PID" ] && kill $PID &>/dev/null if [ $? -gt 0 ]; then stat_fail exit 1 else - rm -f /var/run/$daemon_name.pid &> /dev/null - rm_daemon $daemon_name + rm_daemon inputattach stat_done fi ;; - restart) $0 stop - sleep 3 + sleep 1 $0 start ;; *) diff --git a/community/libmicrohttpd/PKGBUILD b/community/libmicrohttpd/PKGBUILD index 44a231cd4..cf578117f 100644 --- a/community/libmicrohttpd/PKGBUILD +++ b/community/libmicrohttpd/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 43754 2011-03-29 17:11:14Z spupykin $ +# $Id: PKGBUILD 45868 2011-04-30 09:25:16Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Norberto Lopes <shelika@mail.telepac.pt> # Contributor: Kao Dome <kaodome@gmail.com> @@ -6,7 +6,7 @@ # Contributor: Mathias Rohnstock <linksoft@gmx.de> pkgname=libmicrohttpd -pkgver=0.9.9 +pkgver=0.9.10 pkgrel=1 pkgdesc="a small C library that is supposed to make it easy to run an HTTP server as part of another application." arch=('i686' 'x86_64') @@ -14,8 +14,9 @@ url="http://www.gnu.org/software/libmicrohttpd/" license=('LGPL') options=('!libtool') depends=('gnutls') +install=libmicrohttpd.install source=(ftp://ftp.gnu.org/gnu/libmicrohttpd/$pkgname-$pkgver.tar.gz) -md5sums=('0114a439bb3cca9d9ca9e43b1f4fd0b1') +md5sums=('7cc44373fe1b03348510755839091578') build() { cd ${pkgname}-${pkgver} diff --git a/community/libmicrohttpd/libmicrohttpd.install b/community/libmicrohttpd/libmicrohttpd.install new file mode 100644 index 000000000..dc0d2b996 --- /dev/null +++ b/community/libmicrohttpd/libmicrohttpd.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(microhttpd.info microhttpd-tutorial.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/community/liboobs/PKGBUILD b/community/liboobs/PKGBUILD index fd27f0b64..b4a46a2d2 100644 --- a/community/liboobs/PKGBUILD +++ b/community/liboobs/PKGBUILD @@ -1,23 +1,26 @@ -# $Id: PKGBUILD 27928 2010-09-30 14:47:40Z ibiru $ +# $Id: PKGBUILD 44470 2011-04-07 19:06:42Z ibiru $ # Maintainer : Ionut Biru<ibiru@archlinux.org> # Contributor: Hugo Doria <hugodoria@gmail.com> pkgname=liboobs -pkgver=2.32.0 +pkgver=3.0.0 pkgrel=1 arch=('i686' 'x86_64') pkgdesc="A wrapping library to the System Tools Backends" url="ftp://ftp.gnome.org/pub/GNOME/sources/liboobs/" license=('GPL') -depends=('system-tools-backends>=2.10.1') +depends=('system-tools-backends') makedepends=('pkgconfig') options=('!libtool') -source=(http://ftp.gnome.org/pub/GNOME/sources/liboobs/2.32/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('1b70061272b2c777d505b5b6c785e045d4297639dd0d4214d04dea154a9b63d6') +source=(http://ftp.gnome.org/pub/GNOME/sources/liboobs/3.0/${pkgname}-${pkgver}.tar.bz2) +sha256sums=('1e7a327df7dcfa30e0cd3e0d2ffcd9a2c91c7870291dd30434b5da907945c00a') build() { cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr --disable-static make +} +package() { + cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR=${pkgdir} install } diff --git a/community/perl-gtk2-webkit/PKGBUILD b/community/perl-gtk2-webkit/PKGBUILD index 3559b26f7..038f4748a 100644 --- a/community/perl-gtk2-webkit/PKGBUILD +++ b/community/perl-gtk2-webkit/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 35664 2010-12-21 23:31:37Z tdziedzic $ +# $Id: PKGBUILD 44460 2011-04-07 16:27:39Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Corrado Primier <bardo@aur.archlinux.org> pkgname=perl-gtk2-webkit pkgver=0.08 -pkgrel=2 +pkgrel=3 pkgdesc="Gtk2::WebKit" arch=('i686' 'x86_64') url="http://search.cpan.org/dist/Gtk2-WebKit" diff --git a/community/python-cherrypy/837.2049.patch b/community/python-cherrypy/837.2049.patch new file mode 100644 index 000000000..20cc0dd36 --- /dev/null +++ b/community/python-cherrypy/837.2049.patch @@ -0,0 +1,554 @@ +Index: cherrypy/test/test_tools.py +=================================================================== +--- cherrypy/test/test_tools.py (revision 2049) ++++ cherrypy/test/test_tools.py (working copy) +@@ -3,6 +3,7 @@ + import gzip + import StringIO + import sys ++from httplib import IncompleteRead + import time + timeout = 0.2 + +@@ -272,8 +273,12 @@ + # Because this error is raised after the response body has + # started, and because it's chunked output, an error is raised by + # the HTTP client when it encounters incomplete output. +- self.assertRaises(ValueError, self.getPage, +- "/demo/errinstream?id=5") ++ if sys.version_info[:2] >= (2, 6): ++ self.assertRaises(IncompleteRead, self.getPage, ++ "/demo/errinstream?id=5") ++ else: ++ self.assertRaises(ValueError, self.getPage, ++ "/demo/errinstream?id=5") + # If this fails, then on_end_request isn't being called at all. + time.sleep(0.1) + self.getPage("/demo/ended/5") +Index: cherrypy/test/webtest.py +=================================================================== +--- cherrypy/test/webtest.py (revision 2049) ++++ cherrypy/test/webtest.py (working copy) +@@ -491,7 +491,7 @@ + # IN6ADDR_ANY, which should respond on localhost. + host = "::1" + conn = http_conn(host, port) +- ++ + conn._http_vsn_str = protocol + conn._http_vsn = int("".join([x for x in protocol if x.isdigit()])) + +Index: cherrypy/test/test_encoding.py +=================================================================== +--- cherrypy/test/test_encoding.py (revision 2049) ++++ cherrypy/test/test_encoding.py (working copy) +@@ -1,7 +1,9 @@ + from cherrypy.test import test + test.prefer_parent_path() + ++import sys + import gzip, StringIO ++from httplib import IncompleteRead + import cherrypy + europoundUnicode = u'\x80\xa3' + europoundUtf8 = u'\x80\xa3'.encode('utf-8') +@@ -160,10 +162,13 @@ + else: + # The wsgiserver will simply stop sending data, and the HTTP client + # will error due to an incomplete chunk-encoded stream. +- self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream', +- headers=[("Accept-Encoding", "gzip")]) ++ if sys.version_info[:2] >= (2, 6): ++ self.assertRaises(IncompleteRead, self.getPage, '/gzip/noshow_stream', ++ headers=[("Accept-Encoding", "gzip")]) ++ else: ++ self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream', ++ headers=[("Accept-Encoding", "gzip")]) + +- + if __name__ == "__main__": + setup_server() + helper.testmain() +Index: cherrypy/test/test_core.py +=================================================================== +--- cherrypy/test/test_core.py (revision 2049) ++++ cherrypy/test/test_core.py (working copy) +@@ -7,6 +7,7 @@ + localDir = os.path.dirname(__file__) + import sys + import types ++from httplib import IncompleteRead + + import cherrypy + from cherrypy import _cptools, tools +@@ -760,8 +761,12 @@ + else: + # Under HTTP/1.1, the chunked transfer-coding is used. + # The HTTP client will choke when the output is incomplete. +- self.assertRaises(ValueError, self.getPage, +- "/error/page_streamed") ++ if sys.version_info[:2] >= (2, 6): ++ self.assertRaises(IncompleteRead, self.getPage, ++ "/error/page_streamed") ++ else: ++ self.assertRaises(ValueError, self.getPage, ++ "/error/page_streamed") + + # No traceback should be present + self.getPage("/error/cause_err_in_finalize") +Index: cherrypy/wsgiserver/__init__.py +=================================================================== +--- cherrypy/wsgiserver/__init__.py (revision 2049) ++++ cherrypy/wsgiserver/__init__.py (working copy) +@@ -713,148 +713,325 @@ + """Exception raised when the SSL implementation signals a fatal alert.""" + pass + ++if sys.version_info[:2] >= (2, 6) or sys.version_info[:3] >= (2, 5, 2): ++ class CP_fileobject(socket._fileobject): ++ """Faux file object attached to a socket object.""" + +-class CP_fileobject(socket._fileobject): +- """Faux file object attached to a socket object.""" +- +- def sendall(self, data): +- """Sendall for non-blocking sockets.""" +- while data: +- try: +- bytes_sent = self.send(data) +- data = data[bytes_sent:] +- except socket.error, e: +- if e.args[0] not in socket_errors_nonblocking: +- raise +- +- def send(self, data): +- return self._sock.send(data) +- +- def flush(self): +- if self._wbuf: +- buffer = "".join(self._wbuf) +- self._wbuf = [] +- self.sendall(buffer) +- +- def recv(self, size): +- while True: +- try: +- return self._sock.recv(size) +- except socket.error, e: +- if e.args[0] not in socket_errors_nonblocking: +- raise +- +- def read(self, size=-1): +- if size < 0: +- # Read until EOF +- buffers = [self._rbuf] +- self._rbuf = "" +- if self._rbufsize <= 1: +- recv_size = self.default_bufsize ++ def sendall(self, data): ++ """Sendall for non-blocking sockets.""" ++ while data: ++ try: ++ bytes_sent = self.send(data) ++ data = data[bytes_sent:] ++ except socket.error, e: ++ if e.args[0] not in socket_errors_nonblocking: ++ raise ++ ++ def send(self, data): ++ return self._sock.send(data) ++ ++ def flush(self): ++ if self._wbuf: ++ buffer = "".join(self._wbuf) ++ self._wbuf = [] ++ self.sendall(buffer) ++ ++ def recv(self, size): ++ while True: ++ try: ++ return self._sock.recv(size) ++ except socket.error, e: ++ if e.args[0] not in socket_errors_nonblocking: ++ raise ++ ++ def read(self, size=-1): ++ # Use max, disallow tiny reads in a loop as they are very inefficient. ++ # We never leave read() with any leftover data from a new recv() call ++ # in our internal buffer. ++ rbufsize = max(self._rbufsize, self.default_bufsize) ++ # Our use of StringIO rather than lists of string objects returned by ++ # recv() minimizes memory usage and fragmentation that occurs when ++ # rbufsize is large compared to the typical return value of recv(). ++ buf = self._rbuf ++ buf.seek(0, 2) # seek end ++ if size < 0: ++ # Read until EOF ++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf. ++ while True: ++ data = self.recv(rbufsize) ++ if not data: ++ break ++ buf.write(data) ++ return buf.getvalue() + else: +- recv_size = self._rbufsize +- ++ # Read until size bytes or EOF seen, whichever comes first ++ buf_len = buf.tell() ++ if buf_len >= size: ++ # Already have size bytes in our buffer? Extract and return. ++ buf.seek(0) ++ rv = buf.read(size) ++ self._rbuf = StringIO.StringIO() ++ self._rbuf.write(buf.read()) ++ return rv ++ ++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf. ++ while True: ++ left = size - buf_len ++ # recv() will malloc the amount of memory given as its ++ # parameter even though it often returns much less data ++ # than that. The returned data string is short lived ++ # as we copy it into a StringIO and free it. This avoids ++ # fragmentation issues on many platforms. ++ data = self.recv(left) ++ if not data: ++ break ++ n = len(data) ++ if n == size and not buf_len: ++ # Shortcut. Avoid buffer data copies when: ++ # - We have no data in our buffer. ++ # AND ++ # - Our call to recv returned exactly the ++ # number of bytes we were asked to read. ++ return data ++ if n == left: ++ buf.write(data) ++ del data # explicit free ++ break ++ assert n <= left, "recv(%d) returned %d bytes" % (left, n) ++ buf.write(data) ++ buf_len += n ++ del data # explicit free ++ #assert buf_len == buf.tell() ++ return buf.getvalue() ++ ++ def readline(self, size=-1): ++ buf = self._rbuf ++ buf.seek(0, 2) # seek end ++ if buf.tell() > 0: ++ # check if we already have it in our buffer ++ buf.seek(0) ++ bline = buf.readline(size) ++ if bline.endswith('\n') or len(bline) == size: ++ self._rbuf = StringIO.StringIO() ++ self._rbuf.write(buf.read()) ++ return bline ++ del bline ++ if size < 0: ++ # Read until \n or EOF, whichever comes first ++ if self._rbufsize <= 1: ++ # Speed up unbuffered case ++ buf.seek(0) ++ buffers = [buf.read()] ++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf. ++ data = None ++ recv = self.recv ++ while data != "\n": ++ data = recv(1) ++ if not data: ++ break ++ buffers.append(data) ++ return "".join(buffers) ++ ++ buf.seek(0, 2) # seek end ++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf. ++ while True: ++ data = self.recv(self._rbufsize) ++ if not data: ++ break ++ nl = data.find('\n') ++ if nl >= 0: ++ nl += 1 ++ buf.write(data[:nl]) ++ self._rbuf.write(data[nl:]) ++ del data ++ break ++ buf.write(data) ++ return buf.getvalue() ++ else: ++ # Read until size bytes or \n or EOF seen, whichever comes first ++ buf.seek(0, 2) # seek end ++ buf_len = buf.tell() ++ if buf_len >= size: ++ buf.seek(0) ++ rv = buf.read(size) ++ self._rbuf = StringIO.StringIO() ++ self._rbuf.write(buf.read()) ++ return rv ++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf. ++ while True: ++ data = self.recv(self._rbufsize) ++ if not data: ++ break ++ left = size - buf_len ++ # did we just receive a newline? ++ nl = data.find('\n', 0, left) ++ if nl >= 0: ++ nl += 1 ++ # save the excess data to _rbuf ++ self._rbuf.write(data[nl:]) ++ if buf_len: ++ buf.write(data[:nl]) ++ break ++ else: ++ # Shortcut. Avoid data copy through buf when returning ++ # a substring of our first recv(). ++ return data[:nl] ++ n = len(data) ++ if n == size and not buf_len: ++ # Shortcut. Avoid data copy through buf when ++ # returning exactly all of our first recv(). ++ return data ++ if n >= left: ++ buf.write(data[:left]) ++ self._rbuf.write(data[left:]) ++ break ++ buf.write(data) ++ buf_len += n ++ #assert buf_len == buf.tell() ++ return buf.getvalue() ++ ++else: ++ class CP_fileobject(socket._fileobject): ++ """Faux file object attached to a socket object.""" ++ ++ def sendall(self, data): ++ """Sendall for non-blocking sockets.""" ++ while data: ++ try: ++ bytes_sent = self.send(data) ++ data = data[bytes_sent:] ++ except socket.error, e: ++ if e.args[0] not in socket_errors_nonblocking: ++ raise ++ ++ def send(self, data): ++ return self._sock.send(data) ++ ++ def flush(self): ++ if self._wbuf: ++ buffer = "".join(self._wbuf) ++ self._wbuf = [] ++ self.sendall(buffer) ++ ++ def recv(self, size): + while True: +- data = self.recv(recv_size) +- if not data: +- break +- buffers.append(data) +- return "".join(buffers) +- else: +- # Read until size bytes or EOF seen, whichever comes first +- data = self._rbuf +- buf_len = len(data) +- if buf_len >= size: +- self._rbuf = data[size:] +- return data[:size] +- buffers = [] +- if data: +- buffers.append(data) +- self._rbuf = "" +- while True: +- left = size - buf_len +- recv_size = max(self._rbufsize, left) +- data = self.recv(recv_size) +- if not data: +- break +- buffers.append(data) +- n = len(data) +- if n >= left: +- self._rbuf = data[left:] +- buffers[-1] = data[:left] +- break +- buf_len += n +- return "".join(buffers) ++ try: ++ return self._sock.recv(size) ++ except socket.error, e: ++ if e.args[0] not in socket_errors_nonblocking: ++ raise + +- def readline(self, size=-1): +- data = self._rbuf +- if size < 0: +- # Read until \n or EOF, whichever comes first +- if self._rbufsize <= 1: +- # Speed up unbuffered case +- assert data == "" ++ def read(self, size=-1): ++ if size < 0: ++ # Read until EOF ++ buffers = [self._rbuf] ++ self._rbuf = "" ++ if self._rbufsize <= 1: ++ recv_size = self.default_bufsize ++ else: ++ recv_size = self._rbufsize ++ ++ while True: ++ data = self.recv(recv_size) ++ if not data: ++ break ++ buffers.append(data) ++ return "".join(buffers) ++ else: ++ # Read until size bytes or EOF seen, whichever comes first ++ data = self._rbuf ++ buf_len = len(data) ++ if buf_len >= size: ++ self._rbuf = data[size:] ++ return data[:size] + buffers = [] +- while data != "\n": +- data = self.recv(1) ++ if data: ++ buffers.append(data) ++ self._rbuf = "" ++ while True: ++ left = size - buf_len ++ recv_size = max(self._rbufsize, left) ++ data = self.recv(recv_size) + if not data: + break + buffers.append(data) ++ n = len(data) ++ if n >= left: ++ self._rbuf = data[left:] ++ buffers[-1] = data[:left] ++ break ++ buf_len += n + return "".join(buffers) +- nl = data.find('\n') +- if nl >= 0: +- nl += 1 +- self._rbuf = data[nl:] +- return data[:nl] +- buffers = [] +- if data: +- buffers.append(data) +- self._rbuf = "" +- while True: +- data = self.recv(self._rbufsize) +- if not data: +- break +- buffers.append(data) ++ ++ def readline(self, size=-1): ++ data = self._rbuf ++ if size < 0: ++ # Read until \n or EOF, whichever comes first ++ if self._rbufsize <= 1: ++ # Speed up unbuffered case ++ assert data == "" ++ buffers = [] ++ while data != "\n": ++ data = self.recv(1) ++ if not data: ++ break ++ buffers.append(data) ++ return "".join(buffers) + nl = data.find('\n') + if nl >= 0: + nl += 1 + self._rbuf = data[nl:] +- buffers[-1] = data[:nl] +- break +- return "".join(buffers) +- else: +- # Read until size bytes or \n or EOF seen, whichever comes first +- nl = data.find('\n', 0, size) +- if nl >= 0: +- nl += 1 +- self._rbuf = data[nl:] +- return data[:nl] +- buf_len = len(data) +- if buf_len >= size: +- self._rbuf = data[size:] +- return data[:size] +- buffers = [] +- if data: +- buffers.append(data) +- self._rbuf = "" +- while True: +- data = self.recv(self._rbufsize) +- if not data: +- break +- buffers.append(data) +- left = size - buf_len +- nl = data.find('\n', 0, left) ++ return data[:nl] ++ buffers = [] ++ if data: ++ buffers.append(data) ++ self._rbuf = "" ++ while True: ++ data = self.recv(self._rbufsize) ++ if not data: ++ break ++ buffers.append(data) ++ nl = data.find('\n') ++ if nl >= 0: ++ nl += 1 ++ self._rbuf = data[nl:] ++ buffers[-1] = data[:nl] ++ break ++ return "".join(buffers) ++ else: ++ # Read until size bytes or \n or EOF seen, whichever comes first ++ nl = data.find('\n', 0, size) + if nl >= 0: + nl += 1 + self._rbuf = data[nl:] +- buffers[-1] = data[:nl] +- break +- n = len(data) +- if n >= left: +- self._rbuf = data[left:] +- buffers[-1] = data[:left] +- break +- buf_len += n +- return "".join(buffers) ++ return data[:nl] ++ buf_len = len(data) ++ if buf_len >= size: ++ self._rbuf = data[size:] ++ return data[:size] ++ buffers = [] ++ if data: ++ buffers.append(data) ++ self._rbuf = "" ++ while True: ++ data = self.recv(self._rbufsize) ++ if not data: ++ break ++ buffers.append(data) ++ left = size - buf_len ++ nl = data.find('\n', 0, left) ++ if nl >= 0: ++ nl += 1 ++ self._rbuf = data[nl:] ++ buffers[-1] = data[:nl] ++ break ++ n = len(data) ++ if n >= left: ++ self._rbuf = data[left:] ++ buffers[-1] = data[:left] ++ break ++ buf_len += n ++ return "".join(buffers) + + + class SSL_fileobject(CP_fileobject): diff --git a/community/python-cherrypy/ChangeLog b/community/python-cherrypy/ChangeLog new file mode 100644 index 000000000..90276417c --- /dev/null +++ b/community/python-cherrypy/ChangeLog @@ -0,0 +1,26 @@ + +2009-04-15 Douglas Soares de Andrade <douglas@archlinux.org> + + * Updated for i686: 3.1.2 + +2008-12-14 Douglas Soares de Andrade <douglas@archlinux.org> + + * Updated for i686: 3.1.1 + +2008-11-04 Douglas Soares de Andrade <douglas@archlinux.org> + + * Updated for python 2.6 + * Thanks to David Moore + +2008-07-09 Mateusz Herych <heniekk@gmail.com> + + * Updating for x86_64: 3.1.0 + +2008-07-09 Douglas Soares de Andrade <douglas@archlinux.org> + + * Updating for i686: 3.1.0 + +2008-02-28 Douglas Soares de Andrade <dsa@aur.archlinux.org> + + * Updating in i686: 3.0.3 + diff --git a/community/python-cherrypy/PKGBUILD b/community/python-cherrypy/PKGBUILD new file mode 100644 index 000000000..b352f6296 --- /dev/null +++ b/community/python-cherrypy/PKGBUILD @@ -0,0 +1,23 @@ +$Id: PKGBUILD 40928 2011-03-01 19:03:36Z angvp $ +# Maintainer: Angel Velasquez <angvp@archlinux.org> +# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org> +# Contributor: Armando M. Baratti <amblistas@ajato.com.br> +# Contributor: Florian Richter <Florian_Richter@gmx.de> +pkgname=cherrypy +pkgver=3.2.0 +pkgrel=1 +pkgdesc="A pythonic, object-oriented web development framework" +arch=('i686' 'x86_64') +url="http://www.cherrypy.org" +license=('BSD') +depends=('python2') +source=(http://download.cherrypy.org/cherrypy/$pkgver/CherryPy-$pkgver.tar.gz + license) +md5sums=('e5c1322bf5ce962c16283ab7a6dcca3f' + '22365dc6b0e6835b53da009aa36af017') + +build() { + cd $srcdir/CherryPy-$pkgver + python2 ./setup.py install --root=$pkgdir + install -D -m644 $srcdir/license $pkgdir/usr/share/licenses/$pkgname/license +} diff --git a/community/python-cherrypy/license b/community/python-cherrypy/license new file mode 100644 index 000000000..32e9cf6bd --- /dev/null +++ b/community/python-cherrypy/license @@ -0,0 +1,25 @@ +Copyright (c) 2004, CherryPy Team (team@cherrypy.org) +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * 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. + * Neither the name of the CherryPy Team nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 THE COPYRIGHT OWNER OR CONTRIBUTORS 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/python2-cherrypy/837.2049.patch b/community/python2-cherrypy/837.2049.patch new file mode 100644 index 000000000..20cc0dd36 --- /dev/null +++ b/community/python2-cherrypy/837.2049.patch @@ -0,0 +1,554 @@ +Index: cherrypy/test/test_tools.py +=================================================================== +--- cherrypy/test/test_tools.py (revision 2049) ++++ cherrypy/test/test_tools.py (working copy) +@@ -3,6 +3,7 @@ + import gzip + import StringIO + import sys ++from httplib import IncompleteRead + import time + timeout = 0.2 + +@@ -272,8 +273,12 @@ + # Because this error is raised after the response body has + # started, and because it's chunked output, an error is raised by + # the HTTP client when it encounters incomplete output. +- self.assertRaises(ValueError, self.getPage, +- "/demo/errinstream?id=5") ++ if sys.version_info[:2] >= (2, 6): ++ self.assertRaises(IncompleteRead, self.getPage, ++ "/demo/errinstream?id=5") ++ else: ++ self.assertRaises(ValueError, self.getPage, ++ "/demo/errinstream?id=5") + # If this fails, then on_end_request isn't being called at all. + time.sleep(0.1) + self.getPage("/demo/ended/5") +Index: cherrypy/test/webtest.py +=================================================================== +--- cherrypy/test/webtest.py (revision 2049) ++++ cherrypy/test/webtest.py (working copy) +@@ -491,7 +491,7 @@ + # IN6ADDR_ANY, which should respond on localhost. + host = "::1" + conn = http_conn(host, port) +- ++ + conn._http_vsn_str = protocol + conn._http_vsn = int("".join([x for x in protocol if x.isdigit()])) + +Index: cherrypy/test/test_encoding.py +=================================================================== +--- cherrypy/test/test_encoding.py (revision 2049) ++++ cherrypy/test/test_encoding.py (working copy) +@@ -1,7 +1,9 @@ + from cherrypy.test import test + test.prefer_parent_path() + ++import sys + import gzip, StringIO ++from httplib import IncompleteRead + import cherrypy + europoundUnicode = u'\x80\xa3' + europoundUtf8 = u'\x80\xa3'.encode('utf-8') +@@ -160,10 +162,13 @@ + else: + # The wsgiserver will simply stop sending data, and the HTTP client + # will error due to an incomplete chunk-encoded stream. +- self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream', +- headers=[("Accept-Encoding", "gzip")]) ++ if sys.version_info[:2] >= (2, 6): ++ self.assertRaises(IncompleteRead, self.getPage, '/gzip/noshow_stream', ++ headers=[("Accept-Encoding", "gzip")]) ++ else: ++ self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream', ++ headers=[("Accept-Encoding", "gzip")]) + +- + if __name__ == "__main__": + setup_server() + helper.testmain() +Index: cherrypy/test/test_core.py +=================================================================== +--- cherrypy/test/test_core.py (revision 2049) ++++ cherrypy/test/test_core.py (working copy) +@@ -7,6 +7,7 @@ + localDir = os.path.dirname(__file__) + import sys + import types ++from httplib import IncompleteRead + + import cherrypy + from cherrypy import _cptools, tools +@@ -760,8 +761,12 @@ + else: + # Under HTTP/1.1, the chunked transfer-coding is used. + # The HTTP client will choke when the output is incomplete. +- self.assertRaises(ValueError, self.getPage, +- "/error/page_streamed") ++ if sys.version_info[:2] >= (2, 6): ++ self.assertRaises(IncompleteRead, self.getPage, ++ "/error/page_streamed") ++ else: ++ self.assertRaises(ValueError, self.getPage, ++ "/error/page_streamed") + + # No traceback should be present + self.getPage("/error/cause_err_in_finalize") +Index: cherrypy/wsgiserver/__init__.py +=================================================================== +--- cherrypy/wsgiserver/__init__.py (revision 2049) ++++ cherrypy/wsgiserver/__init__.py (working copy) +@@ -713,148 +713,325 @@ + """Exception raised when the SSL implementation signals a fatal alert.""" + pass + ++if sys.version_info[:2] >= (2, 6) or sys.version_info[:3] >= (2, 5, 2): ++ class CP_fileobject(socket._fileobject): ++ """Faux file object attached to a socket object.""" + +-class CP_fileobject(socket._fileobject): +- """Faux file object attached to a socket object.""" +- +- def sendall(self, data): +- """Sendall for non-blocking sockets.""" +- while data: +- try: +- bytes_sent = self.send(data) +- data = data[bytes_sent:] +- except socket.error, e: +- if e.args[0] not in socket_errors_nonblocking: +- raise +- +- def send(self, data): +- return self._sock.send(data) +- +- def flush(self): +- if self._wbuf: +- buffer = "".join(self._wbuf) +- self._wbuf = [] +- self.sendall(buffer) +- +- def recv(self, size): +- while True: +- try: +- return self._sock.recv(size) +- except socket.error, e: +- if e.args[0] not in socket_errors_nonblocking: +- raise +- +- def read(self, size=-1): +- if size < 0: +- # Read until EOF +- buffers = [self._rbuf] +- self._rbuf = "" +- if self._rbufsize <= 1: +- recv_size = self.default_bufsize ++ def sendall(self, data): ++ """Sendall for non-blocking sockets.""" ++ while data: ++ try: ++ bytes_sent = self.send(data) ++ data = data[bytes_sent:] ++ except socket.error, e: ++ if e.args[0] not in socket_errors_nonblocking: ++ raise ++ ++ def send(self, data): ++ return self._sock.send(data) ++ ++ def flush(self): ++ if self._wbuf: ++ buffer = "".join(self._wbuf) ++ self._wbuf = [] ++ self.sendall(buffer) ++ ++ def recv(self, size): ++ while True: ++ try: ++ return self._sock.recv(size) ++ except socket.error, e: ++ if e.args[0] not in socket_errors_nonblocking: ++ raise ++ ++ def read(self, size=-1): ++ # Use max, disallow tiny reads in a loop as they are very inefficient. ++ # We never leave read() with any leftover data from a new recv() call ++ # in our internal buffer. ++ rbufsize = max(self._rbufsize, self.default_bufsize) ++ # Our use of StringIO rather than lists of string objects returned by ++ # recv() minimizes memory usage and fragmentation that occurs when ++ # rbufsize is large compared to the typical return value of recv(). ++ buf = self._rbuf ++ buf.seek(0, 2) # seek end ++ if size < 0: ++ # Read until EOF ++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf. ++ while True: ++ data = self.recv(rbufsize) ++ if not data: ++ break ++ buf.write(data) ++ return buf.getvalue() + else: +- recv_size = self._rbufsize +- ++ # Read until size bytes or EOF seen, whichever comes first ++ buf_len = buf.tell() ++ if buf_len >= size: ++ # Already have size bytes in our buffer? Extract and return. ++ buf.seek(0) ++ rv = buf.read(size) ++ self._rbuf = StringIO.StringIO() ++ self._rbuf.write(buf.read()) ++ return rv ++ ++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf. ++ while True: ++ left = size - buf_len ++ # recv() will malloc the amount of memory given as its ++ # parameter even though it often returns much less data ++ # than that. The returned data string is short lived ++ # as we copy it into a StringIO and free it. This avoids ++ # fragmentation issues on many platforms. ++ data = self.recv(left) ++ if not data: ++ break ++ n = len(data) ++ if n == size and not buf_len: ++ # Shortcut. Avoid buffer data copies when: ++ # - We have no data in our buffer. ++ # AND ++ # - Our call to recv returned exactly the ++ # number of bytes we were asked to read. ++ return data ++ if n == left: ++ buf.write(data) ++ del data # explicit free ++ break ++ assert n <= left, "recv(%d) returned %d bytes" % (left, n) ++ buf.write(data) ++ buf_len += n ++ del data # explicit free ++ #assert buf_len == buf.tell() ++ return buf.getvalue() ++ ++ def readline(self, size=-1): ++ buf = self._rbuf ++ buf.seek(0, 2) # seek end ++ if buf.tell() > 0: ++ # check if we already have it in our buffer ++ buf.seek(0) ++ bline = buf.readline(size) ++ if bline.endswith('\n') or len(bline) == size: ++ self._rbuf = StringIO.StringIO() ++ self._rbuf.write(buf.read()) ++ return bline ++ del bline ++ if size < 0: ++ # Read until \n or EOF, whichever comes first ++ if self._rbufsize <= 1: ++ # Speed up unbuffered case ++ buf.seek(0) ++ buffers = [buf.read()] ++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf. ++ data = None ++ recv = self.recv ++ while data != "\n": ++ data = recv(1) ++ if not data: ++ break ++ buffers.append(data) ++ return "".join(buffers) ++ ++ buf.seek(0, 2) # seek end ++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf. ++ while True: ++ data = self.recv(self._rbufsize) ++ if not data: ++ break ++ nl = data.find('\n') ++ if nl >= 0: ++ nl += 1 ++ buf.write(data[:nl]) ++ self._rbuf.write(data[nl:]) ++ del data ++ break ++ buf.write(data) ++ return buf.getvalue() ++ else: ++ # Read until size bytes or \n or EOF seen, whichever comes first ++ buf.seek(0, 2) # seek end ++ buf_len = buf.tell() ++ if buf_len >= size: ++ buf.seek(0) ++ rv = buf.read(size) ++ self._rbuf = StringIO.StringIO() ++ self._rbuf.write(buf.read()) ++ return rv ++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf. ++ while True: ++ data = self.recv(self._rbufsize) ++ if not data: ++ break ++ left = size - buf_len ++ # did we just receive a newline? ++ nl = data.find('\n', 0, left) ++ if nl >= 0: ++ nl += 1 ++ # save the excess data to _rbuf ++ self._rbuf.write(data[nl:]) ++ if buf_len: ++ buf.write(data[:nl]) ++ break ++ else: ++ # Shortcut. Avoid data copy through buf when returning ++ # a substring of our first recv(). ++ return data[:nl] ++ n = len(data) ++ if n == size and not buf_len: ++ # Shortcut. Avoid data copy through buf when ++ # returning exactly all of our first recv(). ++ return data ++ if n >= left: ++ buf.write(data[:left]) ++ self._rbuf.write(data[left:]) ++ break ++ buf.write(data) ++ buf_len += n ++ #assert buf_len == buf.tell() ++ return buf.getvalue() ++ ++else: ++ class CP_fileobject(socket._fileobject): ++ """Faux file object attached to a socket object.""" ++ ++ def sendall(self, data): ++ """Sendall for non-blocking sockets.""" ++ while data: ++ try: ++ bytes_sent = self.send(data) ++ data = data[bytes_sent:] ++ except socket.error, e: ++ if e.args[0] not in socket_errors_nonblocking: ++ raise ++ ++ def send(self, data): ++ return self._sock.send(data) ++ ++ def flush(self): ++ if self._wbuf: ++ buffer = "".join(self._wbuf) ++ self._wbuf = [] ++ self.sendall(buffer) ++ ++ def recv(self, size): + while True: +- data = self.recv(recv_size) +- if not data: +- break +- buffers.append(data) +- return "".join(buffers) +- else: +- # Read until size bytes or EOF seen, whichever comes first +- data = self._rbuf +- buf_len = len(data) +- if buf_len >= size: +- self._rbuf = data[size:] +- return data[:size] +- buffers = [] +- if data: +- buffers.append(data) +- self._rbuf = "" +- while True: +- left = size - buf_len +- recv_size = max(self._rbufsize, left) +- data = self.recv(recv_size) +- if not data: +- break +- buffers.append(data) +- n = len(data) +- if n >= left: +- self._rbuf = data[left:] +- buffers[-1] = data[:left] +- break +- buf_len += n +- return "".join(buffers) ++ try: ++ return self._sock.recv(size) ++ except socket.error, e: ++ if e.args[0] not in socket_errors_nonblocking: ++ raise + +- def readline(self, size=-1): +- data = self._rbuf +- if size < 0: +- # Read until \n or EOF, whichever comes first +- if self._rbufsize <= 1: +- # Speed up unbuffered case +- assert data == "" ++ def read(self, size=-1): ++ if size < 0: ++ # Read until EOF ++ buffers = [self._rbuf] ++ self._rbuf = "" ++ if self._rbufsize <= 1: ++ recv_size = self.default_bufsize ++ else: ++ recv_size = self._rbufsize ++ ++ while True: ++ data = self.recv(recv_size) ++ if not data: ++ break ++ buffers.append(data) ++ return "".join(buffers) ++ else: ++ # Read until size bytes or EOF seen, whichever comes first ++ data = self._rbuf ++ buf_len = len(data) ++ if buf_len >= size: ++ self._rbuf = data[size:] ++ return data[:size] + buffers = [] +- while data != "\n": +- data = self.recv(1) ++ if data: ++ buffers.append(data) ++ self._rbuf = "" ++ while True: ++ left = size - buf_len ++ recv_size = max(self._rbufsize, left) ++ data = self.recv(recv_size) + if not data: + break + buffers.append(data) ++ n = len(data) ++ if n >= left: ++ self._rbuf = data[left:] ++ buffers[-1] = data[:left] ++ break ++ buf_len += n + return "".join(buffers) +- nl = data.find('\n') +- if nl >= 0: +- nl += 1 +- self._rbuf = data[nl:] +- return data[:nl] +- buffers = [] +- if data: +- buffers.append(data) +- self._rbuf = "" +- while True: +- data = self.recv(self._rbufsize) +- if not data: +- break +- buffers.append(data) ++ ++ def readline(self, size=-1): ++ data = self._rbuf ++ if size < 0: ++ # Read until \n or EOF, whichever comes first ++ if self._rbufsize <= 1: ++ # Speed up unbuffered case ++ assert data == "" ++ buffers = [] ++ while data != "\n": ++ data = self.recv(1) ++ if not data: ++ break ++ buffers.append(data) ++ return "".join(buffers) + nl = data.find('\n') + if nl >= 0: + nl += 1 + self._rbuf = data[nl:] +- buffers[-1] = data[:nl] +- break +- return "".join(buffers) +- else: +- # Read until size bytes or \n or EOF seen, whichever comes first +- nl = data.find('\n', 0, size) +- if nl >= 0: +- nl += 1 +- self._rbuf = data[nl:] +- return data[:nl] +- buf_len = len(data) +- if buf_len >= size: +- self._rbuf = data[size:] +- return data[:size] +- buffers = [] +- if data: +- buffers.append(data) +- self._rbuf = "" +- while True: +- data = self.recv(self._rbufsize) +- if not data: +- break +- buffers.append(data) +- left = size - buf_len +- nl = data.find('\n', 0, left) ++ return data[:nl] ++ buffers = [] ++ if data: ++ buffers.append(data) ++ self._rbuf = "" ++ while True: ++ data = self.recv(self._rbufsize) ++ if not data: ++ break ++ buffers.append(data) ++ nl = data.find('\n') ++ if nl >= 0: ++ nl += 1 ++ self._rbuf = data[nl:] ++ buffers[-1] = data[:nl] ++ break ++ return "".join(buffers) ++ else: ++ # Read until size bytes or \n or EOF seen, whichever comes first ++ nl = data.find('\n', 0, size) + if nl >= 0: + nl += 1 + self._rbuf = data[nl:] +- buffers[-1] = data[:nl] +- break +- n = len(data) +- if n >= left: +- self._rbuf = data[left:] +- buffers[-1] = data[:left] +- break +- buf_len += n +- return "".join(buffers) ++ return data[:nl] ++ buf_len = len(data) ++ if buf_len >= size: ++ self._rbuf = data[size:] ++ return data[:size] ++ buffers = [] ++ if data: ++ buffers.append(data) ++ self._rbuf = "" ++ while True: ++ data = self.recv(self._rbufsize) ++ if not data: ++ break ++ buffers.append(data) ++ left = size - buf_len ++ nl = data.find('\n', 0, left) ++ if nl >= 0: ++ nl += 1 ++ self._rbuf = data[nl:] ++ buffers[-1] = data[:nl] ++ break ++ n = len(data) ++ if n >= left: ++ self._rbuf = data[left:] ++ buffers[-1] = data[:left] ++ break ++ buf_len += n ++ return "".join(buffers) + + + class SSL_fileobject(CP_fileobject): diff --git a/community/python2-cherrypy/ChangeLog b/community/python2-cherrypy/ChangeLog new file mode 100644 index 000000000..90276417c --- /dev/null +++ b/community/python2-cherrypy/ChangeLog @@ -0,0 +1,26 @@ + +2009-04-15 Douglas Soares de Andrade <douglas@archlinux.org> + + * Updated for i686: 3.1.2 + +2008-12-14 Douglas Soares de Andrade <douglas@archlinux.org> + + * Updated for i686: 3.1.1 + +2008-11-04 Douglas Soares de Andrade <douglas@archlinux.org> + + * Updated for python 2.6 + * Thanks to David Moore + +2008-07-09 Mateusz Herych <heniekk@gmail.com> + + * Updating for x86_64: 3.1.0 + +2008-07-09 Douglas Soares de Andrade <douglas@archlinux.org> + + * Updating for i686: 3.1.0 + +2008-02-28 Douglas Soares de Andrade <dsa@aur.archlinux.org> + + * Updating in i686: 3.0.3 + diff --git a/community/python2-cherrypy/PKGBUILD b/community/python2-cherrypy/PKGBUILD new file mode 100644 index 000000000..b352f6296 --- /dev/null +++ b/community/python2-cherrypy/PKGBUILD @@ -0,0 +1,23 @@ +$Id: PKGBUILD 40928 2011-03-01 19:03:36Z angvp $ +# Maintainer: Angel Velasquez <angvp@archlinux.org> +# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org> +# Contributor: Armando M. Baratti <amblistas@ajato.com.br> +# Contributor: Florian Richter <Florian_Richter@gmx.de> +pkgname=cherrypy +pkgver=3.2.0 +pkgrel=1 +pkgdesc="A pythonic, object-oriented web development framework" +arch=('i686' 'x86_64') +url="http://www.cherrypy.org" +license=('BSD') +depends=('python2') +source=(http://download.cherrypy.org/cherrypy/$pkgver/CherryPy-$pkgver.tar.gz + license) +md5sums=('e5c1322bf5ce962c16283ab7a6dcca3f' + '22365dc6b0e6835b53da009aa36af017') + +build() { + cd $srcdir/CherryPy-$pkgver + python2 ./setup.py install --root=$pkgdir + install -D -m644 $srcdir/license $pkgdir/usr/share/licenses/$pkgname/license +} diff --git a/community/python2-cherrypy/license b/community/python2-cherrypy/license new file mode 100644 index 000000000..32e9cf6bd --- /dev/null +++ b/community/python2-cherrypy/license @@ -0,0 +1,25 @@ +Copyright (c) 2004, CherryPy Team (team@cherrypy.org) +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * 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. + * Neither the name of the CherryPy Team nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 THE COPYRIGHT OWNER OR CONTRIBUTORS 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/shotwell/PKGBUILD b/community/shotwell/PKGBUILD index 2f76d6944..4c795a861 100644 --- a/community/shotwell/PKGBUILD +++ b/community/shotwell/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 44302 2011-04-05 08:56:05Z spupykin $ +# $Id: PKGBUILD 45502 2011-04-22 15:22:48Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: Joeny Ang <ang(dot)joeny(at)gmail(dot)com> pkgname=shotwell -pkgver=0.9.1 +pkgver=0.9.3 pkgrel=1 pkgdesc="A digital photo organizer designed for the GNOME desktop environment" arch=('i686' 'x86_64') @@ -15,7 +15,7 @@ depends=('gconf' 'libgee' 'libgphoto2' 'libunique' 'libwebkit' 'libgexiv2' makedepends=('intltool' 'vala') install=shotwell.install source=(http://yorba.org/download/shotwell/0.9/${pkgname}-${pkgver}.tar.bz2) -md5sums=('1a98d1da59424a67b310cc39e8ad3368') +md5sums=('b1a3281be7d4ff8eac98289bcd129387') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/shotwell/shotwell.install b/community/shotwell/shotwell.install index ceac19051..83c95a70f 100644 --- a/community/shotwell/shotwell.install +++ b/community/shotwell/shotwell.install @@ -7,7 +7,7 @@ post_install() { } pre_upgrade() { - pre_remove $1 + usr/sbin/gconfpkg --uninstall ${pkgname} } post_upgrade() { @@ -16,9 +16,9 @@ post_upgrade() { pre_remove() { usr/sbin/gconfpkg --uninstall ${pkgname} - update-desktop-database -q } post_remove() { + update-desktop-database -q gtk-update-icon-cache -fq -t usr/share/icons/hicolor } diff --git a/community/surf/PKGBUILD b/community/surf/PKGBUILD index 2948cf361..c456f5c45 100644 --- a/community/surf/PKGBUILD +++ b/community/surf/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 31142 2010-10-27 11:32:19Z lfleischer $ +# $Id: PKGBUILD 44535 2011-04-08 08:10:39Z lfleischer $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Pierre Chapuis <catwell at archlinux dot us> # Contributor: Ray Kohler <ataraxia937 at gmail dot com> @@ -6,7 +6,7 @@ pkgname=surf pkgver=0.4.1 -pkgrel=1 +pkgrel=2 pkgdesc="A simple web browser based on WebKit/GTK+." arch=('i686' 'x86_64') url='http://surf.suckless.org/' diff --git a/community/system-tools-backends/PKGBUILD b/community/system-tools-backends/PKGBUILD index dc9b3e7f8..357916ff3 100644 --- a/community/system-tools-backends/PKGBUILD +++ b/community/system-tools-backends/PKGBUILD @@ -2,17 +2,17 @@ # Contributor: Hugo Doria <hugo@archlinux.org> pkgname=system-tools-backends -pkgver=2.10.1 +pkgver=2.10.2 pkgrel=1 pkgdesc='Backends for Gnome System Tools.' arch=('i686' 'x86_64') url='http://system-tools-backends.freedesktop.org/' license=('GPL') -depends=('perl>=5.12.1' 'perl-net-dbus' 'dbus>=1.4.0' 'polkit>=0.98' 'dbus-glib') +depends=('perl' 'perl-net-dbus' 'dbus' 'polkit' 'dbus-glib') makedepends=('perlxml' 'pkgconfig' 'intltool') source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.10/${pkgname}-${pkgver}.tar.bz2) install=system-tools-backends.install -sha256sums=('0c1cfdf5f0550c0ccacbbc4f00ed059ab9ea483d48138132db44b3a20575d7b4') +sha256sums=('1dbe5177df46a9c7250735e05e77129fe7ec04840771accfa87690111ca2c670') build() { cd ${pkgname}-${pkgver} diff --git a/community/uzbl/PKGBUILD b/community/uzbl/PKGBUILD index 7b0ae79cd..82bbe2770 100644 --- a/community/uzbl/PKGBUILD +++ b/community/uzbl/PKGBUILD @@ -1,18 +1,18 @@ -# $Id: PKGBUILD 43484 2011-03-26 16:57:27Z lcarlier $ +# $Id: PKGBUILD 45245 2011-04-18 20:59:54Z lcarlier $ # Maintainer : Laurent Carlier <lordheavym@gmail.com> # Contributor: Ionut Biru <ibiru@archlinux.org> # Contributor: Dieter Plaetinck <dieter@plaetinck.be> pkgbase=uzbl pkgname=('uzbl-core' 'uzbl-browser' 'uzbl-tabbed') -pkgver=2011.03.17 -pkgrel=1 +pkgver=2011.04.12 +pkgrel=2 arch=('i686' 'x86_64') url="http://www.uzbl.org" license=('GPL3') -makedepends=('git' 'pkgconfig' 'libwebkit>=1.2.0') +makedepends=('git' 'pkgconfig' 'libwebkit>=1.3.13') source=(uzbl-$pkgver.tar.gz::http://github.com/Dieterbe/uzbl/tarball/$pkgver) -md5sums=('fffd69136e0c4a9dce8875e776f7e97e') +md5sums=('27e82c838b8136dafb0683fa52ffc701') build() { cd "$srcdir"/Dieterbe-uzbl-* @@ -30,7 +30,7 @@ build() { package_uzbl-core() { pkgdesc="Webpage interface component meant for integration with other tools and scripts" - depends=('libwebkit') + depends=('libwebkit>=1.3.13') optdepends=('socat: to interface with the socket' 'dmenu: to run some of the example scripts' 'zenity: to run some of the example scripts' 'python2: to run some of the example scripts' diff --git a/community/warsow/PKGBUILD b/community/warsow/PKGBUILD index e4c11f1e0..9df6caae8 100644 --- a/community/warsow/PKGBUILD +++ b/community/warsow/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 42571 2011-03-17 17:04:27Z svenstaro $ +# $Id: PKGBUILD 45971 2011-04-30 23:33:26Z svenstaro $ # Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> # Contributor: Slash <demodevil5[at]yahoo[dot]com> # Contributor: Babets # Contributor: Vain pkgname=warsow -pkgver=0.61 +pkgver=0.62 pkgrel=1 pkgdesc="a free online multiplayer competitive FPS based on the Qfusion engine" url="http://www.warsow.net/" @@ -21,11 +21,11 @@ md5sums=('f9bf60c80820237f7097c4e50a9582cd' 'ec00081d81ad9802a8ca42fc2eac5498' 'f73e10c26197178df71b941b10bf83d7' 'd7e4a69835bbcf801e58307e9d6b951e' - '04bd29a63c3a43a7e3ea3a865b75e580') + '649568447e938efded07e77cdfb3accb') build() { - unset CFLAGS - unset CXXFLAGS + #unset CFLAGS + #unset CXXFLAGS # Extract Game Source Code unzip -o warsow_${pkgver}_sdk.zip -d $srcdir/warsow-src @@ -33,6 +33,9 @@ build() { # Patch Makefile to use correct program to query for system information sed -i 's:openal-config:pkg-config:g' $srcdir/warsow-src/source/Makefile + # Patch Makefile to correctly pass on ld opts + sed -i 's:--as-needed:-Wc,--as-needed:g' $srcdir/warsow-src/source/Makefile + # Patch Sound Code to point to base openal library sed -i 's:libopenal.so.0:libopenal.so:g' $srcdir/warsow-src/source/snd_openal/snd_main.c diff --git a/community/workrave/PKGBUILD b/community/workrave/PKGBUILD index 92b4aa2bf..85469032c 100644 --- a/community/workrave/PKGBUILD +++ b/community/workrave/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 40294 2011-02-22 18:20:07Z spupykin $ +# $Id: PKGBUILD 44736 2011-04-11 12:32:49Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: William Rea <sillywilly@gmail.com> pkgname=workrave -pkgver=1.9.3 +pkgver=1.9.4 pkgrel=1 pkgdesc="a tool to help RSI" arch=('i686' 'x86_64') @@ -13,7 +13,7 @@ depends=('libgnomeuimm' 'gnet' 'gnome-panel' 'dbus' 'libxmu' 'gdome2' 'python-ch 'libxtst' 'python-cheetah') makedepends=('intltool') source=(http://downloads.sourceforge.net/workrave/workrave-$pkgver.tar.gz) -md5sums=('d1992f54750f3241797aa809de5a0753') +md5sums=('d5eaf399b38b063053cff1a8527cba8e') build() { cd $srcdir/workrave-$pkgver |