summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2011-08-10 23:14:36 +0000
committerroot <root@rshg054.dnsready.net>2011-08-10 23:14:36 +0000
commite81c6fe4fb38144709923b2da3ab68a01712a26b (patch)
treee98431d7c18b82156a91c9cb208d725c06e84793
parenta306c2530354c1c02351c4cc02eefa53c8d23eac (diff)
Wed Aug 10 23:14:35 UTC 2011
-rw-r--r--community/clamz/PKGBUILD31
-rw-r--r--community/clamz/clamz.install16
-rw-r--r--community/gpsim/PKGBUILD9
-rw-r--r--community/ltris/ChangeLog5
-rw-r--r--community/ltris/PKGBUILD15
-rw-r--r--community/parcellite/PKGBUILD6
-rw-r--r--community/python2-pyopencl/PKGBUILD11
-rw-r--r--community/xapian-core/PKGBUILD8
-rw-r--r--community/xcircuit/PKGBUILD14
-rw-r--r--extra/aterm/PKGBUILD19
-rw-r--r--extra/dovecot/PKGBUILD13
-rw-r--r--extra/dovecot/dovecot.install18
-rwxr-xr-xextra/dovecot/dovecot.sh89
-rw-r--r--extra/flac/PKGBUILD60
-rw-r--r--extra/glib/PKGBUILD34
-rw-r--r--extra/glib/glib.install2
-rw-r--r--extra/gnome-control-center/PKGBUILD11
-rw-r--r--extra/gnome-settings-daemon/PKGBUILD6
-rw-r--r--extra/libogg/PKGBUILD35
-rw-r--r--extra/nedit/PKGBUILD42
-rw-r--r--extra/qiv/PKGBUILD24
-rw-r--r--extra/rubberband/PKGBUILD17
-rw-r--r--extra/rubberband/gcc46.patch10
-rw-r--r--extra/snd/PKGBUILD36
-rw-r--r--extra/tomcat-native/PKGBUILD6
-rw-r--r--extra/vcdimager/PKGBUILD30
-rw-r--r--extra/vcdimager/vcdimager.install4
-rw-r--r--staging/claws-mail/PKGBUILD60
-rw-r--r--staging/claws-mail/claws-mail.install13
-rw-r--r--staging/claws-mail/claws-notify-crash.patch18
-rw-r--r--staging/cups/PKGBUILD148
-rwxr-xr-xstaging/cups/cups68
-rw-r--r--staging/cups/cups-avahi.patch1089
-rw-r--r--staging/cups/cups-no-export-ssllibs.patch12
-rw-r--r--staging/cups/cups-no-gcrypt.patch39
-rw-r--r--staging/cups/cups.install26
-rw-r--r--staging/cups/cups.logrotate8
-rw-r--r--staging/cups/cups.pam3
-rw-r--r--staging/empathy/PKGBUILD39
-rw-r--r--staging/empathy/empathy.install16
-rw-r--r--staging/glib-networking/PKGBUILD8
-rw-r--r--staging/lftp/PKGBUILD30
-rw-r--r--staging/libgpod/PKGBUILD30
-rw-r--r--staging/libimobiledevice/PKGBUILD31
-rw-r--r--staging/libimobiledevice/swig-version-check.patch14
-rw-r--r--staging/telepathy-gabble/PKGBUILD30
-rw-r--r--staging/telepathy-gabble/telepathy-gabble.install13
-rw-r--r--staging/vino/PKGBUILD32
-rw-r--r--staging/vino/vino.install18
-rw-r--r--staging/vlc/PKGBUILD73
-rw-r--r--staging/vlc/vlc.install18
-rw-r--r--staging/weechat/PKGBUILD33
-rw-r--r--staging/wireshark/PKGBUILD58
-rw-r--r--staging/wireshark/wireshark-gtk.install11
-rw-r--r--staging/wireshark/wireshark.install18
-rw-r--r--staging/xfce4-mailwatch-plugin/PKGBUILD39
-rw-r--r--staging/xfce4-mailwatch-plugin/xfce4-mailwatch-plugin-1.1.0-underlink.patch21
-rw-r--r--staging/xfce4-mailwatch-plugin/xfce4-mailwatch-plugin.install11
-rw-r--r--staging/xmlsec/PKGBUILD35
-rw-r--r--testing/dash/PKGBUILD28
-rw-r--r--testing/dash/dash.install11
-rw-r--r--testing/wget/PKGBUILD45
-rw-r--r--testing/wget/wget.install20
63 files changed, 2531 insertions, 206 deletions
diff --git a/community/clamz/PKGBUILD b/community/clamz/PKGBUILD
new file mode 100644
index 000000000..3b784be5d
--- /dev/null
+++ b/community/clamz/PKGBUILD
@@ -0,0 +1,31 @@
+# $Id: PKGBUILD 53892 2011-08-09 12:18:03Z lfleischer $
+# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
+# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
+
+pkgname=clamz
+pkgver=0.4
+pkgrel=2
+pkgdesc="Command-line program to download MP3 files from Amazon.com's music store."
+arch=('i686' 'x86_64')
+url='http://code.google.com/p/clamz/'
+license=('GPL3')
+depends=('libgcrypt' 'curl' 'expat' 'shared-mime-info' 'desktop-file-utils')
+install='clamz.install'
+source=("http://clamz.googlecode.com/files/clamz-${pkgver}.tar.gz")
+md5sums=('ab7661340ee27d206f36064cfbd5bfa4')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ # Fix issue with update-mime-database
+ sed -i 's|$(UPDATE_DESKTOP_DATABASE)\ $(DESTDIR)$(applications_dir)||' Makefile.in
+ sed -i 's|$(UPDATE_MIME_DATABASE)\ $(DESTDIR)$(mime_dir)||' Makefile.in
+
+ ./configure --prefix=/usr/
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/community/clamz/clamz.install b/community/clamz/clamz.install
new file mode 100644
index 000000000..7daacb23a
--- /dev/null
+++ b/community/clamz/clamz.install
@@ -0,0 +1,16 @@
+post_install() {
+ update-mime-database /usr/share/mime
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ update-mime-database /usr/share/mime
+ update-desktop-database -q
+}
+
+post_remove() {
+ update-mime-database /usr/share/mime
+ update-desktop-database -q
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/gpsim/PKGBUILD b/community/gpsim/PKGBUILD
index e13695f36..809a2b973 100644
--- a/community/gpsim/PKGBUILD
+++ b/community/gpsim/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 21223 2010-07-15 10:16:50Z spupykin $
+# $Id: PKGBUILD 53898 2011-08-09 13:35:24Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: mickael9 <mickael9 at gmail dot com>
pkgname=gpsim
-pkgver=0.25.0
+pkgver=0.26.1
pkgrel=1
pkgdesc="A full-featured software simulator for Microchip PIC microcontrollers"
arch=(i686 x86_64)
@@ -13,12 +13,11 @@ depends=('gtk2+extra' 'popt')
makedepends=('gtk2+extra')
options=('!libtool')
source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz)
-md5sums=('36e2aeac30fad773f5fb934c867b42b7')
+md5sums=('c994c23d2d75056dbefcf5d1d63596d7')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
-
./configure --prefix=/usr
- make || return 1
+ make
make DESTDIR=${pkgdir} install
}
diff --git a/community/ltris/ChangeLog b/community/ltris/ChangeLog
index 9975da0d0..b8c8e0cb0 100644
--- a/community/ltris/ChangeLog
+++ b/community/ltris/ChangeLog
@@ -1,3 +1,8 @@
+2011-08-09 Thorsten Töpper <atsutane-tu@freethoughts.de>
+
+ * ltris 1.0.16-1
+ * Upstream update
+
2009-12-29 Eric Belanger <eric@archlinux.org>
* ltris 1.0.14-1
diff --git a/community/ltris/PKGBUILD b/community/ltris/PKGBUILD
index 54fcd247b..4eb9204db 100644
--- a/community/ltris/PKGBUILD
+++ b/community/ltris/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 7041 2009-12-30 05:28:27Z ebelanger $
+# $Id: PKGBUILD 53908 2011-08-09 20:01:00Z ttopper $
# Maintainer: Eric Belanger <eric@archlinux.org>
# Contributor: SmackleFunky <smacklefunky@optusnet.com.au>
pkgname=ltris
-pkgver=1.0.14
+pkgver=1.0.16
pkgrel=1
pkgdesc="A tetris clone where you have a bowl with blocks falling down."
arch=('i686' 'x86_64')
@@ -12,14 +12,14 @@ license=('GPL')
depends=('sdl_mixer')
install=ltris.install
source=(http://downloads.sourceforge.net/lgames/${pkgname}-${pkgver}.tar.gz)
-md5sums=('7eff57f492bc880a02a58c64f638959e')
-sha1sums=('031262093c99376c3c7349798f099c1e7ea0867f')
+md5sums=('07b5a41f8de62ea083575384f05545c6')
+sha1sums=('08785fc962ed83678b955f61a9a87a0215938123')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr --localstatedir=/var/games || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ ./configure --prefix=/usr --localstatedir=/var/games
+ make
+ make DESTDIR="${pkgdir}" install
install -d "${pkgdir}/usr/share/pixmaps"
install -m644 icons/ltris{16,32,48}.xpm "${pkgdir}/usr/share/pixmaps"
@@ -29,3 +29,4 @@ build() {
chmod 775 "${pkgdir}/var/games"
rm "${pkgdir}/var/games/ltris.hscr"
}
+
diff --git a/community/parcellite/PKGBUILD b/community/parcellite/PKGBUILD
index c23ea5ef3..2685f08d3 100644
--- a/community/parcellite/PKGBUILD
+++ b/community/parcellite/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 50742 2011-06-30 10:48:15Z spupykin $
+# $Id: PKGBUILD 53903 2011-08-09 19:26:51Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Alexander Fehr <pizzapunk gmail com>
pkgname=parcellite
-pkgver=1.0.2rc2
+pkgver=1.0.2rc3
pkgrel=1
pkgdesc="Lightweight GTK+ clipboard manager"
arch=('i686' 'x86_64')
@@ -12,7 +12,7 @@ license=('GPL3')
depends=('gtk2')
makedepends=('intltool')
source=(http://downloads.sourceforge.net/parcellite/parcellite-$pkgver.tar.gz)
-md5sums=('c1ade542f9b5e836af18773171e70e95')
+md5sums=('3fe1196cc2bb3f34d57d0e34e10449b3')
build() {
cd "$srcdir/parcellite-$pkgver"
diff --git a/community/python2-pyopencl/PKGBUILD b/community/python2-pyopencl/PKGBUILD
index 42bb0432a..2175324bd 100644
--- a/community/python2-pyopencl/PKGBUILD
+++ b/community/python2-pyopencl/PKGBUILD
@@ -1,13 +1,13 @@
-# $Id: PKGBUILD 53500 2011-08-04 16:53:43Z stephane $
+# $Id: PKGBUILD 53932 2011-08-10 01:28:16Z stephane $
# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
pkgname=python2-pyopencl
pkgver=2011.1.2
-pkgrel=1
+pkgrel=2
pkgdesc="A complete, object-oriented language binding of OpenCL to Python"
arch=('i686' 'x86_64')
url="http://mathema.tician.de/software/pyopencl"
license=('custom')
-depends=('python2' 'python2-numpy' 'python-mako' 'libcl' 'opencl-headers')
+depends=('python2' 'python2-numpy' 'python-mako' 'python2-pytools' 'libcl' 'opencl-headers')
makedepends=('ctags' 'python2-distribute')
provides=('pyopencl=${pkgver}')
replaces=('pyopencl')
@@ -19,9 +19,8 @@ sha1sums=('5ecc476b86317ed065c75c1d8efb2a53d1d8f075'
build() {
cd "${srcdir}/pyopencl-${pkgver}"
- python2 ./configure.py --cl-inc-dir=/usr/include \
- --cl-lib-dir=/usr/lib \
- --cl-libname=OpenCL
+ python2 ./configure.py
+
python2 setup.py build
}
diff --git a/community/xapian-core/PKGBUILD b/community/xapian-core/PKGBUILD
index 223dc8f8c..fe1805500 100644
--- a/community/xapian-core/PKGBUILD
+++ b/community/xapian-core/PKGBUILD
@@ -1,21 +1,21 @@
-# $Id: PKGBUILD 44794 2011-04-11 20:41:06Z ebelanger $
+# $Id: PKGBUILD 53882 2011-08-09 08:32:11Z spupykin $
# Contributor: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Alexander Fehr <pizzapunk gmail com>
# Contributor: William Rea <sillywilly@gmail.com>
# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us>
pkgname=xapian-core
-pkgver=1.2.5
+pkgver=1.2.6
pkgrel=1
pkgdesc='Open source search engine library.'
arch=('i686' 'x86_64')
url='http://www.xapian.org/'
license=('GPL')
-depends=('sh' 'gcc-libs' 'zlib')
+depends=('sh' 'gcc-libs' 'zlib' 'util-linux')
# xapian config requires libxapian.la
options=('libtool')
source=("http://oligarchy.co.uk/xapian/${pkgver}/${pkgname}-${pkgver}.tar.gz")
-md5sums=('775995b7036b01b8b864a95d5646f42d')
+md5sums=('30f5cc976f063694f93cbdf9b83dc2ea')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/community/xcircuit/PKGBUILD b/community/xcircuit/PKGBUILD
index 40482de28..14cb84c31 100644
--- a/community/xcircuit/PKGBUILD
+++ b/community/xcircuit/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 43609 2011-03-27 20:50:31Z spupykin $
+# $Id: PKGBUILD 53887 2011-08-09 08:33:11Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Giovanni Scafora <linuxmania@gmail.com>
# Contributor: simo <simo@archlinux.org>
pkgname=xcircuit
-pkgver=3.6.168
+pkgver=3.7.26
pkgrel=1
pkgdesc="A program for drawing publishable-quality electrical circuit schematic diagrams"
arch=('i686' 'x86_64')
@@ -13,16 +13,16 @@ license=('GPL2')
depends=('tk' 'libxpm' 'zlib')
makedepends=('chrpath')
source=(http://opencircuitdesign.com/xcircuit/archive/$pkgname-$pkgver.tgz)
-md5sums=('240cc5a2f9934430b4438052eafb96c5')
+md5sums=('6026f65a4bc327e5769157ffd1387342')
build() {
cd $srcdir/$pkgname-$pkgver
- sed -i 's|am__api_version="1.9"|am__api_version="1.11"|' configure
+# sed -i 's|am__api_version="1.9"|am__api_version="1.11"|' configure
./configure prefix=/usr --with-tcl=/usr/lib --with-tk=/usr/lib --mandir=/usr/share/man
make
make DESTDIR=$pkgdir install
mkdir -p $pkgdir/usr/share/man/man1
- mv $pkgdir/usr/lib/xcircuit-3.6/man/* $pkgdir/usr/share/man/man1/
- rm -rf $pkgdir/usr/lib/xcircuit-3.6/man/
- chrpath -d $pkgdir/usr/lib/xcircuit-3.6/xcircexec
+ mv $pkgdir/usr/lib/xcircuit-3.7/man/* $pkgdir/usr/share/man/man1/
+ rm -rf $pkgdir/usr/lib/xcircuit-3.7/man/
+ chrpath -d $pkgdir/usr/lib/xcircuit-3.7/xcircexec
}
diff --git a/extra/aterm/PKGBUILD b/extra/aterm/PKGBUILD
index f68bb3065..0dafc580a 100644
--- a/extra/aterm/PKGBUILD
+++ b/extra/aterm/PKGBUILD
@@ -1,15 +1,14 @@
-# $Id: PKGBUILD 47932 2009-07-29 18:24:49Z eric $
-# Maintainer: Eric Belanger <eric@archlinux.org>
-# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
+# $Id: PKGBUILD 135001 2011-08-09 20:47:19Z eric $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=aterm
pkgver=1.0.1
-pkgrel=2
+pkgrel=3
pkgdesc="An xterm replacement with transparency support"
arch=('i686' 'x86_64')
url="http://aterm.sourceforge.net/"
license=('GPL')
-depends=('libxext' 'libsm')
+depends=('libx11')
makedepends=('libxt')
source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2)
md5sums=('c2eede028e1011e0ec7035cf319c9b5a')
@@ -19,7 +18,11 @@ build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --enable-transparency=yes \
--enable-background-image --enable-fading --enable-menubar \
- --enable-graphics || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ --enable-graphics
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/dovecot/PKGBUILD b/extra/dovecot/PKGBUILD
index 8d3718c07..fbbc8dff7 100644
--- a/extra/dovecot/PKGBUILD
+++ b/extra/dovecot/PKGBUILD
@@ -1,12 +1,12 @@
-# $Id: PKGBUILD 123590 2011-05-11 17:20:39Z andyrtr $
+# $Id: PKGBUILD 134967 2011-08-09 17:31:55Z andyrtr $
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
# Contributor: Paul Mattal <paul@mattal.com>
# Contributor: Federico Quagliata (quaqo) <quaqo@despammed.com>
# Contributor: GARETTE Emmanuel <gnunux at laposte dot net>
-# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgname=dovecot
pkgver=2.0.13
-pkgrel=1
+pkgrel=2
pkgdesc="An IMAP and POP3 server written with security primarily in mind"
arch=('i686' 'x86_64')
url="http://dovecot.org/"
@@ -26,7 +26,7 @@ backup=(etc/dovecot/dovecot.conf
install=$pkgname.install
source=(http://dovecot.org/releases/2.0/${pkgname}-${pkgver}.tar.gz dovecot.sh)
md5sums=('fd8a0702275a61332db7353dadff0f92'
- 'd020d43eab4ded6fb379dadc570a9490')
+ '587159e84e2da6f83d70b3c706ba87cc')
build() {
cd ${srcdir}/$pkgname-$pkgver
@@ -66,9 +66,4 @@ package() {
install -m 644 ${srcdir}/$pkgname-$pkgver/doc/dovecot-openssl.cnf ${pkgdir}/etc/ssl/
rm ${pkgdir}/etc/dovecot/README
-
- # install dovecot userdir - https://bugs.archlinux.org/task/20533
- install -d -m755 ${pkgdir}/var/run/dovecot/{login,empty}
- chmod 755 ${pkgdir}/var/run/dovecot
- chmod 750 ${pkgdir}/var/run/dovecot/login
}
diff --git a/extra/dovecot/dovecot.install b/extra/dovecot/dovecot.install
index 51d1509ee..ddec178a4 100644
--- a/extra/dovecot/dovecot.install
+++ b/extra/dovecot/dovecot.install
@@ -11,9 +11,9 @@ post_install() {
fi
if grep -q "^dovecot:" /etc/passwd 2> /dev/null ; then
- usermod -s /sbin/nologin -c "Dovecot user" -d /var/run/dovecot/login -u 76 -g dovecot dovecot &> /dev/null
+ usermod -s /sbin/nologin -c "Dovecot user" -d /var/empty -u 76 -g dovecot dovecot &> /dev/null
else
- useradd -s /sbin/nologin -c "Dovecot user" -d /var/run/dovecot/login -u 76 -g dovecot -m -r dovecot &> /dev/null
+ useradd -s /sbin/nologin -c "Dovecot user" -d /var/empty -u 76 -g dovecot -r dovecot &> /dev/null
fi
# dovenull
@@ -24,9 +24,9 @@ post_install() {
fi
if grep -q "^dovenull:" /etc/passwd 2> /dev/null ; then
- usermod -s /sbin/nologin -c "Dovecot user for completely untrustworthy processes" -d /var/run/dovecot/login -u 74 -g dovenull dovenull &> /dev/null
+ usermod -s /sbin/nologin -c "Dovecot user for completely untrustworthy processes" -d /var/empty -u 74 -g dovenull dovenull &> /dev/null
else
- useradd -s /sbin/nologin -c "Dovecot user for completely untrustworthy processes" -d /var/run/dovecot/login -u 74 -g dovenull -m -r dovenull &> /dev/null
+ useradd -s /sbin/nologin -c "Dovecot user for completely untrustworthy processes" -d /var/empty -u 74 -g dovenull -r dovenull &> /dev/null
fi
# harden some permissions
@@ -36,15 +36,19 @@ post_install() {
# arg 1: the new package version
# arg 2: the old package version
post_upgrade() {
- post_install $1
if [ "`vercmp $2 2.0.0`" -lt 0 ]; then
# important upgrade notice
echo "> IMPORTANT DOVECOT 2.0 UPGRADE NOTICE"
echo "> ------------------------------------"
echo "> see http://wiki2.dovecot.org/Upgrading/2.0"
echo "> make sure, you convert the dovecot.conf file"
- fi
-
+ fi
+ if [ "`vercmp $2 2.0.13-2`" -lt 0 ]; then
+ # to remove no more existant usersdirs simply remove the dovecot users and let them recreate later
+ userdel dovecot &> /dev/null
+ userdel dovenull &> /dev/null
+ fi
+ post_install $1
}
# arg 1: the old package version
diff --git a/extra/dovecot/dovecot.sh b/extra/dovecot/dovecot.sh
index b7555fe50..e8966bd55 100755
--- a/extra/dovecot/dovecot.sh
+++ b/extra/dovecot/dovecot.sh
@@ -1,36 +1,69 @@
#!/bin/bash
+daemon_name=dovecot
+
. /etc/rc.conf
. /etc/rc.d/functions
+#. /etc/conf.d/$daemon_name.conf
+
+get_pid() {
+ pidof -o %PPID $daemon_name
+}
-PID=`pidof -o %PPID /usr/sbin/dovecot`
case "$1" in
- start)
- stat_busy "Starting Dovecot"
- [ -z "$PID" ] && /usr/sbin/dovecot
- if [ $? -gt 0 ]; then
- stat_fail
- else
- add_daemon dovecot
- stat_done
- fi
- ;;
- stop)
- stat_busy "Stopping Dovecot"
- [ ! -z "$PID" ] && kill $PID &> /dev/null
- if [ $? -gt 0 ]; then
- stat_fail
- else
- rm_daemon dovecot
- stat_done
- fi
- ;;
- restart)
- $0 stop
- sleep 2
- $0 start
- ;;
- *)
- echo "usage: $0 {start|stop|restart}"
+ 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
+ #
+ if [[ $? -gt 0 ]]; 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
+ ;;
+
+ stop)
+ stat_busy "Stopping $daemon_name daemon"
+ PID=$(get_pid)
+ # KILL
+ [[ -n $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
+ stat_done
+ fi
+ ;;
+
+ restart)
+ $0 stop
+ sleep 3
+ $0 start
+ ;;
+
+ status)
+ stat_busy "Checking $daemon_name status";
+ ck_status $daemon_name
+ ;;
+
+ *)
+ echo "usage: $0 {start|stop|restart|status}"
esac
+
exit 0
diff --git a/extra/flac/PKGBUILD b/extra/flac/PKGBUILD
index d9d539f3f..56a7cedd2 100644
--- a/extra/flac/PKGBUILD
+++ b/extra/flac/PKGBUILD
@@ -1,29 +1,51 @@
-# $Id: PKGBUILD 48440 2009-08-02 03:15:27Z eric $
-# Maintainer: Eric Belanger <eric@archlinux.org>
-# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
+# $Id: PKGBUILD 135033 2011-08-09 23:31:20Z eric $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
-pkgname=flac
+pkgbase=flac
+pkgname=('flac' 'flac-doc')
pkgver=1.2.1
-pkgrel=2
-pkgdesc="Free Lossless Audio Codec"
+pkgrel=3
arch=('i686' 'x86_64')
url="http://flac.sourceforge.net/"
-license=('custom:Xiph' 'LGPL' 'GPL' 'FDL')
-depends=('glibc' 'libogg')
+license=('BSD' 'GPL')
+depends=('libogg')
makedepends=('nasm' 'xmms')
options=('!libtool' '!makeflags')
-source=(http://downloads.sf.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz flac-1.2.1-gcc-4.3-includes.patch)
-md5sums=('153c8b15a54da428d1f0fadc756c22c7' 'b9d245422bbc547b18a72897366bea77')
-sha1sums=('bd54354900181b59db3089347cc84ad81e410b38' '7e9f8c2ef4d9daf5ddd20df63b608fe19b8c1560')
+source=(http://downloads.sf.net/sourceforge/${pkgbase}/${pkgbase}-${pkgver}.tar.gz
+ flac-1.2.1-gcc-4.3-includes.patch)
+md5sums=('153c8b15a54da428d1f0fadc756c22c7'
+ 'b9d245422bbc547b18a72897366bea77')
+sha1sums=('bd54354900181b59db3089347cc84ad81e410b38'
+ '7e9f8c2ef4d9daf5ddd20df63b608fe19b8c1560')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/flac-1.2.1-gcc-4.3-includes.patch" || return 1
- ./configure --prefix=/usr --mandir=/usr/share/man --enable-shared --disable-sse \
- --disable-rpath --with-pic || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ patch -Np1 -i "${srcdir}/flac-1.2.1-gcc-4.3-includes.patch"
+ ./configure --prefix=/usr --mandir=/usr/share/man --enable-shared \
+ --disable-sse --disable-rpath --with-pic
+ make
+}
+
+check() {
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make check
+}
+
+package_flac() {
+ pkgdesc="Free Lossless Audio Codec"
+ optdepends=('xmms: for using the xmms plugin')
+ options=('!libtool' '!docs')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ install -D -m644 COPYING.Xiph "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
+package_flac-doc() {
+ pkgdesc="Developer documentation for the Free Lossless Audio Codec"
+ depends=('flac')
- # install license
- install -Dm0644 COPYING.Xiph "${pkgdir}/usr/share/licenses/${pkgname}/COPYING.Xiph" || return 1
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make DESTDIR="${pkgdir}" -C doc install
+ install -D -m644 COPYING.Xiph "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
diff --git a/extra/glib/PKGBUILD b/extra/glib/PKGBUILD
index 48945164c..480a521e2 100644
--- a/extra/glib/PKGBUILD
+++ b/extra/glib/PKGBUILD
@@ -1,31 +1,37 @@
-# $Id: PKGBUILD 55861 2009-10-15 02:42:14Z eric $
-# Maintainer: Eric Belanger <eric@archlinux.org>
-# Contributor: dorphell <dorphell@archlinux.org>
+# $Id: PKGBUILD 135061 2011-08-10 01:01:44Z eric $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=glib
pkgver=1.2.10
-pkgrel=8.1
+pkgrel=9
pkgdesc="Common C routines used by Gtk+ and other libs"
arch=('i686' 'x86_64')
url="http://www.gtk.org/"
license=('LGPL')
-depends=('glibc' 'texinfo')
+depends=('glibc')
options=('!libtool')
install=glib.install
source=(ftp://ftp.gtk.org/pub/gtk/v1.2/${pkgname}-${pkgver}.tar.gz \
gcc340.patch aclocal-fixes.patch)
-md5sums=('6fe30dad87c77b91b632def29dd69ef9' '877b3330e822a4be69a0f8a8c268cfd7'\
+md5sums=('6fe30dad87c77b91b632def29dd69ef9'
+ '877b3330e822a4be69a0f8a8c268cfd7'
'e52c4b88427b9785bb8049dbdc9ff6fb')
-sha1sums=('e5a9361c594608d152d5d9650154c2e3260b87fa' 'a2cc224a66aeffdcac16ebd9e8af18143cf54918'\
- 'ae4438cf56c0c9264ee36f6973fb445f9a820be0')
+sha1sums=('e5a9361c594608d152d5d9650154c2e3260b87fa'
+ 'a2cc224a66aeffdcac16ebd9e8af18143cf54918'
+ 'ae4438cf56c0c9264ee36f6973fb445f9a820be0')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i ../gcc340.patch || return 1
- patch -Np0 -i ../aclocal-fixes.patch || return 1
+ patch -Np1 -i ../gcc340.patch
+ patch -Np0 -i ../aclocal-fixes.patch
- [ "$CARCH" = "x86_64" ] && CONFIGFLAG="--host=x86_64-unknown-linux-gnu --target=x86_64-unknown-linux-gnu"
- ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info $CONFIGFLAG || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ [ "$CARCH" = 'x86_64' ] && CONFIGFLAG='--host=x86_64-unknown-linux-gnu --target=x86_64-unknown-linux-gnu'
+ ./configure --prefix=/usr --mandir=/usr/share/man \
+ --infodir=/usr/share/info $CONFIGFLAG
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/glib/glib.install b/extra/glib/glib.install
index 140fd2fe9..c0046feba 100644
--- a/extra/glib/glib.install
+++ b/extra/glib/glib.install
@@ -1,4 +1,4 @@
-infodir=/usr/share/info
+infodir=usr/share/info
filelist=(glib.info.gz)
post_install() {
diff --git a/extra/gnome-control-center/PKGBUILD b/extra/gnome-control-center/PKGBUILD
index c75fc2c4a..3fd401126 100644
--- a/extra/gnome-control-center/PKGBUILD
+++ b/extra/gnome-control-center/PKGBUILD
@@ -1,15 +1,15 @@
-# $Id: PKGBUILD 124765 2011-05-24 09:14:06Z heftig $
+# $Id: PKGBUILD 134972 2011-08-09 17:45:09Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-control-center
pkgver=3.0.2
-pkgrel=1
+pkgrel=2
pkgdesc="The Control Center for GNOME"
arch=('i686' 'x86_64')
-depends=('gtk3' 'gsettings-desktop-schemas' 'gnome-menus' 'gnome-desktop' 'gnome-settings-daemon' 'upower' 'libgtop' 'cups-pk-helper' 'accountsservice' 'sound-theme-freedesktop' 'krb5')
+depends=('gtk3' 'gsettings-desktop-schemas' 'gnome-menus' 'gnome-desktop' 'gnome-settings-daemon' 'upower' 'libgtop' 'cups-pk-helper' 'accountsservice' 'sound-theme-freedesktop')
optdepends=('mesa-demos: provides glxinfo for graphics information'
'apg: adds password generation for user accounts')
-makedepends=('gnome-doc-utils' 'intltool' 'networkmanager')
+makedepends=('gnome-doc-utils' 'intltool' 'networkmanager' 'namcap')
url="http://www.gnome.org"
groups=('gnome')
install=gnome-control-center.install
@@ -23,6 +23,9 @@ build() {
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static \
--disable-scrollkeeper --disable-update-mimedb
+
+ #https://bugzilla.gnome.org/show_bug.cgi?id=656229
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' -e 's/ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then/ func_append compile_command " -Wl,-O1,--as-needed"\n func_append finalize_command " -Wl,-O1,--as-needed"\n\0/' libtool
make
}
diff --git a/extra/gnome-settings-daemon/PKGBUILD b/extra/gnome-settings-daemon/PKGBUILD
index 25433294c..8a2634a96 100644
--- a/extra/gnome-settings-daemon/PKGBUILD
+++ b/extra/gnome-settings-daemon/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 124605 2011-05-23 10:48:57Z ibiru $
+# $Id: PKGBUILD 134977 2011-08-09 18:01:57Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-settings-daemon
pkgver=3.0.2
-pkgrel=1
+pkgrel=2
pkgdesc="The GNOME Settings daemon"
arch=('i686' 'x86_64')
license=('GPL')
@@ -24,6 +24,8 @@ build() {
cd "$srcdir/$pkgname-$pkgver"
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--libexecdir=/usr/bin --disable-static --enable-pulse
+ #https://bugzilla.gnome.org/show_bug.cgi?id=656231
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
diff --git a/extra/libogg/PKGBUILD b/extra/libogg/PKGBUILD
index 66f9062d3..35bfbfffc 100644
--- a/extra/libogg/PKGBUILD
+++ b/extra/libogg/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 104973 2011-01-05 16:46:37Z heftig $
+# $Id: PKGBUILD 134991 2011-08-09 20:12:08Z eric $
# Maintainer:
# Contributor: John Proctor <jproctor@prium.net>
pkgname=libogg
-pkgver=1.2.2
-pkgrel=1.1
+pkgver=1.3.0
+pkgrel=1
pkgdesc="Ogg bitstream and framing library"
arch=('i686' 'x86_64')
url="http://www.xiph.org/ogg/"
@@ -13,27 +13,26 @@ depends=('glibc')
options=('!libtool')
source=(http://downloads.xiph.org/releases/ogg/$pkgname-$pkgver.tar.xz
config_types.h)
-md5sums=('203c28a1d356b641253c960365e4cc48'
+md5sums=('84a35715170f2cd4c77a4448772b95d5'
'a4d786b1b1955cb85b64fd16cbbee3f9')
build() {
- cd $srcdir/${pkgname}-${pkgver}
- ./configure --prefix=/usr
- make
+ cd "$srcdir/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr
+ make
}
package() {
- cd $srcdir/${pkgname}-${pkgver}
- make DESTDIR=$pkgdir install
+ cd "$srcdir/${pkgname}-${pkgver}"
+ make DESTDIR="$pkgdir" install
- # install BSD license
- install -Dm644 $srcdir/$pkgname-$pkgver/COPYING \
- $pkgdir/usr/share/licenses/$pkgname/COPYING
+# install BSD license
+ install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
- # Resolve multilib conflict
- if [[ $CARCH == "x86_64" ]]; then
- mv "$pkgdir"/usr/include/ogg/config_types{,-64}.h
- install -m 644 "$srcdir/config_types.h" \
- "${pkgdir}/usr/include/ogg/config_types.h"
- fi
+# Resolve multilib conflict
+ if [[ $CARCH == "x86_64" ]]; then
+ mv "$pkgdir"/usr/include/ogg/config_types{,-64}.h
+ install -m 644 "$srcdir/config_types.h" \
+ "${pkgdir}/usr/include/ogg/config_types.h"
+ fi
}
diff --git a/extra/nedit/PKGBUILD b/extra/nedit/PKGBUILD
index 8cf610d95..250d5e2bd 100644
--- a/extra/nedit/PKGBUILD
+++ b/extra/nedit/PKGBUILD
@@ -1,30 +1,38 @@
-# $Id: PKGBUILD 47944 2009-07-29 19:36:14Z eric $
-# Maintainer: Eric Belanger <eric@archlinux.org>
-# Contributor: Tom Newsom <Jeepster@gmx.co.uk> and Dale Blount <dale@archlinux.org>
+# $Id: PKGBUILD 135019 2011-08-09 21:15:50Z eric $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=nedit
pkgver=5.5
-pkgrel=5
+pkgrel=6
pkgdesc="A Unix text editor for programmers and general users"
arch=('i686' 'x86_64')
url="http://www.nedit.org/"
license=('GPL')
depends=('lesstif' 'libxpm')
-source=(http://www.nedit.org/ftp/v5_5/${pkgname}-${pkgver}-src.tar.bz2 nedit_xorg_composite_fix.patch)
-md5sums=('48cb3dce52d44988f3a4d7c6f47b6bbe' 'ae1f56ae9b23163882051720ac52412d')
-sha1sums=('7d3c87a793a5047cf857af1ac82e39f3b33e8a87' '1f6c75075a6bdc7b0dd8ca89d8117d68af8fc54e')
+source=(http://www.nedit.org/ftp/v5_5/${pkgname}-${pkgver}-src.tar.bz2
+ nedit_xorg_composite_fix.patch)
+md5sums=('48cb3dce52d44988f3a4d7c6f47b6bbe'
+ 'ae1f56ae9b23163882051720ac52412d')
+sha1sums=('7d3c87a793a5047cf857af1ac82e39f3b33e8a87'
+ '1f6c75075a6bdc7b0dd8ca89d8117d68af8fc54e')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -p1 < ../nedit_xorg_composite_fix.patch || return 1
- sed -i 's/-Wl,-Bstatic//' makefiles/Makefile.linux || return 1
- sed -i 's|fgets|//fgets|' util/check_lin_tif.c || return 1
- sed -i "s/CFLAGS=-O/CFLAGS=${CFLAGS} -DBUILD_UNTESTED_NEDIT/" makefiles/Makefile.linux || return 1
- sed -i 's|"/bin/csh"|"/bin/sh"|' source/preferences.c || return 1
+ patch -p1 < ../nedit_xorg_composite_fix.patch
+ sed -i 's/-Wl,-Bstatic//' makefiles/Makefile.linux
+ sed -i 's|fgets|//fgets|' util/check_lin_tif.c
+ sed -i "s/CFLAGS=-O/CFLAGS=${CFLAGS} -DBUILD_UNTESTED_NEDIT/" makefiles/Makefile.linux
+ sed -i 's|"/bin/csh"|"/bin/sh"|' source/preferences.c
- make linux || return 1
- install -D -m755 source/nedit "${pkgdir}/usr/bin/nedit" || return 1
- install -D -m755 source/nc "${pkgdir}/usr/bin/nedit-client" || return 1
- install -D -m644 doc/nedit.man "${pkgdir}/usr/share/man/man1/nedit.1" || return 1
- install -D -m644 doc/nc.man "${pkgdir}/usr/share/man/man1/nedit-client.1" || return 1
+ make linux docs
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ install -Dm755 source/nedit "${pkgdir}/usr/bin/nedit"
+ install -Dm755 source/nc "${pkgdir}/usr/bin/nedit-client"
+ install -Dm644 doc/nedit.man "${pkgdir}/usr/share/man/man1/nedit.1"
+ install -Dm644 doc/nc.man "${pkgdir}/usr/share/man/man1/nedit-client.1"
+ install -Dm644 doc/nedit.html "${pkgdir}/usr/share/doc/nedit/nedit.html"
}
diff --git a/extra/qiv/PKGBUILD b/extra/qiv/PKGBUILD
index 3a63edc93..fc98e1dc2 100644
--- a/extra/qiv/PKGBUILD
+++ b/extra/qiv/PKGBUILD
@@ -1,21 +1,25 @@
-# $Id: PKGBUILD 84750 2010-07-04 02:53:11Z angvp $
+# $Id: PKGBUILD 134996 2011-08-09 20:30:46Z eric $
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
# Maintainer: Paul Mattal <paul@archlinux.org>
+
pkgname=qiv
-pkgver=2.2.3
-pkgrel=2
+pkgver=2.2.4
+pkgrel=1
pkgdesc="Quick Image Viewer (qiv) is a very small and fast GDK/Imlib image viewer"
arch=('i686' 'x86_64')
+url="http://spiegl.de/qiv/"
license=('GPL2')
depends=('file' 'gtk2' 'imlib2')
-makedepends=('pkgconfig')
source=(http://spiegl.de/qiv/download/$pkgname-$pkgver.tgz)
-url="http://spiegl.de/qiv/"
-md5sums=('f692f665ad429f13c732156351420850')
+md5sums=('1425f89c90f9c045858fccf24d894c97')
build() {
- cd $startdir/src/$pkgname-$pkgver || return 1
- make || return 1
- install -D -m 0755 qiv $startdir/pkg/usr/bin/qiv || return 1
- install -D -m 0644 qiv.1 $startdir/pkg/usr/share/man/man1/qiv.1 || return 1
+ cd "$srcdir/$pkgname-$pkgver"
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ install -D -m 0755 qiv "$pkgdir/usr/bin/qiv"
+ install -D -m 0644 qiv.1 "$pkgdir/usr/share/man/man1/qiv.1"
}
diff --git a/extra/rubberband/PKGBUILD b/extra/rubberband/PKGBUILD
index 3566886e3..e5ee7babf 100644
--- a/extra/rubberband/PKGBUILD
+++ b/extra/rubberband/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 86992 2010-08-08 20:57:26Z schiv $
-# Maintainer: Ray Rashif <schivmeister@gmail.com>
+# $Id: PKGBUILD 135007 2011-08-09 21:02:54Z schiv $
+# Maintainer: Ray Rashif <schiv@archlinux.org>
# Contributor: Felipe Machado aka arch_audio <machado.felipe@gmail.com>
pkgname=rubberband
-pkgver=1.5.0
+pkgver=1.6.0
pkgrel=1
pkgdesc="Time-stretching and pitch-shifting audio library and utility"
arch=('i686' 'x86_64')
@@ -11,12 +11,17 @@ url="http://www.breakfastquay.com/rubberband/"
license=('GPL')
depends=('libsamplerate' 'fftw' 'vamp-plugin-sdk')
makedepends=('ladspa')
-source=(http://code.breakfastquay.com/attachments/download/1/$pkgname-$pkgver.tar.bz2)
-md5sums=('c5f288d644fcd46bd159e187bcc33f25')
+source=("http://code.breakfastquay.com/attachments/download/16/$pkgname-$pkgver.tar.bz2"
+ 'gcc46.patch')
+md5sums=('28e3dc1f5ae694d6846bcb0ef3d597fc'
+ '7c2f404975da6052f6b80eac12efbeb4')
build() {
cd "$srcdir/$pkgname-$pkgver"
+ # fix gcc 4.6 compatibility
+ patch -Np1 -i "$srcdir/gcc46.patch"
+
./configure --prefix=/usr
make
}
@@ -24,7 +29,7 @@ build() {
package() {
cd "$srcdir/$pkgname-$pkgver"
- make DESTDIR="$pkgdir/" install
+ make DESTDIR="$pkgdir/" install
}
# vim:set ts=2 sw=2 et:
diff --git a/extra/rubberband/gcc46.patch b/extra/rubberband/gcc46.patch
new file mode 100644
index 000000000..38ac76d42
--- /dev/null
+++ b/extra/rubberband/gcc46.patch
@@ -0,0 +1,10 @@
+--- rubberband-1.6.0.orig/rubberband/RubberBandStretcher.h
++++ rubberband-1.6.0/rubberband/RubberBandStretcher.h
+@@ -21,6 +21,7 @@
+
+ #include <vector>
+ #include <map>
++#include <cstddef>
+
+ /**
+ * @mainpage RubberBand
diff --git a/extra/snd/PKGBUILD b/extra/snd/PKGBUILD
index cfc281db5..5afcac5a1 100644
--- a/extra/snd/PKGBUILD
+++ b/extra/snd/PKGBUILD
@@ -1,28 +1,40 @@
-# $Id: PKGBUILD 84807 2010-07-04 16:07:26Z eric $
-# Maintainer: Juergen Hoetzel <juergen@archlinux.org>
+# $Id: PKGBUILD 135006 2011-08-09 21:00:16Z schiv $
+# Maintainer: Ray Rashif <schiv@archlinux.org>
+# Contributor: Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
# Contributor: dorphell <dorphell@archlinux.org>
pkgname=snd
-pkgver=11.6
+pkgver=12.3
pkgrel=1
pkgdesc="An advanced sound editor"
arch=('i686' 'x86_64')
url="http://ccrma.stanford.edu/software/snd/"
license=('custom')
-depends=('lesstif' 'fam')
-source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz)
-md5sums=('a48bb692ecba320fe6aa2e00fd6d360b')
-sha1sums=('383978c94a1f503e331f8f84b21df375fb208c27')
+depends=('lesstif' 'jack' 'fam' 'gsl' 'fftw')
+makedepends=('ladspa' 'wavpack' 'flac' 'speex' 'libxpm'
+ 'timidity++' 'mpg123' 'vorbis-tools' 'gmp')
+optdepends=('ladspa' 'wavpack' 'flac' 'speex'
+ 'timidity++' 'mpg123' 'vorbis-tools')
+source=("http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz")
+md5sums=('e1dab6945b9583f02aa6ae73d3780c98')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr --without-gsl --without-fftw
+ cd "$srcdir/$pkgname-$pkgver"
+
+ ./configure --prefix=/usr \
+ --with-alsa \
+ --with-jack
make
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make prefix="${pkgdir}/usr" install
- install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make prefix="$pkgdir/usr" install
+
+ install -Dm644 COPYING \
+ "$pkgdir/usr/share/licenses/$pkgname/COPYING"
}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/tomcat-native/PKGBUILD b/extra/tomcat-native/PKGBUILD
index 3686445e1..62e1d8555 100644
--- a/extra/tomcat-native/PKGBUILD
+++ b/extra/tomcat-native/PKGBUILD
@@ -2,8 +2,8 @@
# Contributor: Vitaliy Berdinskikh ur6lad[at]i.ua
pkgname=tomcat-native
-pkgver=1.1.20
-pkgrel=2
+pkgver=1.1.22
+pkgrel=1
pkgdesc="The Apache Tomcat Native Library"
arch=('i686' 'x86_64')
url="http://tomcat.apache.org/"
@@ -11,7 +11,7 @@ license="Apache"
depends=('apr' 'openssl')
makedepends=('java-environment')
source=(http://www.apache.org/dist/tomcat/tomcat-connectors/native/${pkgver}/source/${pkgname}-${pkgver}-src.tar.gz)
-md5sums=('fb2b9d073cb6575c2d0020eda266ca0c')
+md5sums=('44d764f8d99d0454c7337ba9701558ee')
build() {
cd "${srcdir}/tomcat-native-${pkgver}-src/jni/native"
diff --git a/extra/vcdimager/PKGBUILD b/extra/vcdimager/PKGBUILD
index dc392cb84..f3d94d176 100644
--- a/extra/vcdimager/PKGBUILD
+++ b/extra/vcdimager/PKGBUILD
@@ -1,24 +1,32 @@
-# $Id: PKGBUILD 59898 2009-11-29 15:48:57Z jgc $
+# $Id: PKGBUILD 135066 2011-08-10 01:37:52Z eric $
# Maintainer: damir <damir@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgname=vcdimager
-pkgver=0.7.23
-pkgrel=7
-pkgdesc="GNU VCDImager is a full-featured mastering suite for authoring disassembling and analyzing Video CD's and Super Video CD's"
-arch=(i686 x86_64)
-license=('GPL')
+pkgver=0.7.24
+pkgrel=1
+pkgdesc="A full-featured mastering suite for authoring disassembling and analyzing Video CD's and Super Video CD's"
+arch=('i686' 'x86_64')
url="http://www.vcdimager.org/"
+license=('GPL')
depends=('libcdio>=0.82' 'libxml2>=2.7.3' 'popt')
options=('!libtool')
install=vcdimager.install
source=(ftp://ftp.gnu.org/gnu/vcdimager/${pkgname}-${pkgver}.tar.gz)
-md5sums=('5e7d80fdbf0037ad20e438f2a9573253')
+md5sums=('3af22978fd79c79d5fda6513b6811145')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr \
- --mandir=/usr/share/man --infodir=/usr/share/info || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ ./configure --prefix=/usr
+ make
+}
+
+check() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make check
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/vcdimager/vcdimager.install b/extra/vcdimager/vcdimager.install
index faa9748c2..79e07b5bc 100644
--- a/extra/vcdimager/vcdimager.install
+++ b/extra/vcdimager/vcdimager.install
@@ -1,7 +1,8 @@
-infodir=/usr/share/info
+infodir=usr/share/info
filelist=(vcd-info.info.gz vcdimager.info.gz vcdxrip.info.gz)
post_install() {
+ [[ -x usr/bin/install-info ]] || return 0
for file in ${filelist[@]}; do
install-info $infodir/$file $infodir/dir 2> /dev/null
done
@@ -12,6 +13,7 @@ post_upgrade() {
}
pre_remove() {
+ [[ -x usr/bin/install-info ]] || return 0
for file in ${filelist[@]}; do
install-info --delete $infodir/$file $infodir/dir 2> /dev/null
done
diff --git a/staging/claws-mail/PKGBUILD b/staging/claws-mail/PKGBUILD
new file mode 100644
index 000000000..b395a6177
--- /dev/null
+++ b/staging/claws-mail/PKGBUILD
@@ -0,0 +1,60 @@
+# $Id: PKGBUILD 134940 2011-08-09 15:03:29Z andyrtr $
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+
+pkgname=claws-mail
+pkgver=3.7.9
+pkgrel=5
+pkgdesc="A GTK+ based e-mail client."
+arch=('i686' 'x86_64')
+license=('GPL3')
+url="http://www.claws-mail.org"
+depends=('gtk2' 'gnutls' 'startup-notification' 'pilot-link' 'enchant'
+ 'gpgme' 'libetpan' 'libsm' 'db' 'dbus-glib' 'hicolor-icon-theme' 'desktop-file-utils')
+makedepends=('compface' 'spamassassin' 'bogofilter' 'valgrind')
+optdepends=('python2: needed for some tools'
+ 'perl: needed for some tools'
+ 'spamassassin: adds support for spamfiltering'
+ 'bogofilter: adds support for spamfiltering'
+ 'html2ps: AUR pkg - adds support for printing html mails together with html plugins')
+replaces=('sylpheed-claws')
+provides=('claws')
+options=(!libtool)
+install=claws-mail.install
+source=(http://downloads.sourceforge.net/sourceforge/sylpheed-claws/${pkgname}-${pkgver}.tar.bz2
+ claws-notify-crash.patch)
+md5sums=('2f9d2dcabf84e312cfeb56efa799b5b3'
+ '9a2903449f679344b5f5f51c91825b45')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+
+ patch -Np0 -i $srcdir/claws-notify-crash.patch
+ sed -i 's@^#!.*python.*@#!/usr/bin/python2@' tools/*.py
+
+ ./configure --prefix=/usr --disable-static \
+ --enable-enchant \
+ --enable-gnutls \
+ --enable-ldap \
+ --disable-dillo-viewer-plugin \
+ --enable-crash-dialog \
+ --enable-pgpmime-plugin \
+ --enable-spamassassin-plugin \
+ --enable-bogofilter-plugin \
+ --enable-jpilot
+
+ make
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+
+ # build and install extra tools
+ cd tools
+ make
+ # all executables and .conf files ; only top directory
+ find -maxdepth 1 -type f -and -perm /111 -or -name '*.conf' | while read i ; do
+ install -D -m755 ${i} \
+ ${pkgdir}/usr/lib/claws-mail/tools/${i}
+ done
+}
diff --git a/staging/claws-mail/claws-mail.install b/staging/claws-mail/claws-mail.install
new file mode 100644
index 000000000..648480c3b
--- /dev/null
+++ b/staging/claws-mail/claws-mail.install
@@ -0,0 +1,13 @@
+post_install() {
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
+
diff --git a/staging/claws-mail/claws-notify-crash.patch b/staging/claws-mail/claws-notify-crash.patch
new file mode 100644
index 000000000..e1d4eb686
--- /dev/null
+++ b/staging/claws-mail/claws-notify-crash.patch
@@ -0,0 +1,18 @@
+Index: src/main.c
+===================================================================
+RCS file: //claws/src/main.c,v
+retrieving revision 1.115.2.237
+retrieving revision 1.115.2.238
+diff -u -r1.115.2.237 -r1.115.2.238
+--- src/main.c 10 Apr 2011 17:19:04 -0000 1.115.2.237
++++ src/main.c 30 Apr 2011 19:27:15 -0000 1.115.2.238
+@@ -331,7 +331,7 @@
+ gtk_widget_show(hack);
+ }
+
+- xdisplay = gdk_display_get_default();
++ xdisplay = GDK_DISPLAY_XDISPLAY(gdk_display_get_default());
+ sn_display = sn_display_new(xdisplay,
+ sn_error_trap_push,
+ sn_error_trap_pop);
+
diff --git a/staging/cups/PKGBUILD b/staging/cups/PKGBUILD
new file mode 100644
index 000000000..628600839
--- /dev/null
+++ b/staging/cups/PKGBUILD
@@ -0,0 +1,148 @@
+# $Id: PKGBUILD 134929 2011-08-09 13:34:46Z ibiru $
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+
+pkgbase="cups"
+pkgname=('libcups' 'cups')
+pkgver=1.4.8
+pkgrel=2
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://www.cups.org/"
+makedepends=('libtiff>=3.9.2-2' 'libpng>=1.4.0' 'acl' 'openslp' 'pam' 'xdg-utils' 'krb5' 'gnutls>=2.8.3' 'poppler>=0.12.3'
+ 'xinetd' 'gzip' 'autoconf' 'php' 'libusb-compat' 'dbus-core' 'avahi' 'hicolor-icon-theme')
+source=(ftp://ftp.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2
+ cups-avahi.patch
+ cups-no-export-ssllibs.patch
+ cups-no-gcrypt.patch
+ cups cups.logrotate cups.pam)
+#options=('!emptydirs')
+md5sums=('0ec52d3f3c69bc2ab5ed70c594edbce6'
+ '8ebd390197501ffd709f0ee546937fd5'
+ '9b8467a1e51d360096b70e2c3c081e6c'
+ 'c9ede95cfc8e76571bd8156f0a573e3b'
+ '9657daa21760bb0b5fa3d8b51d5e01a1'
+ 'f861b18f4446c43918c8643dcbbd7f6d'
+ '96f82c38f3f540b53f3e5144900acf17')
+
+# move client.conf man page for next update to the client pkg.
+
+build() {
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ # Avahi support in the dnssd backend. patch from Fedora
+ patch -Np1 -i ${srcdir}/cups-avahi.patch
+
+ # Do not export SSL libs in cups-config
+ patch -Np1 -i "${srcdir}/cups-no-export-ssllibs.patch"
+
+ patch -Np1 -i "${srcdir}/cups-no-gcrypt.patch"
+
+ # Rebuild configure script for --enable-avahi.
+ aclocal -I config-scripts
+ autoconf -I config-scripts
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --libdir=/usr/lib \
+ --with-logdir=/var/log/cups \
+ --with-docdir=/usr/share/cups/doc \
+ --with-cups-user=daemon \
+ --with-cups-group=lp \
+ --enable-pam=yes \
+ --disable-ldap \
+ --enable-raw-printing \
+ --enable-dbus --with-dbusdir=/etc/dbus-1 \
+ --enable-ssl=yes --enable-gnutls \
+ --disable-threads \
+ --enable-avahi\
+ --with-php=/usr/bin/php-cgi \
+ --with-pdftops=pdftops \
+ --with-optim="$CFLAGS"
+
+ #reminder
+ #Restored support for GNU TLS and OpenSSL with threading enabled (STR #3605) in cups 1.5b1
+
+ make
+}
+
+check() {
+ cd "$srcdir/$pkgbase-$pkgver"
+ #httpAddrGetList(workstation64): FAIL
+ #1 TESTS FAILED!
+ #make[1]: *** [testhttp] Error 1
+ make -k check || /bin/true
+}
+
+package_libcups() {
+pkgdesc="The CUPS Printing System - client libraries and headers"
+depends=('gnutls>=2.8.3' 'libtiff>=3.9.2-2' 'libpng>=1.4.0' 'krb5' 'avahi')
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ make BUILDROOT=${pkgdir} install-headers install-libs
+ # put this into the libs pkg to make other software find the libs(no pkg-config file included)
+ mkdir -p ${pkgdir}/usr/bin
+ install -m755 ${srcdir}/${pkgbase}-${pkgver}/cups-config ${pkgdir}/usr/bin/cups-config
+}
+
+package_cups() {
+pkgdesc="The CUPS Printing System - deamon package"
+install=cups.install
+backup=(etc/cups/cupsd.conf
+ etc/cups/mime.convs
+ etc/cups/mime.types
+ etc/cups/snmp.conf
+ etc/cups/printers.conf
+ etc/cups/classes.conf
+ etc/cups/client.conf
+ etc/cups/subscriptions.conf
+ etc/dbus-1/system.d/cups.conf
+ etc/logrotate.d/cups
+ etc/pam.d/cups
+ etc/xinetd.d/cups-lpd)
+depends=('acl' 'openslp' 'pam' "libcups>=${pkgver}" 'poppler>=0.12.3' 'libusb-compat' 'dbus-core' 'hicolor-icon-theme')
+optdepends=('php: for included phpcups.so module'
+ 'ghostscript: for non-PostScript printers to print with CUPS to convert PostScript to raster images'
+ 'foomatic-db: drivers use Ghostscript to convert PostScript to a printable form directly'
+ 'foomatic-db-engine: drivers use Ghostscript to convert PostScript to a printable form directly'
+ 'foomatic-db-nonfree: drivers use Ghostscript to convert PostScript to a printable form directly'
+ 'xdg-utils: xdg .desktop file support')
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ make BUILDROOT=${pkgdir} install-data install-exec
+
+ # this one we ship in the libcups pkg
+ rm -f ${pkgdir}/usr/bin/cups-config
+
+ # kill the sysv stuff
+ rm -rf ${pkgdir}/etc/rc*.d
+ rm -rf ${pkgdir}/etc/init.d
+ install -D -m755 ../cups ${pkgdir}/etc/rc.d/cupsd
+ install -D -m644 ../cups.logrotate ${pkgdir}/etc/logrotate.d/cups
+ install -D -m644 ../cups.pam ${pkgdir}/etc/pam.d/cups
+
+ # fix perms on /var/spool and /etc
+ chmod 755 ${pkgdir}/var/spool
+ chmod 755 ${pkgdir}/etc
+
+ # serial backend needs to run as root (http://bugs.archlinux.org/task/20396)
+ chmod 700 ${pkgdir}/usr/lib/cups/backend/serial
+
+ # install ssl directory where to store the certs, solves some samba issues
+ install -dm700 -g lp ${pkgdir}/etc/cups/ssl
+ # remove directory from package, we create it in cups rc.d file
+ rm -rf ${pkgdir}/var/run
+# install -dm511 -g lp ${pkgdir}/var/run/cups/certs
+
+ # install some more configuration files that will get filled by cupsd
+ touch ${pkgdir}/etc/cups/printers.conf
+ touch ${pkgdir}/etc/cups/classes.conf
+ touch ${pkgdir}/etc/cups/client.conf
+ echo "# see 'man client.conf'" >> ${pkgdir}/etc/cups/client.conf
+ echo "ServerName /var/run/cups/cups.sock # alternative: ServerName hostname-or-ip-address[:port] of a remote server" >> ${pkgdir}/etc/cups/client.conf
+ touch ${pkgdir}/etc/cups/subscriptions.conf
+ chgrp lp ${pkgdir}/etc/cups/{printers.conf,classes.conf,client.conf,subscriptions.conf}
+
+ # fix .desktop file
+ sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' ${pkgdir}/usr/share/applications/cups.desktop
+
+ # compress some driver files, adopted from Fedora
+ find ${pkgdir}/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f
+}
diff --git a/staging/cups/cups b/staging/cups/cups
new file mode 100755
index 000000000..744c8e663
--- /dev/null
+++ b/staging/cups/cups
@@ -0,0 +1,68 @@
+#!/bin/bash
+
+daemon_name=cupsd
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+#. /etc/conf.d/$daemon_name.conf
+
+get_pid() {
+ pidof -o %PPID $daemon_name
+}
+
+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
+ #
+ if [ $? -gt 0 ]; 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
+ ;;
+
+ stop)
+ stat_busy "Stopping $daemon_name daemon"
+ PID=$(get_pid)
+ # KILL
+ [ ! -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
+ stat_done
+ fi
+ ;;
+
+ restart)
+ $0 stop
+ sleep 3
+ $0 start
+ ;;
+
+ status)
+ stat_busy "Checking $daemon_name status";
+ ck_status $daemon_name
+ ;;
+
+ *)
+ echo "usage: $0 {start|stop|restart|status}"
+esac
+
+exit 0
diff --git a/staging/cups/cups-avahi.patch b/staging/cups/cups-avahi.patch
new file mode 100644
index 000000000..cf1056a75
--- /dev/null
+++ b/staging/cups/cups-avahi.patch
@@ -0,0 +1,1089 @@
+diff -up cups-1.4.5/backend/dnssd.c.avahi cups-1.4.5/backend/dnssd.c
+--- cups-1.4.5/backend/dnssd.c.avahi 2009-08-08 00:27:12.000000000 +0200
++++ cups-1.4.5/backend/dnssd.c 2010-11-12 13:13:31.000000000 +0100
+@@ -22,6 +22,7 @@
+ * exec_backend() - Execute the backend that corresponds to the
+ * resolved service name.
+ * get_device() - Create or update a device.
++* find_device()
+ * query_callback() - Process query data.
+ * sigterm_handler() - Handle termination signals...
+ * unquote() - Unquote a name string.
+@@ -33,7 +34,18 @@
+
+ #include "backend-private.h"
+ #include <cups/array.h>
+-#include <dns_sd.h>
++#ifdef HAVE_DNSSD
++# include <dns_sd.h>
++#endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++# include <avahi-client/client.h>
++# include <avahi-client/lookup.h>
++# include <avahi-common/simple-watch.h>
++# include <avahi-common/domain.h>
++# include <avahi-common/error.h>
++# include <avahi-common/malloc.h>
++#define kDNSServiceMaxDomainName AVAHI_DOMAIN_NAME_MAX
++#endif /* HAVE_AVAHI */
+
+
+ /*
+@@ -52,7 +64,12 @@ typedef enum
+
+ typedef struct
+ {
++#ifdef HAVE_DNSSD
+ DNSServiceRef ref; /* Service reference for resolve */
++#endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++ int resolved; /* Did we resolve the device? */
++#endif /* HAVE_AVAHI */
+ char *name, /* Service name */
+ *domain, /* Domain name */
+ *fullName, /* Full name */
+@@ -64,6 +81,20 @@ typedef struct
+ sent; /* Did we list the device? */
+ } cups_device_t;
+
++typedef struct
++{
++ char key[256];
++ char value[256];
++
++#ifdef HAVE_DNSSD
++ const uint8_t *data;
++ const uint8_t *datanext;
++ const uint8_t *dataend;
++#else /* HAVE_AVAHI */
++ AvahiStringList *txt;
++#endif /* HAVE_DNSSD */
++} cups_txt_records_t;
++
+
+ /*
+ * Local globals...
+@@ -77,6 +108,7 @@ static int job_canceled = 0;
+ * Local functions...
+ */
+
++#ifdef HAVE_DNSSD
+ static void browse_callback(DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+@@ -92,12 +124,6 @@ static void browse_local_callback(DNSSe
+ const char *regtype,
+ const char *replyDomain,
+ void *context);
+-static int compare_devices(cups_device_t *a, cups_device_t *b);
+-static void exec_backend(char **argv);
+-static cups_device_t *get_device(cups_array_t *devices,
+- const char *serviceName,
+- const char *regtype,
+- const char *replyDomain);
+ static void query_callback(DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+@@ -106,9 +132,111 @@ static void query_callback(DNSServiceRe
+ uint16_t rrclass, uint16_t rdlen,
+ const void *rdata, uint32_t ttl,
+ void *context);
++#endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++static void avahi_client_callback (AvahiClient *client,
++ AvahiClientState state,
++ void *context);
++static void avahi_browse_callback (AvahiServiceBrowser *browser,
++ AvahiIfIndex interface,
++ AvahiProtocol protocol,
++ AvahiBrowserEvent event,
++ const char *serviceName,
++ const char *regtype,
++ const char *replyDomain,
++ AvahiLookupResultFlags flags,
++ void *context);
++#endif /* HAVE_AVAHI */
++
++static cups_device_t * find_device (cups_array_t *devices,
++ cups_txt_records_t *txt,
++ cups_device_t *dkey);
++static int compare_devices(cups_device_t *a, cups_device_t *b);
++static void exec_backend(char **argv);
++static cups_device_t *get_device(cups_array_t *devices,
++ const char *serviceName,
++ const char *regtype,
++ const char *replyDomain);
+ static void sigterm_handler(int sig);
+ static void unquote(char *dst, const char *src, size_t dstsize);
+
++#ifdef HAVE_AVAHI
++static AvahiSimplePoll *simple_poll = NULL;
++static int avahi_got_callback;
++#endif /* HAVE_AVAHI */
++
++
++/*
++ * cups_txt_records_t access functions
++ */
++static cups_txt_records_t *
++next_txt_record (cups_txt_records_t *txt)
++{
++#ifdef HAVE_DNSSD
++ txt->data = txt->datanext;
++#else /* HAVE_AVAHI */
++ txt->txt = avahi_string_list_get_next (txt->txt);
++ if (txt->txt == NULL)
++ return NULL;
++#endif /* HAVE_DNSSD */
++
++ return txt;
++}
++
++static int
++parse_txt_record_pair (cups_txt_records_t *txt)
++{
++#ifdef HAVE_DNSSD
++ uint8_t datalen;
++ uint8_t *data = txt->data;
++ char *ptr;
++
++ /*
++ * Read a key/value pair starting with an 8-bit length. Since the
++ * length is 8 bits and the size of the key/value buffers is 256, we
++ * don't need to check for overflow...
++ */
++
++ datalen = *data++;
++ if (!datalen || (data + datalen) >= txt->dataend)
++ return NULL;
++ txt->datanext = data + datalen;
++
++ for (ptr = txt->key; data < txt->datanext && *data != '='; data ++)
++ *ptr++ = *data;
++ *ptr = '\0';
++
++ if (data < txt->datanext && *data == '=')
++ {
++ data++;
++
++ if (data < datanext)
++ memcpy (txt->value, data, txt->datanext - data);
++ value[txt->datanext - data] = '\0';
++ }
++ else
++ return 1;
++#else /* HAVE_AVAHI */
++ char *key, *value;
++ size_t len;
++ avahi_string_list_get_pair (txt->txt, &key, &value, &len);
++ if (len > sizeof (txt->value) - 1)
++ len = sizeof (txt->value) - 1;
++
++ memcpy (txt->value, value, len);
++ txt->value[len] = '\0';
++ len = strlen (key);
++ if (len > sizeof (txt->key) - 1)
++ len = sizeof (txt->key) - 1;
++
++ memcpy (txt->key, key, len);
++ txt->key[len] = '\0';
++ avahi_free (key);
++ avahi_free (value);
++#endif /* HAVE_AVAHI */
++
++ return 0;
++}
+
+ /*
+ * 'main()' - Browse for printers.
+@@ -119,6 +247,13 @@ main(int argc, /* I - Number of comm
+ char *argv[]) /* I - Command-line arguments */
+ {
+ const char *name; /* Backend name */
++ cups_array_t *devices; /* Device array */
++ cups_device_t *device; /* Current device */
++ char uriName[1024]; /* Unquoted fullName for URI */
++#ifdef HAVE_DNSSD
++ int fd; /* Main file descriptor */
++ fd_set input; /* Input set for select() */
++ struct timeval timeout; /* Timeout for select() */
+ DNSServiceRef main_ref, /* Main service reference */
+ fax_ipp_ref, /* IPP fax service reference */
+ ipp_ref, /* IPP service reference */
+@@ -130,12 +265,11 @@ main(int argc, /* I - Number of comm
+ pdl_datastream_ref, /* AppSocket service reference */
+ printer_ref, /* LPD service reference */
+ riousbprint_ref; /* Remote IO service reference */
+- int fd; /* Main file descriptor */
+- fd_set input; /* Input set for select() */
+- struct timeval timeout; /* Timeout for select() */
+- cups_array_t *devices; /* Device array */
+- cups_device_t *device; /* Current device */
+- char uriName[1024]; /* Unquoted fullName for URI */
++#endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++ AvahiClient *client;
++ int error;
++#endif /* HAVE_AVAHI */
+ #if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
+ struct sigaction action; /* Actions for POSIX signals */
+ #endif /* HAVE_SIGACTION && !HAVE_SIGSET */
+@@ -194,6 +328,49 @@ main(int argc, /* I - Number of comm
+ * Browse for different kinds of printers...
+ */
+
++#ifdef HAVE_AVAHI
++ if ((simple_poll = avahi_simple_poll_new ()) == NULL)
++ {
++ perror ("ERROR: Unable to create avahi simple poll object");
++ return (1);
++ }
++
++ client = avahi_client_new (avahi_simple_poll_get (simple_poll),
++ 0, avahi_client_callback, NULL, &error);
++ if (!client)
++ {
++ perror ("ERROR: Unable to create avahi client");
++ return (1);
++ }
++
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_fax-ipp._tcp", NULL, 0,
++ avahi_browse_callback, devices);
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_ipp._tcp", NULL, 0,
++ avahi_browse_callback, devices);
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_ipp-tls._tcp", NULL, 0,
++ avahi_browse_callback, devices);
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_pdl-datastream._tcp",
++ NULL, 0,
++ avahi_browse_callback,
++ devices);
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_printer._tcp", NULL, 0,
++ avahi_browse_callback, devices);
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_riousbprint._tcp", NULL, 0,
++ avahi_browse_callback, devices);
++#endif /* HAVE_AVAHI */
++#ifdef HAVE_DNSSD
+ if (DNSServiceCreateConnection(&main_ref) != kDNSServiceErr_NoError)
+ {
+ perror("ERROR: Unable to create service connection");
+@@ -245,6 +422,7 @@ main(int argc, /* I - Number of comm
+ riousbprint_ref = main_ref;
+ DNSServiceBrowse(&riousbprint_ref, kDNSServiceFlagsShareConnection, 0,
+ "_riousbprint._tcp", NULL, browse_callback, devices);
++#endif /* HAVE_DNSSD */
+
+ /*
+ * Loop until we are killed...
+@@ -252,6 +430,9 @@ main(int argc, /* I - Number of comm
+
+ while (!job_canceled)
+ {
++ int announce = 0;
++
++#ifdef HAVE_DNSSD
+ FD_ZERO(&input);
+ FD_SET(fd, &input);
+
+@@ -271,11 +452,35 @@ main(int argc, /* I - Number of comm
+ }
+ else
+ {
++ announce = 1;
++ }
++#else /* HAVE_AVAHI */
++ int r;
++ avahi_got_callback = 0;
++ r = avahi_simple_poll_iterate (simple_poll, 1);
++ if (r != 0 && r != EINTR)
++ {
++ /*
++ * We've been told to exit the loop. Perhaps the connection to
++ * avahi failed.
++ */
++
++ break;
++ }
++
++ if (avahi_got_callback)
++ announce = 1;
++#endif /* HAVE_DNSSD */
++
++ if (announce)
++ {
+ /*
+ * Announce any devices we've found...
+ */
+
++#ifdef HAVE_DNSSD
+ DNSServiceErrorType status; /* DNS query status */
++#endif /* HAVE_DNSSD */
+ cups_device_t *best; /* Best matching device */
+ char device_uri[1024]; /* Device URI */
+ int count; /* Number of queries */
+@@ -285,6 +490,7 @@ main(int argc, /* I - Number of comm
+ best = NULL, count = 0;
+ device;
+ device = (cups_device_t *)cupsArrayNext(devices))
++#ifdef HAVE_DNSSD
+ if (!device->ref && !device->sent)
+ {
+ /*
+@@ -313,14 +519,23 @@ main(int argc, /* I - Number of comm
+ count ++;
+ }
+ }
+- else if (!device->sent)
++ else
++#endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++ if (!device->resolved)
++ continue;
++ else
++#endif /* HAVE_AVAHI */
++ if (!device->sent)
+ {
++#ifdef HAVE_DNSSD
+ /*
+ * Got the TXT records, now report the device...
+ */
+
+ DNSServiceRefDeallocate(device->ref);
+ device->ref = 0;
++#endif /* HAVE_DNSSD */
+
+ if (!best)
+ best = device;
+@@ -372,6 +587,7 @@ main(int argc, /* I - Number of comm
+ * 'browse_callback()' - Browse devices.
+ */
+
++#ifdef HAVE_DNSSD
+ static void
+ browse_callback(
+ DNSServiceRef sdRef, /* I - Service reference */
+@@ -405,12 +621,14 @@ browse_callback(
+
+ get_device((cups_array_t *)context, serviceName, regtype, replyDomain);
+ }
++#endif /* HAVE_DNSSD */
+
+
+ /*
+ * 'browse_local_callback()' - Browse local devices.
+ */
+
++#ifdef HAVE_DNSSD
+ static void
+ browse_local_callback(
+ DNSServiceRef sdRef, /* I - Service reference */
+@@ -456,6 +674,7 @@ browse_local_callback(
+ device->fullName);
+ device->sent = 1;
+ }
++#endif /* HAVE_DNSSD */
+
+
+ /*
+@@ -528,6 +747,32 @@ exec_backend(char **argv) /* I - Comman
+ exit(CUPS_BACKEND_STOP);
+ }
+
++static int
++device_type (const char *regtype)
++{
++#ifdef HAVE_AVAHI
++ if (!strcmp(regtype, "_ipp._tcp") ||
++ !strcmp(regtype, "_ipp-tls._tcp"))
++ return (CUPS_DEVICE_IPP);
++ else if (!strcmp(regtype, "_fax-ipp._tcp"))
++ return (CUPS_DEVICE_FAX_IPP);
++ else if (!strcmp(regtype, "_printer._tcp"))
++ return (CUPS_DEVICE_PDL_DATASTREAM);
++#else
++ if (!strcmp(regtype, "_ipp._tcp.") ||
++ !strcmp(regtype, "_ipp-tls._tcp."))
++ return (CUPS_DEVICE_IPP);
++ else if (!strcmp(regtype, "_fax-ipp._tcp."))
++ return (CUPS_DEVICE_FAX_IPP);
++ else if (!strcmp(regtype, "_printer._tcp."))
++ return (CUPS_DEVICE_PRINTER);
++ else if (!strcmp(regtype, "_pdl-datastream._tcp."))
++ return (CUPS_DEVICE_PDL_DATASTREAM);
++#endif /* HAVE_AVAHI */
++
++ return (CUPS_DEVICE_RIOUSBPRINT);
++}
++
+
+ /*
+ * 'get_device()' - Create or update a device.
+@@ -550,18 +795,7 @@ get_device(cups_array_t *devices, /* I -
+ */
+
+ key.name = (char *)serviceName;
+-
+- if (!strcmp(regtype, "_ipp._tcp.") ||
+- !strcmp(regtype, "_ipp-tls._tcp."))
+- key.type = CUPS_DEVICE_IPP;
+- else if (!strcmp(regtype, "_fax-ipp._tcp."))
+- key.type = CUPS_DEVICE_FAX_IPP;
+- else if (!strcmp(regtype, "_printer._tcp."))
+- key.type = CUPS_DEVICE_PRINTER;
+- else if (!strcmp(regtype, "_pdl-datastream._tcp."))
+- key.type = CUPS_DEVICE_PDL_DATASTREAM;
+- else
+- key.type = CUPS_DEVICE_RIOUSBPRINT;
++ key.type = device_type (regtype);
+
+ for (device = cupsArrayFind(devices, &key);
+ device;
+@@ -581,8 +815,14 @@ get_device(cups_array_t *devices, /* I -
+ free(device->domain);
+ device->domain = strdup(replyDomain);
+
++#ifdef HAVE_DNSSD
+ DNSServiceConstructFullName(fullName, device->name, regtype,
+ replyDomain);
++#else /* HAVE_AVAHI */
++ avahi_service_name_join (fullName, kDNSServiceMaxDomainName,
++ serviceName, regtype, replyDomain);
++#endif /* HAVE_DNSSD */
++
+ free(device->fullName);
+ device->fullName = strdup(fullName);
+ }
+@@ -602,6 +842,9 @@ get_device(cups_array_t *devices, /* I -
+ device->domain = strdup(replyDomain);
+ device->type = key.type;
+ device->priority = 50;
++#ifdef HAVE_AVAHI
++ device->resolved = 0;
++#endif /* HAVE_AVAHI */
+
+ cupsArrayAdd(devices, device);
+
+@@ -609,7 +852,13 @@ get_device(cups_array_t *devices, /* I -
+ * Set the "full name" of this service, which is used for queries...
+ */
+
++#ifdef HAVE_DNSSD
+ DNSServiceConstructFullName(fullName, serviceName, regtype, replyDomain);
++#else /* HAVE_AVAHI */
++ avahi_service_name_join (fullName, kDNSServiceMaxDomainName,
++ serviceName, regtype, replyDomain);
++#endif /* HAVE_DNSSD */
++
+ device->fullName = strdup(fullName);
+
+ return (device);
+@@ -620,6 +869,7 @@ get_device(cups_array_t *devices, /* I -
+ * 'query_callback()' - Process query data.
+ */
+
++#ifdef HAVE_DNSSD
+ static void
+ query_callback(
+ DNSServiceRef sdRef, /* I - Service reference */
+@@ -639,7 +889,7 @@ query_callback(
+ *ptr; /* Pointer into string */
+ cups_device_t dkey, /* Search key */
+ *device; /* Device */
+-
++ cups_txt_records_t txt;
+
+ fprintf(stderr, "DEBUG2: query_callback(sdRef=%p, flags=%x, "
+ "interfaceIndex=%d, errorCode=%d, fullName=\"%s\", "
+@@ -673,84 +923,212 @@ query_callback(
+ if ((ptr = strstr(name, "._")) != NULL)
+ *ptr = '\0';
+
+- if (strstr(fullName, "_ipp._tcp.") ||
+- strstr(fullName, "_ipp-tls._tcp."))
+- dkey.type = CUPS_DEVICE_IPP;
+- else if (strstr(fullName, "_fax-ipp._tcp."))
+- dkey.type = CUPS_DEVICE_FAX_IPP;
+- else if (strstr(fullName, "_printer._tcp."))
+- dkey.type = CUPS_DEVICE_PRINTER;
+- else if (strstr(fullName, "_pdl-datastream._tcp."))
+- dkey.type = CUPS_DEVICE_PDL_DATASTREAM;
++ dkey.type = device_type (fullName);
++
++ txt.data = rdata;
++ txt.dataend = rdata + rdlen;
++ device = find_device ((cups_array_t *) context, &txt, &dkey);
++ if (!device)
++ fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName);
++}
++#endif /* HAVE_DNSSD */
++
++#ifdef HAVE_AVAHI
++static void
++avahi_client_callback(AvahiClient *client,
++ AvahiClientState state,
++ void *context)
++{
++ /*
++ * If the connection drops, quit.
++ */
++
++ if (state == AVAHI_CLIENT_FAILURE)
++ {
++ fprintf (stderr, "ERROR: Avahi connection failed\n");
++ avahi_simple_poll_quit (simple_poll);
++ }
++}
++
++static void
++avahi_query_callback(AvahiServiceResolver *resolver,
++ AvahiIfIndex interface,
++ AvahiProtocol protocol,
++ AvahiResolverEvent event,
++ const char *name,
++ const char *type,
++ const char *domain,
++ const char *host_name,
++ const AvahiAddress *address,
++ uint16_t port,
++ AvahiStringList *txt,
++ AvahiLookupResultFlags flags,
++ void *context)
++{
++ AvahiClient *client;
++ cups_device_t key,
++ *device;
++ char uqname[1024],
++ *ptr;
++ cups_txt_records_t txtr;
++
++ client = avahi_service_resolver_get_client (resolver);
++ if (event != AVAHI_RESOLVER_FOUND)
++ {
++ if (event == AVAHI_RESOLVER_FAILURE)
++ {
++ fprintf (stderr, "ERROR: %s\n",
++ avahi_strerror (avahi_client_errno (client)));
++ }
++
++ avahi_service_resolver_free (resolver);
++ return;
++ }
++
++ /*
++ * Set search key for device.
++ */
++
++ key.name = uqname;
++ unquote (uqname, name, sizeof (uqname));
++ if ((ptr = strstr(name, "._")) != NULL)
++ *ptr = '\0';
++
++ key.domain = (char *) domain;
++ key.type = device_type (type);
++
++ /*
++ * Find the device and the the TXT information.
++ */
++
++ txtr.txt = txt;
++ device = find_device ((cups_array_t *) context, &txtr, &key);
++ if (device)
++ {
++ /*
++ * Let the main loop know to announce the device.
++ */
++
++ device->resolved = 1;
++ avahi_got_callback = 1;
++ }
+ else
+- dkey.type = CUPS_DEVICE_RIOUSBPRINT;
++ fprintf (stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", name);
++
++ avahi_service_resolver_free (resolver);
++}
++
++static void
++avahi_browse_callback(AvahiServiceBrowser *browser,
++ AvahiIfIndex interface,
++ AvahiProtocol protocol,
++ AvahiBrowserEvent event,
++ const char *name,
++ const char *type,
++ const char *domain,
++ AvahiLookupResultFlags flags,
++ void *context)
++{
++ AvahiClient *client = avahi_service_browser_get_client (browser);
++
++ switch (event)
++ {
++ case AVAHI_BROWSER_FAILURE:
++ fprintf (stderr, "ERROR: %s\n",
++ avahi_strerror (avahi_client_errno (client)));
++ avahi_simple_poll_quit (simple_poll);
++ return;
++
++ case AVAHI_BROWSER_NEW:
++ /*
++ * This object is new on the network.
++ */
++
++ if (flags & AVAHI_LOOKUP_RESULT_LOCAL)
++ {
++ /*
++ * This comes from the local machine so ignore it.
++ */
++
++ fprintf (stderr, "DEBUG: ignoring local service %s\n", name);
++ }
++ else
++ {
++ /*
++ * Create a device entry for it if it doesn't yet exist.
++ */
++
++ get_device ((cups_array_t *)context, name, type, domain);
++
++ /*
++ * Now look for a TXT entry.
++ */
++
++ if (avahi_service_resolver_new (client, interface, protocol,
++ name, type, domain,
++ AVAHI_PROTO_UNSPEC, 0,
++ avahi_query_callback, context) == NULL)
++ {
++ fprintf (stderr, "ERROR: failed to resolve service %s: %s\n",
++ name, avahi_strerror (avahi_client_errno (client)));
++ }
++ }
++
++ break;
+
+- for (device = cupsArrayFind(devices, &dkey);
++ case AVAHI_BROWSER_REMOVE:
++ case AVAHI_BROWSER_ALL_FOR_NOW:
++ case AVAHI_BROWSER_CACHE_EXHAUSTED:
++ break;
++ }
++}
++#endif /* HAVE_AVAHI */
++
++static cups_device_t *
++find_device (cups_array_t *devices,
++ cups_txt_records_t *txt,
++ cups_device_t *dkey)
++{
++ cups_device_t *device;
++ char *ptr;
++
++ for (device = cupsArrayFind(devices, dkey);
+ device;
+ device = cupsArrayNext(devices))
+ {
+- if (strcasecmp(device->name, dkey.name) ||
+- strcasecmp(device->domain, dkey.domain))
++ if (strcasecmp(device->name, dkey->name) ||
++ strcasecmp(device->domain, dkey->domain))
+ {
+ device = NULL;
+ break;
+ }
+- else if (device->type == dkey.type)
++ else if (device->type == dkey->type)
+ {
+ /*
+ * Found it, pull out the priority and make and model from the TXT
+ * record and save it...
+ */
+
+- const uint8_t *data, /* Pointer into data */
+- *datanext, /* Next key/value pair */
+- *dataend; /* End of entire TXT record */
+- uint8_t datalen; /* Length of current key/value pair */
+- char key[256], /* Key string */
+- value[256], /* Value string */
+- make_and_model[512],
++ char make_and_model[512],
+ /* Manufacturer and model */
+ model[256], /* Model */
+- device_id[2048];/* 1284 device ID */
+-
++ device_id[2048]; /* 1284 device ID */
+
+ device_id[0] = '\0';
+ make_and_model[0] = '\0';
+
+ strcpy(model, "Unknown");
+
+- for (data = rdata, dataend = data + rdlen;
+- data < dataend;
+- data = datanext)
++ for (;;)
+ {
+- /*
+- * Read a key/value pair starting with an 8-bit length. Since the
+- * length is 8 bits and the size of the key/value buffers is 256, we
+- * don't need to check for overflow...
+- */
+-
+- datalen = *data++;
+-
+- if (!datalen || (data + datalen) >= dataend)
+- break;
+-
+- datanext = data + datalen;
++ char *key;
++ char *value;
+
+- for (ptr = key; data < datanext && *data != '='; data ++)
+- *ptr++ = *data;
+- *ptr = '\0';
+-
+- if (data < datanext && *data == '=')
+- {
+- data ++;
+-
+- if (data < datanext)
+- memcpy(value, data, datanext - data);
+- value[datanext - data] = '\0';
+- }
+- else
+- continue;
++ if (parse_txt_record_pair (txt))
++ goto next;
+
++ key = txt->key;
++ value = txt->value;
+ if (!strncasecmp(key, "usb_", 4))
+ {
+ /*
+@@ -805,6 +1183,10 @@ query_callback(
+ if (device->type == CUPS_DEVICE_PRINTER)
+ device->sent = 1;
+ }
++
++ next:
++ if (next_txt_record (txt) == NULL)
++ break;
+ }
+
+ if (device->device_id)
+@@ -854,11 +1236,9 @@ query_callback(
+ }
+ }
+
+- if (!device)
+- fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName);
++ return device;
+ }
+
+-
+ /*
+ * 'sigterm_handler()' - Handle termination signals...
+ */
+diff -up cups-1.4.5/config.h.in.avahi cups-1.4.5/config.h.in
+--- cups-1.4.5/config.h.in.avahi 2010-08-13 06:11:46.000000000 +0200
++++ cups-1.4.5/config.h.in 2010-11-12 13:13:31.000000000 +0100
+@@ -344,6 +344,13 @@
+
+
+ /*
++ * Do we have Avahi for DNS Service Discovery?
++ */
++
++#undef HAVE_AVAHI
++
++
++/*
+ * Do we have <sys/ioctl.h>?
+ */
+
+diff -up cups-1.4.5/config-scripts/cups-dnssd.m4.avahi cups-1.4.5/config-scripts/cups-dnssd.m4
+--- cups-1.4.5/config-scripts/cups-dnssd.m4.avahi 2009-08-29 00:54:34.000000000 +0200
++++ cups-1.4.5/config-scripts/cups-dnssd.m4 2010-11-12 13:13:31.000000000 +0100
+@@ -27,6 +27,21 @@ AC_ARG_WITH(dnssd-includes, [ --with-dn
+ DNSSDLIBS=""
+ DNSSD_BACKEND=""
+
++AC_ARG_ENABLE(avahi, [ --enable-avahi turn on DNS Service Discovery support, default=no],
++ [if test x$enable_avahi = xyes; then
++ AC_MSG_CHECKING(for Avahi)
++ if $PKGCONFIG --exists avahi-client; then
++ AC_MSG_RESULT(yes)
++ CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`"
++ DNSSDLIBS="`$PKGCONFIG --libs avahi-client`"
++ DNSSD_BACKEND="dnssd"
++ AC_DEFINE(HAVE_AVAHI)
++ enable_dnssd=no
++ else
++ AC_MSG_RESULT(no)
++ fi
++ fi])
++
+ if test x$enable_dnssd != xno; then
+ AC_CHECK_HEADER(dns_sd.h, [
+ case "$uname" in
+diff -up cups-1.4.5/cups/http-support.c.avahi cups-1.4.5/cups/http-support.c
+--- cups-1.4.5/cups/http-support.c.avahi 2010-10-02 00:40:38.000000000 +0200
++++ cups-1.4.5/cups/http-support.c 2010-11-12 13:28:45.000000000 +0100
+@@ -55,6 +55,11 @@
+ # include <dns_sd.h>
+ # include <poll.h>
+ #endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++# include <avahi-client/client.h>
++# include <avahi-client/lookup.h>
++# include <avahi-common/simple-watch.h>
++#endif /* HAVE_AVAHI */
+
+
+ /*
+@@ -121,6 +126,24 @@ static void resolve_callback(DNSService
+ void *context);
+ #endif /* HAVE_DNSSD */
+
++#ifdef HAVE_AVAHI
++static void avahi_resolve_uri_client_cb(AvahiClient *client,
++ AvahiClientState state,
++ void *simple_poll);
++static void avahi_resolve_uri_resolver_cb(AvahiServiceResolver *resolver,
++ AvahiIfIndex interface,
++ AvahiProtocol protocol,
++ AvahiResolverEvent event,
++ const char *name,
++ const char *type,
++ const char *domain,
++ const char *host_name,
++ const AvahiAddress *address,
++ uint16_t port,
++ AvahiStringList *txt,
++ AvahiLookupResultFlags flags,
++ void *context);
++#endif /* HAVE_AVAHI */
+
+ /*
+ * 'httpAssembleURI()' - Assemble a uniform resource identifier from its
+@@ -1351,16 +1374,27 @@ _httpResolveURI(
+
+ if (strstr(hostname, "._tcp"))
+ {
++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
++ char *regtype, /* Pointer to type in hostname */
++ *domain; /* Pointer to domain in hostname */
+ #ifdef HAVE_DNSSD
+ DNSServiceRef ref, /* DNS-SD master service reference */
+ domainref, /* DNS-SD service reference for domain */
+ localref; /* DNS-SD service reference for .local */
+ int domainsent = 0, /* Send the domain resolve? */
+ offline = 0; /* offline-report state set? */
+- char *regtype, /* Pointer to type in hostname */
+- *domain; /* Pointer to domain in hostname */
+ _http_uribuf_t uribuf; /* URI buffer */
+ struct pollfd polldata; /* Polling data */
++#else /* HAVE_AVAHI */
++ AvahiSimplePoll *simple_poll;
++ AvahiClient *client;
++ int error;
++ struct
++ {
++ AvahiSimplePoll *poll;
++ _http_uribuf_t uribuf;
++ } user_data;
++#endif /* HAVE_DNSSD */
+
+
+ if (logit)
+@@ -1398,8 +1432,13 @@ _httpResolveURI(
+ if (domain)
+ *domain++ = '\0';
+
++#ifdef HAVE_DNSSD
+ uribuf.buffer = resolved_uri;
+ uribuf.bufsize = resolved_size;
++#else
++ user_data.uribuf.buffer = resolved_uri;
++ user_data.uribuf.bufsize = resolved_size;
++#endif
+
+ resolved_uri[0] = '\0';
+
+@@ -1414,6 +1453,7 @@ _httpResolveURI(
+
+ uri = NULL;
+
++#ifdef HAVE_DNSSD
+ if (DNSServiceCreateConnection(&ref) == kDNSServiceErr_NoError)
+ {
+ localref = ref;
+@@ -1500,6 +1540,36 @@ _httpResolveURI(
+
+ DNSServiceRefDeallocate(ref);
+ }
++#else /* HAVE_AVAHI */
++ if ((simple_poll = avahi_simple_poll_new ()) != NULL)
++ {
++ if ((client = avahi_client_new (avahi_simple_poll_get (simple_poll),
++ 0, avahi_resolve_uri_client_cb,
++ &simple_poll, &error)) != NULL)
++ {
++ user_data.poll = simple_poll;
++ if (avahi_service_resolver_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC, hostname,
++ regtype, domain, AVAHI_PROTO_UNSPEC, 0,
++ avahi_resolve_uri_resolver_cb,
++ &user_data) != NULL)
++ {
++ avahi_simple_poll_loop (simple_poll);
++
++ /*
++ * Collect the result.
++ */
++
++ if (resolved_uri[0])
++ uri = resolved_uri;
++ }
++
++ avahi_client_free (client);
++ }
++
++ avahi_simple_poll_free (simple_poll);
++ }
++#endif /* HAVE_DNSSD */
+
+ if (logit)
+ {
+@@ -1511,13 +1581,13 @@ _httpResolveURI(
+ fputs("STATE: -connecting-to-device,offline-report\n", stderr);
+ }
+
+-#else
++#else /* HAVE_DNSSD || HAVE_AVAHI */
+ /*
+ * No DNS-SD support...
+ */
+
+ uri = NULL;
+-#endif /* HAVE_DNSSD */
++#endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ if (logit && !uri)
+ _cupsLangPuts(stderr, _("Unable to find printer!\n"));
+@@ -1722,6 +1792,105 @@ resolve_callback(
+ }
+ #endif /* HAVE_DNSSD */
+
++#ifdef HAVE_AVAHI
++static void
++avahi_resolve_uri_client_cb (AvahiClient *client,
++ AvahiClientState state,
++ void *simple_poll)
++{
++ DEBUG_printf(("avahi_resolve_uri_client_callback(client=%p, state=%d, "
++ "simple_poll=%p)\n", client, state, simple_poll));
++
++ /*
++ * If the connection drops, quit.
++ */
++
++ if (state == AVAHI_CLIENT_FAILURE)
++ avahi_simple_poll_quit (simple_poll);
++}
++
++static void
++avahi_resolve_uri_resolver_cb (AvahiServiceResolver *resolver,
++ AvahiIfIndex interface,
++ AvahiProtocol protocol,
++ AvahiResolverEvent event,
++ const char *name,
++ const char *type,
++ const char *domain,
++ const char *host_name,
++ const AvahiAddress *address,
++ uint16_t port,
++ AvahiStringList *txt,
++ AvahiLookupResultFlags flags,
++ void *context)
++{
++ const char *scheme; /* URI scheme */
++ char rp[256]; /* Remote printer */
++ AvahiStringList *pair;
++ char *value;
++ size_t valueLen = 0;
++ char addr[AVAHI_ADDRESS_STR_MAX];
++ struct
++ {
++ AvahiSimplePoll *poll;
++ _http_uribuf_t uribuf;
++ } *poll_uribuf = context;
++
++ DEBUG_printf(("avahi_resolve_uri_resolver_callback(resolver=%p, "
++ "interface=%d, protocol=%d, event=%d, name=\"%s\", "
++ "type=\"%s\", domain=\"%s\", host_name=\"%s\", address=%p, "
++ "port=%d, txt=%p, flags=%d, context=%p)\n",
++ resolver, interface, protocol, event, name, type, domain,
++ host_name, address, port, txt, flags, context));
++
++ if (event != AVAHI_RESOLVER_FOUND)
++ {
++ avahi_service_resolver_free (resolver);
++ avahi_simple_poll_quit (poll_uribuf->poll);
++ return;
++ }
++
++ /*
++ * Figure out the scheme from the full name...
++ */
++
++ if (strstr(type, "_ipp."))
++ scheme = "ipp";
++ else if (strstr(type, "_printer."))
++ scheme = "lpd";
++ else if (strstr(type, "_pdl-datastream."))
++ scheme = "socket";
++ else
++ scheme = "riousbprint";
++
++ /*
++ * Extract the "remote printer key from the TXT record...
++ */
++
++ if ((pair = avahi_string_list_find (txt, "rp")) != NULL)
++ {
++ avahi_string_list_get_pair (pair, NULL, &value, &valueLen);
++ rp[0] = '/';
++ memcpy (rp + 1, value, valueLen);
++ rp[valueLen + 1] = '\0';
++ }
++ else
++ rp[0] = '\0';
++
++ /*
++ * Assemble the final device URI...
++ */
++
++ avahi_address_snprint (addr, AVAHI_ADDRESS_STR_MAX, address);
++ httpAssembleURI(HTTP_URI_CODING_ALL, poll_uribuf->uribuf.buffer,
++ poll_uribuf->uribuf.bufsize, scheme, NULL,
++ addr, port, rp);
++ DEBUG_printf(("avahi_resolve_uri_resolver_callback: Resolved URI is \"%s\"\n",
++ poll_uribuf->uribuf.buffer));
++ avahi_simple_poll_quit (poll_uribuf->poll);
++}
++#endif /* HAVE_AVAHI */
++
+
+ /*
+ * End of "$Id: http-support.c 9322 2010-10-01 22:40:38Z mike $".
diff --git a/staging/cups/cups-no-export-ssllibs.patch b/staging/cups/cups-no-export-ssllibs.patch
new file mode 100644
index 000000000..9be3c819b
--- /dev/null
+++ b/staging/cups/cups-no-export-ssllibs.patch
@@ -0,0 +1,12 @@
+diff -up cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs cups-1.5b1/config-scripts/cups-ssl.m4
+--- cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs 2011-05-11 02:52:08.000000000 +0200
++++ cups-1.5b1/config-scripts/cups-ssl.m4 2011-05-23 17:47:27.000000000 +0200
+@@ -164,7 +164,7 @@ AC_SUBST(IPPALIASES)
+ AC_SUBST(SSLFLAGS)
+ AC_SUBST(SSLLIBS)
+
+-EXPORT_SSLLIBS="$SSLLIBS"
++EXPORT_SSLLIBS=""
+ AC_SUBST(EXPORT_SSLLIBS)
+
+
diff --git a/staging/cups/cups-no-gcrypt.patch b/staging/cups/cups-no-gcrypt.patch
new file mode 100644
index 000000000..203b4f4ac
--- /dev/null
+++ b/staging/cups/cups-no-gcrypt.patch
@@ -0,0 +1,39 @@
+diff -ruN cups-1.4.7.orig//config-scripts/cups-ssl.m4 cups-1.4.7/config-scripts/cups-ssl.m4
+--- cups-1.4.7.orig//config-scripts/cups-ssl.m4 2011-01-11 08:05:58.000000000 +0100
++++ cups-1.4.7/config-scripts/cups-ssl.m4 2011-08-02 10:44:26.011047900 +0200
+@@ -74,7 +74,6 @@
+ dnl Then look for GNU TLS...
+ if test $have_ssl = 0 -a "x$enable_gnutls" != "xno" -a "x$PKGCONFIG" != x; then
+ AC_PATH_PROG(LIBGNUTLSCONFIG,libgnutls-config)
+- AC_PATH_PROG(LIBGCRYPTCONFIG,libgcrypt-config)
+ if $PKGCONFIG --exists gnutls; then
+ if test "x$have_pthread" = xyes; then
+ AC_MSG_WARN([The current version of GNU TLS cannot be made thread-safe.])
+@@ -96,16 +95,6 @@
+ AC_DEFINE(HAVE_GNUTLS)
+ fi
+ fi
+-
+- if test $have_ssl = 1; then
+- if $PKGCONFIG --exists gcrypt; then
+- SSLLIBS="$SSLLIBS `$PKGCONFIG --libs gcrypt`"
+- SSLFLAGS="$SSLFLAGS `$PKGCONFIG --cflags gcrypt`"
+- elif test "x$LIBGCRYPTCONFIG" != x; then
+- SSLLIBS="$SSLLIBS `$LIBGCRYPTCONFIG --libs`"
+- SSLFLAGS="$SSLFLAGS `$LIBGCRYPTCONFIG --cflags`"
+- fi
+- fi
+ fi
+
+ dnl Check for the OpenSSL library last...
+diff -ruN cups-1.4.7.orig//cups/http-private.h cups-1.4.7/cups/http-private.h
+--- cups-1.4.7.orig//cups/http-private.h 2011-01-22 01:07:22.000000000 +0100
++++ cups-1.4.7/cups/http-private.h 2011-08-02 10:42:43.341604107 +0200
+@@ -98,7 +98,6 @@
+ * The GNU TLS library is more of a "bare metal" SSL/TLS library...
+ */
+ # include <gnutls/gnutls.h>
+-# include <gcrypt.h>
+
+ typedef struct
+ {
diff --git a/staging/cups/cups.install b/staging/cups/cups.install
new file mode 100644
index 000000000..47c3d9b82
--- /dev/null
+++ b/staging/cups/cups.install
@@ -0,0 +1,26 @@
+post_install() {
+ if [ -x usr/bin/xdg-icon-resource ]; then
+ xdg-icon-resource forceupdate --theme hicolor 2> /dev/null
+ fi
+ echo ">> If you use an HTTPS connection to CUPS, the first time you access"
+ echo ">> the interface it may take a very long time before the site comes up."
+ echo ">> This is because the first request triggers the generation of the CUPS"
+ echo ">> SSL certificates which can be a very time-consuming job."
+}
+
+post_upgrade() {
+ if [ -x usr/bin/xdg-icon-resource ]; then
+ xdg-icon-resource forceupdate --theme hicolor 2> /dev/null
+ fi
+ if [ "`vercmp $2 1.4.7-2`" -lt 0 ]; then
+ # important upgrade notice
+ echo "daemon script has been renamed to /etc/rc.d/cupsd"
+ echo "change your entry in /etc/rc.conf"
+ fi
+}
+
+post_remove() {
+ if [ -x usr/bin/xdg-icon-resource ]; then
+ xdg-icon-resource forceupdate --theme hicolor 2> /dev/null
+ fi
+}
diff --git a/staging/cups/cups.logrotate b/staging/cups/cups.logrotate
new file mode 100644
index 000000000..9c49bbdaf
--- /dev/null
+++ b/staging/cups/cups.logrotate
@@ -0,0 +1,8 @@
+/var/log/cups/*log {
+ missingok
+ notifempty
+ delaycompress
+ postrotate
+ /bin/kill -HUP `cat /var/run/cups.pid 2>/dev/null` 2>/dev/null || true
+ endscript
+}
diff --git a/staging/cups/cups.pam b/staging/cups/cups.pam
new file mode 100644
index 000000000..53724d1f8
--- /dev/null
+++ b/staging/cups/cups.pam
@@ -0,0 +1,3 @@
+auth required pam_unix.so
+account required pam_unix.so
+session required pam_unix.so
diff --git a/staging/empathy/PKGBUILD b/staging/empathy/PKGBUILD
new file mode 100644
index 000000000..952c577d6
--- /dev/null
+++ b/staging/empathy/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 134982 2011-08-09 18:33:31Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+pkgname=empathy
+pkgver=3.0.2
+pkgrel=2
+pkgdesc="A GNOME instant messaging client using the Telepathy framework."
+arch=('i686' 'x86_64')
+url="http://live.gnome.org/Empathy"
+license=('GPL2')
+depends=('telepathy-glib' 'telepathy-mission-control' 'folks' 'telepathy-logger' 'telepathy-farsight' 'gnome-keyring' 'gnutls' 'evolution-data-server'
+ 'libcanberra' 'libnotify' 'enchant' 'iso-codes' 'libwebkit3' 'dconf' 'ca-certificates')
+makedepends=('intltool' 'gnome-doc-utils' 'nautilus-sendto' 'gnome-control-center')
+optdepends=('telepathy-gabble: XMPP/Jabber support'
+ 'telepathy-butterfly: MSN support'
+ 'telepathy-idle: IRC support'
+ 'telepathy-salut: Link-local XMPP support'
+ 'telepathy-sofiasip: SIP support'
+ 'telepathy-haze: libpurple support')
+options=('!libtool')
+groups=('gnome-extra')
+install=empathy.install
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('8074f6ce951fb95b1e13c546497e22d487bca9a87d88f1ebb903cdd2fd48bdc2')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --libexecdir=/usr/lib/empathy \
+ --disable-static \
+ --disable-scrollkeeper \
+ --disable-schemas-compile
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/staging/empathy/empathy.install b/staging/empathy/empathy.install
new file mode 100644
index 000000000..63dd6b907
--- /dev/null
+++ b/staging/empathy/empathy.install
@@ -0,0 +1,16 @@
+post_install() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+ update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ echo "To use Empathy you need to install at least one Telepathy connection manager."
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+ update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
diff --git a/staging/glib-networking/PKGBUILD b/staging/glib-networking/PKGBUILD
index da6645cad..dc775a49b 100644
--- a/staging/glib-networking/PKGBUILD
+++ b/staging/glib-networking/PKGBUILD
@@ -1,13 +1,13 @@
-# $Id: PKGBUILD 134861 2011-08-08 05:46:38Z eric $
+# $Id: PKGBUILD 134916 2011-08-09 12:05:52Z ibiru $
# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
pkgname=glib-networking
pkgver=2.28.7
-pkgrel=2
+pkgrel=3
pkgdesc="Network-related giomodules for glib"
arch=('i686' 'x86_64')
url="http://www.gtk.org/"
license=('GPL2')
-depends=('glib2' 'libproxy' 'gnutls' 'ca-certificates' 'gsettings-desktop-schemas')
+depends=('glib2' 'libproxy' 'gnutls' 'libgcrypt' 'ca-certificates' 'gsettings-desktop-schemas')
makedepends=('intltool')
options=('!libtool')
install=glib-networking.install
@@ -17,7 +17,7 @@ sha256sums=('98bedfbd530c4b1b53c91025fe82290bafd289d249e4eb549c3b90d23a76021c')
build() {
cd "$srcdir/$pkgname-$pkgver"
./configure \
- --prefix=/usr --sysconfdir=/etc \
+ --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/glib-networking --disable-static
make
}
diff --git a/staging/lftp/PKGBUILD b/staging/lftp/PKGBUILD
new file mode 100644
index 000000000..9cd8e8d15
--- /dev/null
+++ b/staging/lftp/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 134943 2011-08-09 15:13:13Z andyrtr $
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+# Contributor: Aaron Griffin <aaron@archlinux.org>
+
+pkgname=lftp
+pkgver=4.3.1
+pkgrel=2
+pkgdesc="Sophisticated command line based FTP client"
+arch=('i686' 'x86_64')
+license=('GPL3')
+depends=('gcc-libs' 'readline>=6.2' "gnutls" "expat>=2.0.1-4" 'sh')
+optdepends=('perl: needed for convert-netscape-cookies and verify-file')
+makedepends=('autoconf')
+url="http://lftp.yar.ru/"
+backup=('etc/lftp.conf')
+source=(http://ftp.yars.free.net/pub/source/lftp/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('ea45acfb47b5590d4675c50dc0c6e13c')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ ./configure --prefix=/usr --with-gnutls \
+ --without-openssl --disable-static
+ make
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+ rm -rf ${pkgdir}/usr/lib
+} \ No newline at end of file
diff --git a/staging/libgpod/PKGBUILD b/staging/libgpod/PKGBUILD
new file mode 100644
index 000000000..58ef7b358
--- /dev/null
+++ b/staging/libgpod/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 134924 2011-08-09 13:21:55Z ibiru $
+# Maintainer: Daniel Isenmann <daniel@archlinux.org>
+# Contributor: William Rea <sillywilly@gmail.com>
+
+pkgname=libgpod
+pkgver=0.8.2
+pkgrel=2
+pkgdesc="A shared library to access the contents of an iPod"
+arch=(i686 x86_64)
+license=('LGPL')
+depends=('gdk-pixbuf2' 'mutagen' 'sg3_utils' 'libimobiledevice')
+makedepends=('intltool' 'swig' 'docbook-xsl' 'pygobject-devel' 'gtk-sharp-2')
+optdepends=('gtk-sharp-2: Mono bindings')
+url="http://www.gtkpod.org/libgpod/"
+source=(http://downloads.sourceforge.net/sourceforge/gtkpod/${pkgname}-${pkgver}.tar.bz2)
+options=('!libtool' '!emptydirs')
+md5sums=('ff0fd875fa08f2a6a49dec57ce3367ab')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr \
+ --enable-udev --with-python=/usr/bin/python2
+ make PREFIX=/usr
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make PREFIX=/usr DESTDIR="${pkgdir}" install
+}
+
diff --git a/staging/libimobiledevice/PKGBUILD b/staging/libimobiledevice/PKGBUILD
new file mode 100644
index 000000000..a6f48d786
--- /dev/null
+++ b/staging/libimobiledevice/PKGBUILD
@@ -0,0 +1,31 @@
+# $Id: PKGBUILD 134921 2011-08-09 12:21:53Z ibiru $
+# Maintainer : Ionut Biru <ibiru@archlinux.org>
+# Contributor: Gabriel Martinez < reitaka at gmail dot com >
+
+pkgname=libimobiledevice
+pkgver=1.1.1
+pkgrel=2
+pkgdesc="Is a software library that talks the protocols to support iPhone and iPod Touch devices on Linux"
+url="http://libimobiledevice.org/"
+arch=('i686' 'x86_64')
+license=('GPL2' 'LGPL2.1')
+depends=('glib2' 'gnutls' 'libgcrypt' 'libplist' 'usbmuxd')
+makedepends=('swig' 'python2')
+options=('!libtool')
+source=(http://libimobiledevice.org/downloads/${pkgname}-${pkgver}.tar.bz2
+ swig-version-check.patch)
+md5sums=('cdc13037e822d9ac2e109536701d153a'
+ '8bb215e36fe0e08a72332c108c7842cc')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ # SWIG version check is wrong (still not fixed upstream)
+ patch -p1 -i "$srcdir"/swig-version-check.patch
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/staging/libimobiledevice/swig-version-check.patch b/staging/libimobiledevice/swig-version-check.patch
new file mode 100644
index 000000000..c56b095db
--- /dev/null
+++ b/staging/libimobiledevice/swig-version-check.patch
@@ -0,0 +1,14 @@
+diff -Nur libimobiledevice-1.0.3.old/configure libimobiledevice-1.0.3/configure
+--- libimobiledevice-1.0.3.old/configure 2010-10-04 07:38:37.000000000 -0700
++++ libimobiledevice-1.0.3/configure 2010-10-08 05:43:05.466686656 -0700
+@@ -3477,9 +3477,7 @@
+ if test -z "$available_patch" ; then
+ available_patch=0
+ fi
+- if test $available_major -ne $required_major \
+- -o $available_minor -ne $required_minor \
+- -o $available_patch -lt $required_patch ; then
++ if test $available_major -lt $required_major ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: SWIG version >= 1.3.21 is required. You have $swig_version. You should look at http://www.swig.org" >&5
+ $as_echo "$as_me: WARNING: SWIG version >= 1.3.21 is required. You have $swig_version. You should look at http://www.swig.org" >&2;}
+ SWIG=false
diff --git a/staging/telepathy-gabble/PKGBUILD b/staging/telepathy-gabble/PKGBUILD
new file mode 100644
index 000000000..04a19b6a9
--- /dev/null
+++ b/staging/telepathy-gabble/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 134985 2011-08-09 18:45:11Z ibiru $
+# Maintainer : Ionut Biru <ibiru@archlinux.org>
+# Contributor: Daniel Balieiro <daniel@balieiro.com>
+# Contributor: Rodrigo L. M. Flores <mail@rodrigoflores.org>
+pkgname=telepathy-gabble
+pkgver=0.12.4
+pkgrel=2
+pkgdesc="A Jabber/XMPP connection manager for Telepathy"
+arch=('i686' 'x86_64')
+url="http://telepathy.freedesktop.org"
+groups=('telepathy')
+license=('LGPL2.1')
+depends=('telepathy-glib' 'libsoup' 'libnice' 'sqlite3')
+makedepends=('libxslt' 'python2')
+options=('!libtool')
+source=(http://telepathy.freedesktop.org/releases/telepathy-gabble/${pkgname}-${pkgver}.tar.gz)
+install=telepathy-gabble.install
+md5sums=('428962565d568667d3ff1aa7eee3da51')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
+ --libexecdir=/usr/lib/telepathy
+ make
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+}
diff --git a/staging/telepathy-gabble/telepathy-gabble.install b/staging/telepathy-gabble/telepathy-gabble.install
new file mode 100644
index 000000000..87d7838b8
--- /dev/null
+++ b/staging/telepathy-gabble/telepathy-gabble.install
@@ -0,0 +1,13 @@
+post_install() {
+ killall -HUP dbus-daemon 2>&1
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ post_install $1
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/staging/vino/PKGBUILD b/staging/vino/PKGBUILD
new file mode 100644
index 000000000..ddd37f61e
--- /dev/null
+++ b/staging/vino/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 134988 2011-08-09 18:47:51Z ibiru $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=vino
+pkgver=3.0.3
+pkgrel=2
+pkgdesc="a VNC server for the GNOME desktop"
+arch=('i686' 'x86_64')
+license=('GPL')
+depends=('libnotify' 'libxtst' 'libsm' 'libsoup' 'telepathy-glib' 'gtk3' 'libgnome-keyring' 'avahi' 'desktop-file-utils')
+makedepends=('intltool' 'networkmanager')
+groups=('gnome-extra')
+url="http://www.gnome.org"
+options=(!emptydirs)
+install=vino.install
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz)
+sha256sums=('0e58027d3c10649da61445cdd5205e31c4d1aa0b63f4911de3db4e7052d7bbfb')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/vino \
+ --localstatedir=/var \
+ --enable-gnome-keyring \
+ --enable-avahi
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/staging/vino/vino.install b/staging/vino/vino.install
new file mode 100644
index 000000000..469266843
--- /dev/null
+++ b/staging/vino/vino.install
@@ -0,0 +1,18 @@
+post_install() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+ update-desktop-database -q
+}
+
+pre_upgrade() {
+ if (( $(vercmp $2 2.90.0) < 0 )); then
+ usr/sbin/gconfpkg --uninstall vino
+ fi
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/staging/vlc/PKGBUILD b/staging/vlc/PKGBUILD
new file mode 100644
index 000000000..c7d6642bf
--- /dev/null
+++ b/staging/vlc/PKGBUILD
@@ -0,0 +1,73 @@
+# $Id: PKGBUILD 135024 2011-08-09 21:18:13Z giovanni $
+# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
+# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
+# Contributor: Martin Sandsmark <martin.sandsmark@kde.org>
+
+pkgname=vlc
+pkgver=1.1.11
+pkgrel=4
+pkgdesc="A multi-platform MPEG, VCD/DVD, and DivX player"
+arch=('i686' 'x86_64')
+url="http://www.videolan.org/vlc/"
+license=('GPL')
+depends=('a52dec' 'fluidsynth' 'libmtp' 'libdvbpsi' 'libxpm' 'libcdio'
+ 'libdca' 'qt' 'libproxy' 'sdl_image' 'libdvdnav' 'mesa'
+ 'lua' 'v4l-utils' 'libcddb' 'smbclient' 'libmatroska' 'zvbi'
+ 'taglib' 'sysfsutils' 'libmpcdec' 'ffmpeg' 'faad2' 'libupnp'
+ 'libshout' 'libmad' 'fribidi' 'libmpeg2' 'libmodplug'
+ 'ttf-freefont' 'libxv' 'libass' 'xdg-utils' 'desktop-file-utils')
+makedepends=('avahi' 'pkgconfig' 'live-media' 'libnotify'
+ 'flac' 'libtheora' 'alsa-lib' 'jack' 'kdelibs' 'udev'
+ 'libraw1394' 'libdc1394' 'libavc1394' 'libva' 'libpulse'
+ 'lirc-utils' 'gnutls' 'libcaca')
+optdepends=('avahi: for service discovery using bonjour protocol'
+ 'libnotify: for notification plugin'
+ 'ncurses: for ncurses interface support'
+ 'libdvdcss: for decoding encrypted DVDs'
+ 'lirc-utils: for lirc plugin'
+ 'libavc1394: for devices using the 1394ta AV/C'
+ 'libdc1394: for IEEE 1394 plugin'
+ 'kdelibs: KDE Solid hardware integration'
+ 'vdpau-video: VDPAU backend for VA API (for GPU acceleration on Nvidia cards)'
+ 'libpulse: PulseAudio support')
+conflicts=('vlc-plugin')
+replaces=('vlc-plugin')
+backup=('usr/share/vlc/http/.hosts'
+ 'usr/share/vlc/http/dialogs/.hosts'
+ 'usr/share/vlc/lua/http/.hosts'
+ 'usr/share/vlc/lua/http/dialogs/.hosts')
+options=('!libtool')
+install=vlc.install
+source=("http://download.videolan.org/pub/videolan/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2")
+md5sums=('a64846d6f21ea179ae8e8bfb6f9447fe')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ sed -i -e 's:truetype/freefont:TTF:g' modules/misc/freetype.c
+
+ ./configure --prefix=/usr \
+ --disable-rpath \
+ --enable-faad \
+ --enable-v4l \
+ --enable-snapshot \
+ --enable-dbus-control \
+ --enable-nls \
+ --enable-lirc \
+ --enable-pvr \
+ --enable-ncurses \
+ --with-live555-tree=/usr/lib/live \
+ --enable-upnp \
+ --enable-realrtsp
+ make
+}
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}/" install
+
+ for res in 16 32 48 128; do
+ install -D -m644 "${srcdir}/vlc-${pkgver}/share/icons/${res}x${res}/vlc.png" \
+ "${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/vlc.png"
+ done
+}
diff --git a/staging/vlc/vlc.install b/staging/vlc/vlc.install
new file mode 100644
index 000000000..4a1091bc5
--- /dev/null
+++ b/staging/vlc/vlc.install
@@ -0,0 +1,18 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+ usr/lib/vlc/vlc-cache-gen -f usr/lib/vlc/plugins
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ post_install
+}
+
+pre_remove() {
+ rm -f usr/lib/vlc/plugins/plugins-*.dat
+}
+
+post_remove() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+ update-desktop-database -q
+}
diff --git a/staging/weechat/PKGBUILD b/staging/weechat/PKGBUILD
new file mode 100644
index 000000000..6e53c7d86
--- /dev/null
+++ b/staging/weechat/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 135012 2011-08-09 21:04:57Z giovanni $
+# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
+# Contributor: lucke <lucke at o2 dot pl>
+
+pkgname=weechat
+pkgver=0.3.5
+pkgrel=3
+pkgdesc="Fast, light and extensible IRC client (curses UI)"
+arch=('i686' 'x86_64')
+url="http://www.weechat.org/"
+license=('GPL')
+depends=('gnutls')
+makedepends=('cmake' 'pkgconfig' 'perl' 'python2' 'lua' 'tcl' 'ruby' 'aspell')
+optdepends=('perl' 'python2' 'lua' 'tcl' 'ruby' 'aspell')
+options=('!libtool')
+source=("http://www.weechat.org/files/src/${pkgname}-${pkgver}.tar.bz2")
+md5sums=('0d2a089bfbfa550e0c65618a171fb3c4')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ mkdir build
+ cd build
+ cmake .. -DPREFIX=/usr \
+ -DPYTHON_EXECUTABLE=/usr/bin/python2 \
+ -DPYTHON_LIBRARY=/usr/lib/libpython2.7.so
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}/build"
+
+ make DESTDIR="${pkgdir}/" install
+}
diff --git a/staging/wireshark/PKGBUILD b/staging/wireshark/PKGBUILD
new file mode 100644
index 000000000..66b2f859c
--- /dev/null
+++ b/staging/wireshark/PKGBUILD
@@ -0,0 +1,58 @@
+# $Id: PKGBUILD 134932 2011-08-09 14:19:48Z guillaume $
+# Maintainer: Guillaume ALAUX <guillaume at alaux dot net>
+# Contributor: Florian Pritz <bluewind at jabber dot ccc dot de>
+pkgname=(wireshark-cli wireshark-gtk)
+pkgbase=wireshark
+pkgver=1.6.1
+pkgrel=2
+arch=('i686' 'x86_64')
+license=('GPL2')
+makedepends=('bison' 'flex' 'gtk2' 'krb5' 'libpcap' 'bash' 'gnutls' 'libcap' 'lua')
+url="http://www.wireshark.org/"
+options=(!libtool)
+source=(http://www.wireshark.org/download/src/${pkgbase}-${pkgver}.tar.bz2)
+md5sums=('dc1e8c9800b64130674b120a183e2308')
+
+build() {
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ export CFLAGS="-fno-unit-at-a-time ${CFLAGS}"
+
+ ./configure \
+ --prefix=/usr \
+ --with-ssl \
+ --with-zlib=yes \
+ --with-lua
+ make all
+}
+
+package_wireshark-cli() {
+ pkgdesc="A free network protocol analyzer for Unix/Linux and Windows - CLI version"
+ depends=('krb5' 'libpcap' 'bash' 'gnutls' 'libcap' 'glib2' 'lua')
+ install=wireshark.install
+ conflicts=(wireshark)
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ #wireshark uid group is 150
+ chgrp 150 "${pkgdir}/usr/bin/dumpcap"
+ chmod 754 "${pkgdir}/usr/bin/dumpcap"
+ rm "$pkgdir/usr/bin/wireshark"
+}
+
+package_wireshark-gtk() {
+ pkgdesc="A free network protocol analyzer for Unix/Linux and Windows - GTK frontend"
+ depends=('gtk2' 'wireshark-cli')
+ install=wireshark-gtk.install
+ replaces=(wireshark)
+ conflicts=(wireshark)
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+
+ install -Dm755 .libs/wireshark "$pkgdir/usr/bin/wireshark"
+ for d in 16 32 48; do
+ install -Dm644 image/hi${d}-app-wireshark.png ${pkgdir}/usr/share/icons/hicolor/${d}x${d}/apps/wireshark.png
+ done
+ install -Dm644 wireshark.desktop ${pkgdir}/usr/share/applications/wireshark.desktop
+}
diff --git a/staging/wireshark/wireshark-gtk.install b/staging/wireshark/wireshark-gtk.install
new file mode 100644
index 000000000..6b1b64bdd
--- /dev/null
+++ b/staging/wireshark/wireshark-gtk.install
@@ -0,0 +1,11 @@
+post_install() {
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/staging/wireshark/wireshark.install b/staging/wireshark/wireshark.install
new file mode 100644
index 000000000..6585ba272
--- /dev/null
+++ b/staging/wireshark/wireshark.install
@@ -0,0 +1,18 @@
+post_install() {
+ getent group wireshark >/dev/null 2>&1 || usr/sbin/groupadd -g 150 wireshark &>/dev/null
+
+ setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' usr/bin/dumpcap
+ echo "NOTE: To run wireshark as normal user you have to add yourself into wireshark group"
+}
+
+post_upgrade() {
+ getent group wireshark >/dev/null 2>&1 || usr/sbin/groupadd -g 150 wireshark &>/dev/null
+
+ setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' usr/bin/dumpcap
+}
+
+post_remove() {
+ if getent group wireshark >/dev/null 2>&1; then
+ groupdel wireshark
+ fi
+}
diff --git a/staging/xfce4-mailwatch-plugin/PKGBUILD b/staging/xfce4-mailwatch-plugin/PKGBUILD
new file mode 100644
index 000000000..4a992bd09
--- /dev/null
+++ b/staging/xfce4-mailwatch-plugin/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 134951 2011-08-09 15:38:12Z andyrtr $
+# Maintainer: AndyRTR <andyrtr@archlinux.org>
+# Contributor: Suzy Williams <suzanne.williams3@verizon.net>
+
+pkgname=xfce4-mailwatch-plugin
+pkgver=1.1.0
+pkgrel=4
+pkgdesc="A mailbox watch/check plugin for the Xfce4 panel"
+arch=(i686 x86_64)
+license=('GPL2')
+url="http://spurint.org/projects/xfce4-mailwatch-plugin/"
+groups=('xfce4-goodies')
+depends=('xfce4-panel' 'libxfcegui4' 'gnutls' 'libgcrypt' 'hicolor-icon-theme')
+makedepends=('intltool' 'xfce4-dev-tools')
+options=('!libtool')
+install=${pkgname}.install
+source=(http://spuriousinterrupt.org/files/mailwatch/${pkgname}-${pkgver}.tar.bz2
+ xfce4-mailwatch-plugin-1.1.0-underlink.patch)
+md5sums=('f84dce86be1d7f25f169f262aaacee4e'
+ '47fe8588e3bb642e1b507a854927e6db')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ # fix for panel4.8 from Fedora
+ patch -Np1 -i ${srcdir}/xfce4-mailwatch-plugin-1.1.0-underlink.patch
+ xdt-autogen
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --libexecdir=/usr/lib \
+ --localstatedir=/var \
+ --disable-static \
+ --disable-debug
+ make
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+}
diff --git a/staging/xfce4-mailwatch-plugin/xfce4-mailwatch-plugin-1.1.0-underlink.patch b/staging/xfce4-mailwatch-plugin/xfce4-mailwatch-plugin-1.1.0-underlink.patch
new file mode 100644
index 000000000..ada0df041
--- /dev/null
+++ b/staging/xfce4-mailwatch-plugin/xfce4-mailwatch-plugin-1.1.0-underlink.patch
@@ -0,0 +1,21 @@
+--- xfce4-mailwatch-plugin-1.1.0/panel-plugin/Makefile.am 2008-08-26 03:42:36.000000000 +0100
++++ xfce4-mailwatch-plugin-1.1.0/panel-plugin/Makefile.am.new 2011-01-14 17:27:44.116199383 +0000
+@@ -50,6 +50,7 @@
+ -I$(top_srcdir)/libmailwatch-core \
+ @GTHREAD_CFLAGS@ \
+ @LIBXFCE4PANEL_CFLAGS@ \
++ @LIBXFCEGUI4_CFLAGS@ \
+ -DDATADIR=\"$(datadir)\" \
+ -DLOCALEDIR=\"$(localedir)\"
+
+@@ -60,7 +61,9 @@
+ $(top_builddir)/libmailwatch-core/libmailwatch-core.la \
+ @GTHREAD_LIBS@ \
+ @LIBXFCE4PANEL_LIBS@ \
+- @GNUTLS_LIBS@
++ @LIBXFCEGUI4_LIBS@ \
++ @GNUTLS_LIBS@ \
++ -lgcrypt
+
+ if HAVE_CYGWIN
+ xfce4_mailwatch_plugin_LDFLAGS += \
diff --git a/staging/xfce4-mailwatch-plugin/xfce4-mailwatch-plugin.install b/staging/xfce4-mailwatch-plugin/xfce4-mailwatch-plugin.install
new file mode 100644
index 000000000..21b79d2d4
--- /dev/null
+++ b/staging/xfce4-mailwatch-plugin/xfce4-mailwatch-plugin.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() {
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
diff --git a/staging/xmlsec/PKGBUILD b/staging/xmlsec/PKGBUILD
new file mode 100644
index 000000000..c15a0ac98
--- /dev/null
+++ b/staging/xmlsec/PKGBUILD
@@ -0,0 +1,35 @@
+# $Id: PKGBUILD 134954 2011-08-09 15:50:09Z andyrtr $
+# Maintainer: AndyRTR <andyrtr@archlinux.org>
+# Contributor: Jan de Groot <jgc@archlinux.org>
+# Contributor: Hussam Al-Tayeb <ht990332@gmail.com>
+
+pkgname=xmlsec
+pkgver=1.2.18
+pkgrel=2
+pkgdesc="XML Security Library is a C library based on LibXML2"
+license=('custom')
+arch=(i686 x86_64)
+url="http://www.aleksey.com/xmlsec/index.html"
+depends=('libxslt>=1.1.26' 'openssl>=1.0.0' 'gnutls' 'nss>=3.12.10' 'libtool')
+makedepends=('pkgconfig')
+options=('!libtool')
+source=(http://www.aleksey.com/xmlsec/download/${pkgname}1-${pkgver}.tar.gz)
+md5sums=('8694b4609aab647186607f79e1da7f1a')
+
+build() {
+ cd ${srcdir}/${pkgname}1-${pkgver}
+ ./configure --prefix=/usr --disable-static
+ make
+}
+
+check() {
+ cd "$srcdir/${pkgname}1-$pkgver"
+ make -k check
+}
+
+package() {
+ cd ${srcdir}/${pkgname}1-${pkgver}
+ make DESTDIR=${pkgdir} install
+ install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname}
+ install -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/
+}
diff --git a/testing/dash/PKGBUILD b/testing/dash/PKGBUILD
new file mode 100644
index 000000000..50aaf36c0
--- /dev/null
+++ b/testing/dash/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id: PKGBUILD 135041 2011-08-09 23:37:21Z tomegun $
+# Maintainer: Dan McGee <dan@archlinux.org>
+
+pkgname=dash
+pkgver=0.5.7
+pkgrel=2
+pkgdesc="A POSIX compliant shell that aims to be as small as possible"
+arch=('i686' 'x86_64')
+url="http://gondor.apana.org.au/~herbert/dash/"
+license=('BSD')
+depends=('glibc')
+install=dash.install
+source=("http://gondor.apana.org.au/~herbert/dash/files/${pkgname}-${pkgver}.tar.gz")
+sha1sums=('a3ebc16f2e2c7ae8adf64e5e62ae3dcb631717c6')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr --mandir=/usr/share/man --exec-prefix=""
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ # license
+ install -m644 -D COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING
+}
diff --git a/testing/dash/dash.install b/testing/dash/dash.install
new file mode 100644
index 000000000..6b04cba30
--- /dev/null
+++ b/testing/dash/dash.install
@@ -0,0 +1,11 @@
+post_install() {
+ grep -q '/bin/dash' etc/shells || echo '/bin/dash' >> etc/shells
+}
+
+post_upgrade() {
+ post_install
+}
+
+pre_remove() {
+ sed -i '/^\/bin\/dash/d' etc/shells
+}
diff --git a/testing/wget/PKGBUILD b/testing/wget/PKGBUILD
new file mode 100644
index 000000000..43a6c0535
--- /dev/null
+++ b/testing/wget/PKGBUILD
@@ -0,0 +1,45 @@
+# $Id: PKGBUILD 135027 2011-08-09 21:59:45Z allan $
+# Maintainer: Allan McRae <allan@archlinux.org>
+# Contributor: Judd Vinet <jvinet@zeroflux.org>
+
+pkgname=wget
+pkgver=1.13
+pkgrel=1
+pkgdesc="A network utility to retrieve files from the Web"
+arch=('i686' 'x86_64')
+url="http://www.gnu.org/software/wget/wget.html"
+license=('GPL3')
+groups=('base')
+depends=('glibc' 'openssl')
+optdepends=('ca-certificates: HTTPS downloads')
+backup=('etc/wgetrc')
+install=wget.install
+source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.xz)
+md5sums=('48c5384123156e7b7501d2f5b5c7189a')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ # Note : We do not build with --enable-nls, because there is a bug in wget causing
+ # international domain names to be not properly converted to punycode if
+ # the current locale is a UTF-8 one
+ # See : http://lists.gnu.org/archive/html/bug-wget/2011-02/msg00026.html
+
+ ./configure -with-ssl=openssl --prefix=/usr --sysconfdir=/etc
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ cat >> "$pkgdir/etc/wgetrc" <<EOF
+
+# default root certs location
+ca_certificate=/etc/ssl/certs/ca-certificates.crt
+EOF
+
+ # remove IRI option from wgetrc as it does not work (see above)
+ sed -i '118,120d' $pkgdir/etc/wgetrc
+
+}
diff --git a/testing/wget/wget.install b/testing/wget/wget.install
new file mode 100644
index 000000000..8eb6a2c3f
--- /dev/null
+++ b/testing/wget/wget.install
@@ -0,0 +1,20 @@
+infodir=usr/share/info
+filelist=(wget.info)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file $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 $infodir/dir 2> /dev/null
+ done
+}