summaryrefslogtreecommitdiff
path: root/libre
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2012-11-26 23:52:26 -0500
committerLuke Shumaker <LukeShu@sbcglobal.net>2012-11-26 23:52:26 -0500
commit360e56ec622617a2b121c7ec51e3381ad89f0eab (patch)
treee74250415c5e21080779befbb7898bd151039d63 /libre
parent34b4025bc7b0c6d8d47988decd140df38b1d98ac (diff)
parentb1c14cd929ca53e06945a5cda3965dc6fcd9d6b7 (diff)
Merge branch 'master' of ssh://parabolagnulinux.org:1863/srv/git/abslibre
Diffstat (limited to 'libre')
-rwxr-xr-xlibre/aspell-pl-libre/PKGBUILD33
-rwxr-xr-xlibre/blender-libre/PKGBUILD2
-rwxr-xr-xlibre/clementine-libre/PKGBUILD6
-rwxr-xr-xlibre/cups-libre/PKGBUILD168
-rwxr-xr-xlibre/cups-libre/cups68
-rwxr-xr-xlibre/cups-libre/cups-avahi-1-config.patch42
-rwxr-xr-xlibre/cups-libre/cups-avahi-2-backend.patch1118
-rwxr-xr-xlibre/cups-libre/cups-avahi-3-timeouts.patch381
-rwxr-xr-xlibre/cups-libre/cups-avahi-4-poll.patch529
-rwxr-xr-xlibre/cups-libre/cups-avahi-5-services.patch1272
-rwxr-xr-xlibre/cups-libre/cups-no-export-ssllibs.patch12
-rwxr-xr-xlibre/cups-libre/cups-no-gcrypt.patch38
-rwxr-xr-xlibre/cups-libre/cups-no-gzip-man.patch18
-rwxr-xr-xlibre/cups-libre/cups.install26
-rwxr-xr-xlibre/cups-libre/cups.logrotate8
-rwxr-xr-xlibre/cups-libre/cups.pam3
-rwxr-xr-xlibre/cups-libre/rePKGBUILD50
-rw-r--r--libre/enscript/PKGBUILD32
-rwxr-xr-xlibre/file-roller-libre/PKGBUILD6
-rwxr-xr-xlibre/gnustep-base-libre/PKGBUILD40
-rwxr-xr-xlibre/gnustep-make-libre/PKGBUILD32
-rw-r--r--libre/gst-plugins-bad-libre/PKGBUILD6
-rwxr-xr-xlibre/gstreamer0.10-bad-libre/PKGBUILD8
-rwxr-xr-xlibre/iceape-i18n/PKGBUILD50
-rwxr-xr-xlibre/iceape-libre/PKGBUILD6
-rwxr-xr-xlibre/icedove-i18n/PKGBUILD112
-rw-r--r--libre/icedove-libre/Icedove-branding.patch37
-rwxr-xr-xlibre/icedove-libre/PKGBUILD19
-rwxr-xr-xlibre/iceweasel-i18n/PKGBUILD182
-rwxr-xr-xlibre/iceweasel-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch4
-rwxr-xr-xlibre/iceweasel-libre/PKGBUILD8
-rwxr-xr-xlibre/kile-libre/PKGBUILD5
-rw-r--r--libre/linux-libre-kmod-alx/PKGBUILD4
-rw-r--r--libre/linux-libre-lts-kmod-alx/PKGBUILD4
-rwxr-xr-xlibre/linux-libre-lts/PKGBUILD8
-rwxr-xr-xlibre/linux-libre-lts/linux-libre-lts.install2
-rwxr-xr-xlibre/linux-libre/PKGBUILD13
-rw-r--r--libre/linux-libre/irq_cfg_pointer-3.6.6.patch16
-rwxr-xr-xlibre/linux-libre/linux-libre.install2
-rwxr-xr-xlibre/metalog/PKGBUILD43
-rwxr-xr-xlibre/metalog/metalog40
-rwxr-xr-xlibre/metalog/metalog.confd8
-rwxr-xr-xlibre/mplayer-libre/.directory3
-rwxr-xr-xlibre/mplayer-libre/PKGBUILD14
-rwxr-xr-xlibre/mplayer-vaapi-libre/PKGBUILD10
-rw-r--r--libre/pacman/0003-Ensure-pre_upgrade-scriptlet-gets-old-package-version.patch29
-rwxr-xr-xlibre/pacman/PKGBUILD9
-rwxr-xr-xlibre/sqlite3-libre/PKGBUILD63
-rwxr-xr-xlibre/sqlite3-libre/license.txt33
-rwxr-xr-xlibre/sqlite3/PKGBUILD68
-rwxr-xr-xlibre/sqlite3/license.txt33
-rwxr-xr-xlibre/thunderbird-libre/.directory2
-rwxr-xr-xlibre/thunderbird-libre/PKGBUILD82
-rwxr-xr-xlibre/thunderbird-libre/channel-prefs.js9
-rwxr-xr-xlibre/thunderbird-libre/clrf.patch265
-rwxr-xr-xlibre/thunderbird-libre/gcc47.patch39
-rwxr-xr-xlibre/thunderbird-libre/mozconfig40
-rwxr-xr-xlibre/thunderbird-libre/rePKGBUILD29
-rwxr-xr-xlibre/thunderbird-libre/searchplugins-libre.patch144
-rwxr-xr-xlibre/thunderbird-libre/thunderbird-install-dir.patch42
-rwxr-xr-xlibre/thunderbird-libre/thunderbird.desktop13
-rwxr-xr-xlibre/thunderbird-libre/thunderbird.install12
-rwxr-xr-xlibre/thunderbird-libre/vendor.js9
-rwxr-xr-xlibre/unar/PKGBUILD (renamed from libre/unarchiver/PKGBUILD)20
-rwxr-xr-xlibre/unar/libz.patch (renamed from libre/unarchiver/libz.patch)0
-rwxr-xr-xlibre/unar/native_obj_exceptions.patch (renamed from libre/unarchiver/native_obj_exceptions.patch)0
-rwxr-xr-xlibre/unrar-libre/PKGBUILD29
-rwxr-xr-xlibre/xulrunner-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch4
-rwxr-xr-xlibre/xulrunner-libre/PKGBUILD10
69 files changed, 382 insertions, 5090 deletions
diff --git a/libre/aspell-pl-libre/PKGBUILD b/libre/aspell-pl-libre/PKGBUILD
deleted file mode 100755
index 6da90e449..000000000
--- a/libre/aspell-pl-libre/PKGBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Parabola maintainer: Michał Masłowski <mtjm@mtjm.eu>
-# $Id: PKGBUILD 43278 2011-03-24 13:25:37Z andrea $
-# Maintainer: Jaroslaw Swierczynski <swiergot@aur.archlinux.org>
-# Contributor: Arkadiusz Laczynski <alaczynski@gmail.com>
-# Contributor (Parabola): Jorge Lopez <jorginho@adinet.com.uy>
-
-_pkgname=aspell-pl
-pkgname=aspell-pl-libre
-pkgver=20111117
-pkgrel=1
-pkgdesc="Polish dictionary for aspell"
-arch=('i686' 'x86_64')
-url="http://www.sjp.pl/slownik/en/"
-license=('GPL' 'LGPL' 'MPL')
-depends=('aspell')
-replaces=('aspell-pl')
-conflicts=('aspell-pl')
-provides=('aspell-pl')
-source=("ftp://ftp.archlinux.org/other/community/$_pkgname/sjp-aspell6-pl-6.0_$pkgver-0.tar.bz2")
-md5sums=('27aa9ca734d7049238399c279c5417fb')
-
-build() {
- cd "$srcdir/aspell6-pl-6.0_$pkgver-0"
-
- ./configure
- make
-}
-
-package() {
- cd "$srcdir/aspell6-pl-6.0_$pkgver-0"
-
- make DESTDIR="$pkgdir" install
-}
diff --git a/libre/blender-libre/PKGBUILD b/libre/blender-libre/PKGBUILD
index 396706459..2360945ee 100755
--- a/libre/blender-libre/PKGBUILD
+++ b/libre/blender-libre/PKGBUILD
@@ -17,7 +17,7 @@ else
fi
pkgdesc="A fully integrated 3D graphics creation suite, without nonfree cuda-toolkit and redcode image format support$spndesc"
pkgver=2.64a
-pkgrel=3
+pkgrel=4
pkgaev=5
arch=(
i686
diff --git a/libre/clementine-libre/PKGBUILD b/libre/clementine-libre/PKGBUILD
index c0a063e95..7c231fe27 100755
--- a/libre/clementine-libre/PKGBUILD
+++ b/libre/clementine-libre/PKGBUILD
@@ -7,8 +7,8 @@
_pkgname=clementine
pkgname=clementine-libre
-pkgver=1.1.0
-pkgrel=2
+pkgver=1.1.1
+pkgrel=1
pkgdesc="A music player and library organizer, without spotify support"
url="http://www.clementine-player.org/"
license=('GPL')
@@ -26,7 +26,7 @@ conflicts=('clementine')
provides=("clementine=$pkgver")
source=(http://clementine-player.googlecode.com/files/${_pkgname}-${pkgver}.tar.gz
remove-and-disable-spotify.patch)
-sha1sums=('af446aba5ca89edd1541871969b3b6738ffbd05f'
+sha1sums=('f8d3e9c8f54ac488323ab5a629c9accbe256378e'
'3980a00c02e406226f0d08ae9b7e581702c89838')
install=clementine.install
diff --git a/libre/cups-libre/PKGBUILD b/libre/cups-libre/PKGBUILD
deleted file mode 100755
index 105bea193..000000000
--- a/libre/cups-libre/PKGBUILD
+++ /dev/null
@@ -1,168 +0,0 @@
-# $Id: PKGBUILD 160055 2012-05-28 16:48:32Z andyrtr $
-# Maintainer: Andreas Radke <andyrtr@archlinux.org>
-
-pkgbase="cups"
-pkgname=('libcups' 'cups-libre')
-pkgver=1.5.3
-pkgrel=3
-arch=('i686' 'x86_64' 'mips64el')
-license=('GPL')
-url="http://www.cups.org/"
-makedepends=('libtiff>=4.0.0' 'libpng>=1.5.7' 'acl' 'openslp' 'pam' 'xdg-utils' 'krb5' 'gnutls>=2.8.3' 'cups-filters' 'bc'
- 'xinetd' 'gzip' 'autoconf' 'php' 'libusb' 'dbus-core' 'avahi' 'hicolor-icon-theme')
-source=(ftp://ftp.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2
- cups-avahi-1-config.patch
- cups-avahi-2-backend.patch
- cups-avahi-3-timeouts.patch
- cups-avahi-4-poll.patch
- cups-avahi-5-services.patch
- cups-no-export-ssllibs.patch
- cups-no-gcrypt.patch
- cups-no-gzip-man.patch
- cups cups.logrotate cups.pam)
-#options=('!emptydirs')
-md5sums=('e1ad15257aa6f162414ea3beae0c5df8'
- '12c8af5bcd3b8f84240280b3dfaf9e89'
- 'cdc1322c8014297ae349e2db78a03c5a'
- '1a5112f63958643f2888abc9418dbcac'
- 'c37d1bf1bb76acc3fe93362c80d91b7c'
- '5d302860559960042f3b47a91b97c5fe'
- '9b8467a1e51d360096b70e2c3c081e6c'
- '3733c23e77eb503bd94cc368e02830dc'
- 'c9159ba1233902ba6ddbbe6885a46b72'
- '9657daa21760bb0b5fa3d8b51d5e01a1'
- 'f861b18f4446c43918c8643dcbbd7f6d'
- '96f82c38f3f540b53f3e5144900acf17')
-
-build() {
- cd ${srcdir}/${pkgbase}-${pkgver}
- # http://www.cups.org/str.php?L3066
- # Avahi support in the dnssd backend. patches from upstream/FC RawHide
- patch -Np1 -i ${srcdir}/cups-avahi-1-config.patch
- patch -Np1 -i ${srcdir}/cups-avahi-2-backend.patch
- patch -Np1 -i ${srcdir}/cups-avahi-3-timeouts.patch
- patch -Np1 -i ${srcdir}/cups-avahi-4-poll.patch
- patch -Np1 -i ${srcdir}/cups-avahi-5-services.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"
- # don't zip man pages in make install, let makepkg do that / Fedora
- patch -Np1 -i ${srcdir}/cups-no-gzip-man.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 \
- --enable-threads \
- --enable-avahi\
- --with-php=/usr/bin/php-cgi \
- --with-pdftops=pdftops \
- --with-optim="$CFLAGS"
- 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>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi')
-backup=(etc/cups/client.conf)
-
- 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
-
- # install client.conf man page and config file
- install -dm755 ${pkgdir}/usr/share/man/man5
- #install -Dm644 ${srcdir}/${pkgbase}-${pkgver}/man/client.conf.5.gz ${pkgdir}/usr/share/man/man5/
- install -Dm644 ${srcdir}/${pkgbase}-${pkgver}/man/client.conf.5 ${pkgdir}/usr/share/man/man5/
- install -dm755 ${pkgdir}/etc/cups
- 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
- chgrp lp ${pkgdir}/etc/cups/client.conf
-}
-
-package_cups-libre() {
-pkgdesc="The CUPS Printing System - daemon package"
-provides=("${pkgbase}=${pkgver}")
-replaces=("${pkgbase}")
-conflicts=("${pkgbase}")
-install=cups.install
-backup=(etc/cups/cupsd.conf
- etc/cups/snmp.conf
- etc/cups/printers.conf
- etc/cups/classes.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}" 'cups-filters' 'bc' 'libusb' 'dbus-core' 'hicolor-icon-theme')
-optdepends=('php: for included phpcups.so module'
- '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
-
- # 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 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/subscriptions.conf
- chgrp lp ${pkgdir}/etc/cups/{printers.conf,classes.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
-
- # remove client.conf man page
- rm -f ${pkgdir}/usr/share/man/man5/client.conf.5
-
- # remove files now part of cups-filters
- rm -v ${pkgdir}/usr/lib/cups/backend/{parallel,serial}
- rm -v ${pkgdir}/usr/lib/cups/filter/{commandtoescpx,commandtopclx,imagetops,imagetoraster,pdftops,rastertoescpx,rastertopclx,texttops}
- rm -v ${pkgdir}/usr/share/cups/banners/{classified,confidential,secret,standard,topsecret,unclassified}
- rm -v ${pkgdir}/usr/share/cups/data/testprint
-}
diff --git a/libre/cups-libre/cups b/libre/cups-libre/cups
deleted file mode 100755
index 744c8e663..000000000
--- a/libre/cups-libre/cups
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/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/libre/cups-libre/cups-avahi-1-config.patch b/libre/cups-libre/cups-avahi-1-config.patch
deleted file mode 100755
index 516e01fa9..000000000
--- a/libre/cups-libre/cups-avahi-1-config.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-diff -up cups-1.5.2/config.h.in.avahi-1-config cups-1.5.2/config.h.in
---- cups-1.5.2/config.h.in.avahi-1-config 2011-06-16 21:12:16.000000000 +0100
-+++ cups-1.5.2/config.h.in 2012-03-14 15:04:51.365347165 +0000
-@@ -390,6 +390,13 @@
-
-
- /*
-+ * Do we have Avahi for DNS Service Discovery?
-+ */
-+
-+#undef HAVE_AVAHI
-+
-+
-+/*
- * Do we have <sys/ioctl.h>?
- */
-
-diff -up cups-1.5.2/config-scripts/cups-dnssd.m4.avahi-1-config cups-1.5.2/config-scripts/cups-dnssd.m4
---- cups-1.5.2/config-scripts/cups-dnssd.m4.avahi-1-config 2011-05-12 06:21:56.000000000 +0100
-+++ cups-1.5.2/config-scripts/cups-dnssd.m4 2012-03-14 15:04:51.365347165 +0000
-@@ -23,6 +23,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 --git a/libre/cups-libre/cups-avahi-2-backend.patch b/libre/cups-libre/cups-avahi-2-backend.patch
deleted file mode 100755
index 9fa367729..000000000
--- a/libre/cups-libre/cups-avahi-2-backend.patch
+++ /dev/null
@@ -1,1118 +0,0 @@
-diff -up cups-1.5.3/backend/dnssd.c.avahi-2-backend cups-1.5.3/backend/dnssd.c
---- cups-1.5.3/backend/dnssd.c.avahi-2-backend 2012-05-15 16:53:18.164774446 +0200
-+++ cups-1.5.3/backend/dnssd.c 2012-05-15 17:09:07.684155704 +0200
-@@ -15,14 +15,21 @@
- *
- * Contents:
- *
-+ * next_txt_record() - Get next TXT record from a cups_txt_records_t.
-+ * parse_txt_record_pair() - Read key/value pair in cups_txt_records_t.
- * main() - Browse for printers.
- * browse_callback() - Browse devices.
- * browse_local_callback() - Browse local devices.
- * compare_devices() - Compare two devices.
- * exec_backend() - Execute the backend that corresponds to the
- * resolved service name.
-+ * device_type() - Get DNS-SD type enumeration from string.
- * get_device() - Create or update a device.
- * query_callback() - Process query data.
-+ * avahi_client_callback() - Avahi client callback function.
-+ * avahi_query_callback() - Avahi query callback function.
-+ * avahi_browse_callback() - Avahi browse callback function.
-+ * find_device() - Find a device from its name and domain.
- * sigterm_handler() - Handle termination signals...
- * unquote() - Unquote a name string.
- */
-@@ -33,7 +40,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 */
-
-
- /*
-@@ -53,7 +71,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 */
-@@ -65,6 +88,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...
-@@ -78,6 +115,7 @@ static int job_canceled = 0;
- * Local functions...
- */
-
-+#ifdef HAVE_DNSSD
- static void browse_callback(DNSServiceRef sdRef,
- DNSServiceFlags flags,
- uint32_t interfaceIndex,
-@@ -95,13 +133,6 @@ static void browse_local_callback(DNSSe
- const char *replyDomain,
- void *context)
- __attribute__((nonnull(1,5,6,7,8)));
--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)
-- __attribute__((nonnull(1,2,3,4)));
- static void query_callback(DNSServiceRef sdRef,
- DNSServiceFlags flags,
- uint32_t interfaceIndex,
-@@ -111,10 +142,119 @@ static void query_callback(DNSServiceRe
- const void *rdata, uint32_t ttl,
- void *context)
- __attribute__((nonnull(1,5,9,11)));
-+#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)
-+ __attribute__((nonnull(1,2,3,4)));
- static void sigterm_handler(int sig);
- static void unquote(char *dst, const char *src, size_t dstsize)
- __attribute__((nonnull(1,2)));
-
-+#ifdef HAVE_AVAHI
-+static AvahiSimplePoll *simple_poll = NULL;
-+static int avahi_got_callback;
-+#endif /* HAVE_AVAHI */
-+
-+
-+/*
-+ * 'next_txt_record()' - Get next TXT record from a cups_txt_records_t.
-+ */
-+
-+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;
-+}
-+
-+
-+/*
-+ * 'parse_txt_record_pair()' - Read key/value pair in cups_txt_records_t.
-+ */
-+
-+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.
-@@ -125,6 +265,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 */
-@@ -138,12 +285,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 */
-@@ -203,6 +349,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 ("DEBUG: Unable to create avahi client");
-+ return (0);
-+ }
-+
-+ 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");
-@@ -263,6 +452,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...
-@@ -270,6 +460,9 @@ main(int argc, /* I - Number of comm
-
- while (!job_canceled)
- {
-+ int announce = 0;
-+
-+#ifdef HAVE_DNSSD
- FD_ZERO(&input);
- FD_SET(fd, &input);
-
-@@ -289,11 +482,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 */
-@@ -307,6 +524,7 @@ main(int argc, /* I - Number of comm
- if (device->sent)
- sent ++;
-
-+#ifdef HAVE_DNSSD
- if (device->ref)
- count ++;
-
-@@ -338,14 +556,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;
-@@ -406,6 +633,7 @@ main(int argc, /* I - Number of comm
- }
-
-
-+#ifdef HAVE_DNSSD
- /*
- * 'browse_callback()' - Browse devices.
- */
-@@ -494,6 +722,7 @@ browse_local_callback(
- device->fullName);
- device->sent = 1;
- }
-+#endif /* HAVE_DNSSD */
-
-
- /*
-@@ -574,6 +803,41 @@ exec_backend(char **argv) /* I - Comman
-
-
- /*
-+ * 'device_type()' - Get DNS-SD type enumeration from string.
-+ */
-+
-+static int
-+device_type (const char *regtype)
-+{
-+#ifdef HAVE_AVAHI
-+ if (!strcmp(regtype, "_ipp._tcp"))
-+ return (CUPS_DEVICE_IPP);
-+ else if (!strcmp(regtype, "_ipps._tcp") ||
-+ !strcmp(regtype, "_ipp-tls._tcp"))
-+ return (CUPS_DEVICE_IPPS);
-+ 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."))
-+ return (CUPS_DEVICE_IPP);
-+ else if (!strcmp(regtype, "_ipps._tcp.") ||
-+ !strcmp(regtype, "_ipp-tls._tcp."))
-+ return (CUPS_DEVICE_IPPS);
-+ 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.
- */
-
-@@ -594,20 +858,7 @@ get_device(cups_array_t *devices, /* I -
- */
-
- key.name = (char *)serviceName;
--
-- if (!strcmp(regtype, "_ipp._tcp."))
-- key.type = CUPS_DEVICE_IPP;
-- else if (!strcmp(regtype, "_ipps._tcp.") ||
-- !strcmp(regtype, "_ipp-tls._tcp."))
-- key.type = CUPS_DEVICE_IPPS;
-- 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;
-@@ -627,8 +878,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);
- }
-@@ -648,6 +905,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);
-
-@@ -655,13 +915,20 @@ 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);
- }
-
-
-+#ifdef HAVE_DNSSD
- /*
- * 'query_callback()' - Process query data.
- */
-@@ -685,7 +952,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\", "
-@@ -719,94 +986,233 @@ query_callback(
- if ((ptr = strstr(name, "._")) != NULL)
- *ptr = '\0';
-
-- if (strstr(fullName, "_ipp._tcp."))
-- dkey.type = CUPS_DEVICE_IPP;
-- else if (strstr(fullName, "_ipps._tcp.") ||
-- strstr(fullName, "_ipp-tls._tcp."))
-- dkey.type = CUPS_DEVICE_IPPS;
-- 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
-+/*
-+ * 'avahi_client_callback()' - Avahi client callback function.
-+ */
-+
-+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);
-+ }
-+}
-+
-+
-+/*
-+ * 'avahi_query_callback()' - Avahi query callback function.
-+ */
-+
-+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);
-
-- for (device = cupsArrayFind(devices, &dkey);
-+ avahi_service_resolver_free (resolver);
-+}
-+
-+
-+/*
-+ * 'avahi_browse_callback()' - Avahi browse callback function.
-+ */
-+
-+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;
-+
-+ case AVAHI_BROWSER_REMOVE:
-+ case AVAHI_BROWSER_ALL_FOR_NOW:
-+ case AVAHI_BROWSER_CACHE_EXHAUSTED:
-+ break;
-+ }
-+}
-+#endif /* HAVE_AVAHI */
-+
-+
-+/*
-+ * 'find_device()' - Find a device from its name and domain.
-+ */
-+
-+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 (_cups_strcasecmp(device->name, dkey.name) ||
-- _cups_strcasecmp(device->domain, dkey.domain))
-+ if (_cups_strcasecmp(device->name, dkey->name) ||
-+ _cups_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;
--
-- for (ptr = key; data < datanext && *data != '='; data ++)
-- *ptr++ = *data;
-- *ptr = '\0';
-+ char *key;
-+ char *value;
-
-- if (data < datanext && *data == '=')
-- {
-- data ++;
--
-- if (data < datanext)
-- memcpy(value, data, datanext - data);
-- value[datanext - data] = '\0';
-+ if (parse_txt_record_pair (txt))
-+ goto next;
-
-- fprintf(stderr, "DEBUG2: query_callback: \"%s=%s\".\n",
-- key, value);
-- }
-- else
-- {
-- fprintf(stderr, "DEBUG2: query_callback: \"%s\" with no value.\n",
-- key);
-- continue;
-- }
--
-- if (!_cups_strncasecmp(key, "usb_", 4))
-+ key = txt->key;
-+ value = txt->value;
-+ if (!strncasecmp(key, "usb_", 4))
- {
- /*
- * Add USB device ID information...
-@@ -861,6 +1267,10 @@ query_callback(
- if (device->type == CUPS_DEVICE_PRINTER)
- device->sent = 1;
- }
-+
-+ next:
-+ if (next_txt_record (txt) == NULL)
-+ break;
- }
-
- if (device->device_id)
-@@ -917,11 +1327,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.5.3/cups/http-support.c.avahi-2-backend cups-1.5.3/cups/http-support.c
---- cups-1.5.3/cups/http-support.c.avahi-2-backend 2012-02-15 02:06:12.000000000 +0100
-+++ cups-1.5.3/cups/http-support.c 2012-05-15 17:04:51.045944634 +0200
-@@ -43,6 +43,10 @@
- * http_copy_decode() - Copy and decode a URI.
- * http_copy_encode() - Copy and encode a URI.
- * http_resolve_cb() - Build a device URI for the given service name.
-+ * avahi_resolve_uri_client_cb()
-+ * - Avahi client callback for resolving URI.
-+ * avahi_resolve_uri_resolver_cb()
-+ * - Avahi resolver callback for resolving URI.
- */
-
- /*
-@@ -60,6 +64,11 @@
- # include <sys/select.h>
- # endif /* WIN32 */
- #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 */
-
-
- /*
-@@ -127,6 +136,24 @@ static void DNSSD_API http_resolve_cb(DN
- 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
-@@ -1434,6 +1461,9 @@ _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
- # ifdef WIN32
- # pragma comment(lib, "dnssd.lib")
-@@ -1452,6 +1482,17 @@ _httpResolveURI(
- fd_set input_set; /* Input set for select() */
- struct timeval stimeout; /* Timeout value for select() */
- #endif /* HAVE_POLL */
-+#else /* HAVE_AVAHI */
-+ AvahiSimplePoll *simple_poll;
-+ AvahiClient *client;
-+ int error;
-+ struct
-+ {
-+ AvahiSimplePoll *poll;
-+ _http_uribuf_t uribuf;
-+ } user_data;
-+#endif /* HAVE_DNSSD */
-+
-
- if (options & _HTTP_RESOLVE_STDERR)
- fprintf(stderr, "DEBUG: Resolving \"%s\"...\n", hostname);
-@@ -1488,9 +1529,16 @@ _httpResolveURI(
- if (domain)
- *domain++ = '\0';
-
-+#ifdef HAVE_DNSSD
- uribuf.buffer = resolved_uri;
- uribuf.bufsize = resolved_size;
- uribuf.options = options;
-+#else
-+ user_data.uribuf.buffer = resolved_uri;
-+ user_data.uribuf.bufsize = resolved_size;
-+ user_data.uribuf.options = options;
-+#endif
-+
- resolved_uri[0] = '\0';
-
- DEBUG_printf(("6_httpResolveURI: Resolving hostname=\"%s\", regtype=\"%s\", "
-@@ -1504,6 +1552,7 @@ _httpResolveURI(
-
- uri = NULL;
-
-+#ifdef HAVE_DNSSD
- if (DNSServiceCreateConnection(&ref) == kDNSServiceErr_NoError)
- {
- localref = ref;
-@@ -1611,6 +1660,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 (options & _HTTP_RESOLVE_STDERR)
- {
-@@ -1622,13 +1701,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 ((options & _HTTP_RESOLVE_STDERR) && !uri)
- _cupsLangPrintFilter(stderr, "ERROR", _("Unable to find printer."));
-@@ -1916,6 +1995,115 @@ http_resolve_cb(
- }
- #endif /* HAVE_DNSSD */
-
-+#ifdef HAVE_AVAHI
-+/*
-+ * 'avahi_resolve_uri_client_cb()' - Avahi client callback for resolving URI.
-+ */
-+
-+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);
-+}
-+
-+
-+/*
-+ * 'avahi_resolve_uri_resolver_cb()' - Avahi resolver callback for resolving
-+ * URI.
-+ */
-+
-+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 10284 2012-02-15 01:06:12Z mike $".
diff --git a/libre/cups-libre/cups-avahi-3-timeouts.patch b/libre/cups-libre/cups-avahi-3-timeouts.patch
deleted file mode 100755
index daf852a0f..000000000
--- a/libre/cups-libre/cups-avahi-3-timeouts.patch
+++ /dev/null
@@ -1,381 +0,0 @@
-diff -up cups-1.5.2/scheduler/cupsd.h.avahi-3-timeouts cups-1.5.2/scheduler/cupsd.h
---- cups-1.5.2/scheduler/cupsd.h.avahi-3-timeouts 2011-05-11 23:17:34.000000000 +0100
-+++ cups-1.5.2/scheduler/cupsd.h 2012-03-14 15:06:36.509476983 +0000
-@@ -140,6 +140,15 @@ extern const char *cups_hstrerror(int);
-
- typedef void (*cupsd_selfunc_t)(void *data);
-
-+#ifdef HAVE_AVAHI
-+/*
-+ * Timeout callback function type...
-+ */
-+
-+typedef struct _cupsd_timeout_s cupsd_timeout_t;
-+typedef void (*cupsd_timeoutfunc_t)(cupsd_timeout_t *timeout, void *data);
-+#endif /* HAVE_AVAHI */
-+
-
- /*
- * Globals...
-@@ -173,6 +182,11 @@ VAR int Launchd VALUE(0);
- /* Running from launchd */
- #endif /* HAVE_LAUNCH_H */
-
-+#ifdef HAVE_AVAHI
-+VAR cups_array_t *Timeouts; /* Timed callbacks for main loop */
-+#endif /* HAVE_AVAHI */
-+
-+
-
- /*
- * Prototypes...
-@@ -242,6 +256,20 @@ extern void cupsdStopSelect(void);
- extern void cupsdStartServer(void);
- extern void cupsdStopServer(void);
-
-+#ifdef HAVE_AVAHI
-+extern void cupsdInitTimeouts(void);
-+extern cupsd_timeout_t *cupsdAddTimeout (const struct timeval *tv,
-+ cupsd_timeoutfunc_t cb,
-+ void *data);
-+extern cupsd_timeout_t *cupsdNextTimeout (long *delay);
-+extern void cupsdRunTimeout (cupsd_timeout_t *timeout);
-+extern void cupsdUpdateTimeout (cupsd_timeout_t *timeout,
-+ const struct timeval *tv);
-+extern void cupsdRemoveTimeout (cupsd_timeout_t *timeout);
-+#endif /* HAVE_AVAHI */
-+
-+extern int cupsdRemoveFile(const char *filename);
-+
-
- /*
- * End of "$Id: cupsd.h 9766 2011-05-11 22:17:34Z mike $".
-diff -up cups-1.5.2/scheduler/main.c.avahi-3-timeouts cups-1.5.2/scheduler/main.c
---- cups-1.5.2/scheduler/main.c.avahi-3-timeouts 2012-03-14 15:04:17.655305548 +0000
-+++ cups-1.5.2/scheduler/main.c 2012-03-14 15:06:36.511476986 +0000
-@@ -146,6 +146,10 @@ main(int argc, /* I - Number of comm
- int launchd_idle_exit;
- /* Idle exit on select timeout? */
- #endif /* HAVE_LAUNCHD */
-+#ifdef HAVE_AVAHI
-+ cupsd_timeout_t *tmo; /* Next scheduled timed callback */
-+ long tmo_delay; /* Time before it must be called */
-+#endif /* HAVE_AVAHI */
-
-
- #ifdef HAVE_GETEUID
-@@ -535,6 +539,14 @@ main(int argc, /* I - Number of comm
-
- httpInitialize();
-
-+#ifdef HAVE_AVAHI
-+ /*
-+ * Initialize timed callback structures.
-+ */
-+
-+ cupsdInitTimeouts();
-+#endif /* HAVE_AVAHI */
-+
- cupsdStartServer();
-
- /*
-@@ -874,6 +886,16 @@ main(int argc, /* I - Number of comm
- }
- #endif /* __APPLE__ */
-
-+#ifdef HAVE_AVAHI
-+ /*
-+ * If a timed callback is due, run it.
-+ */
-+
-+ tmo = cupsdNextTimeout (&tmo_delay);
-+ if (tmo && tmo_delay == 0)
-+ cupsdRunTimeout (tmo);
-+#endif /* HAVE_AVAHI */
-+
- #ifndef __APPLE__
- /*
- * Update the network interfaces once a minute...
-@@ -1787,6 +1809,10 @@ select_timeout(int fds) /* I - Number
- cupsd_job_t *job; /* Job information */
- cupsd_subscription_t *sub; /* Subscription information */
- const char *why; /* Debugging aid */
-+#ifdef HAVE_AVAHI
-+ cupsd_timeout_t *tmo; /* Timed callback */
-+ long tmo_delay; /* Seconds before calling it */
-+#endif /* HAVE_AVAHI */
-
-
- /*
-@@ -1829,6 +1855,19 @@ select_timeout(int fds) /* I - Number
- }
- #endif /* __APPLE__ */
-
-+#ifdef HAVE_AVAHI
-+ /*
-+ * See if there are any scheduled timed callbacks to run.
-+ */
-+
-+ if ((tmo = cupsdNextTimeout(&tmo_delay)) != NULL &&
-+ (now + tmo_delay) < timeout)
-+ {
-+ timeout = tmo_delay;
-+ why = "run a timed callback";
-+ }
-+#endif /* HAVE_AVAHI */
-+
- /*
- * Check whether we are accepting new connections...
- */
-diff -up cups-1.5.2/scheduler/Makefile.avahi-3-timeouts cups-1.5.2/scheduler/Makefile
---- cups-1.5.2/scheduler/Makefile.avahi-3-timeouts 2012-03-14 15:04:17.685305586 +0000
-+++ cups-1.5.2/scheduler/Makefile 2012-03-14 15:06:36.508476980 +0000
-@@ -39,7 +39,8 @@ CUPSDOBJS = \
- server.o \
- statbuf.o \
- subscriptions.o \
-- sysman.o
-+ sysman.o \
-+ timeout.o
- LIBOBJS = \
- filter.o \
- mime.o \
-diff -up cups-1.5.2/scheduler/timeout.c.avahi-3-timeouts cups-1.5.2/scheduler/timeout.c
---- cups-1.5.2/scheduler/timeout.c.avahi-3-timeouts 2012-03-14 15:06:36.552477037 +0000
-+++ cups-1.5.2/scheduler/timeout.c 2012-03-14 15:06:36.552477037 +0000
-@@ -0,0 +1,235 @@
-+/*
-+ * "$Id$"
-+ *
-+ * Timeout functions for the Common UNIX Printing System (CUPS).
-+ *
-+ * Copyright (C) 2010, 2011 Red Hat, Inc.
-+ * Authors:
-+ * Tim Waugh <twaugh@redhat.com>
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ *
-+ * Redistributions of source code must retain the above copyright
-+ * notice, this list of conditions and the following disclaimer.
-+ *
-+ * Redistributions in binary form must reproduce the above copyright
-+ * notice, this list of conditions and the following disclaimer in the
-+ * documentation and/or other materials provided with the distribution.
-+ *
-+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-+ * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
-+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
-+ * OF THE POSSIBILITY OF SUCH DAMAGE.
-+ *
-+ * Contents:
-+ *
-+ * cupsdInitTimeouts() - Initialise timeout structure.
-+ * cupsdAddTimeout() - Add a timed callback.
-+ * cupsdNextTimeout() - Find the next enabled timed callback.
-+ * cupsdUpdateTimeout() - Adjust the time of a timed callback or disable it.
-+ * cupsdRemoveTimeout() - Discard a timed callback.
-+ * compare_timeouts() - Compare timed callbacks for array sorting.
-+ */
-+
-+#include <config.h>
-+
-+#ifdef HAVE_AVAHI /* Applies to entire file... */
-+
-+/*
-+ * Include necessary headers...
-+ */
-+
-+#include "cupsd.h"
-+
-+#if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO)
-+# include <malloc.h>
-+#endif /* HAVE_MALLOC_H && HAVE_MALLINFO */
-+
-+#ifdef HAVE_AVAHI
-+# include <avahi-common/timeval.h>
-+#endif /* HAVE_AVAHI */
-+
-+
-+struct _cupsd_timeout_s
-+{
-+ struct timeval when;
-+ int enabled;
-+ cupsd_timeoutfunc_t callback;
-+ void *data;
-+};
-+
-+/*
-+ * Local functions...
-+ */
-+
-+/*
-+ * 'compare_timeouts()' - Compare timed callbacks for array sorting.
-+ */
-+
-+static int
-+compare_addrs (void *p0, void *p1)
-+{
-+ if (p0 == p1)
-+ return (0);
-+ if (p0 < p1)
-+ return (-1);
-+ return (1);
-+}
-+
-+static int
-+compare_timeouts (cupsd_timeout_t *p0, cupsd_timeout_t *p1)
-+{
-+ int addrsdiff = compare_addrs (p0, p1);
-+ int tvdiff;
-+
-+ if (addrsdiff == 0)
-+ return (0);
-+
-+ if (!p0->enabled || !p1->enabled)
-+ {
-+ if (!p0->enabled && !p1->enabled)
-+ return (addrsdiff);
-+
-+ return (p0->enabled ? -1 : 1);
-+ }
-+
-+ tvdiff = avahi_timeval_compare (&p0->when, &p1->when);
-+ if (tvdiff != 0)
-+ return (tvdiff);
-+
-+ return (addrsdiff);
-+}
-+
-+
-+/*
-+ * 'cupsdInitTimeouts()' - Initialise timeout structures.
-+ */
-+
-+void
-+cupsdInitTimeouts(void)
-+{
-+ Timeouts = cupsArrayNew ((cups_array_func_t)compare_timeouts, NULL);
-+}
-+
-+
-+/*
-+ * 'cupsdAddTimeout()' - Add a timed callback.
-+ */
-+
-+cupsd_timeout_t * /* O - Timeout handle */
-+cupsdAddTimeout(const struct timeval *tv, /* I - Absolute time */
-+ cupsd_timeoutfunc_t cb, /* I - Callback function */
-+ void *data) /* I - User data */
-+{
-+ cupsd_timeout_t *timeout;
-+
-+ timeout = malloc (sizeof(cupsd_timeout_t));
-+ if (timeout != NULL)
-+ {
-+ timeout->enabled = (tv != NULL);
-+ if (tv)
-+ {
-+ timeout->when.tv_sec = tv->tv_sec;
-+ timeout->when.tv_usec = tv->tv_usec;
-+ }
-+
-+ timeout->callback = cb;
-+ timeout->data = data;
-+ cupsArrayAdd (Timeouts, timeout);
-+ }
-+
-+ return timeout;
-+}
-+
-+
-+/*
-+ * 'cupsdNextTimeout()' - Find the next enabled timed callback.
-+ */
-+
-+cupsd_timeout_t * /* O - Next enabled timeout or NULL */
-+cupsdNextTimeout(long *delay) /* O - Seconds before scheduled */
-+{
-+ cupsd_timeout_t *first = cupsArrayFirst (Timeouts);
-+ struct timeval curtime;
-+
-+ if (first && !first->enabled)
-+ first = NULL;
-+
-+ if (first && delay)
-+ {
-+ gettimeofday (&curtime, NULL);
-+ if (avahi_timeval_compare (&curtime, &first->when) > 0)
-+ {
-+ *delay = 0;
-+ } else {
-+ *delay = 1 + first->when.tv_sec - curtime.tv_sec;
-+ if (first->when.tv_usec < curtime.tv_usec)
-+ (*delay)--;
-+ }
-+ }
-+
-+ return (first);
-+}
-+
-+
-+/*
-+ * 'cupsdRunTimeout()' - Run a timed callback.
-+ */
-+
-+void
-+cupsdRunTimeout(cupsd_timeout_t *timeout) /* I - Timeout */
-+{
-+ if (!timeout)
-+ return;
-+ timeout->enabled = 0;
-+ if (!timeout->callback)
-+ return;
-+ timeout->callback (timeout, timeout->data);
-+}
-+
-+/*
-+ * 'cupsdUpdateTimeout()' - Adjust the time of a timed callback or disable it.
-+ */
-+
-+void
-+cupsdUpdateTimeout(cupsd_timeout_t *timeout, /* I - Timeout */
-+ const struct timeval *tv) /* I - Absolute time or NULL */
-+{
-+ cupsArrayRemove (Timeouts, timeout);
-+ timeout->enabled = (tv != NULL);
-+ if (tv)
-+ {
-+ timeout->when.tv_sec = tv->tv_sec;
-+ timeout->when.tv_usec = tv->tv_usec;
-+ }
-+ cupsArrayAdd (Timeouts, timeout);
-+}
-+
-+
-+/*
-+ * 'cupsdRemoveTimeout()' - Discard a timed callback.
-+ */
-+
-+void
-+cupsdRemoveTimeout(cupsd_timeout_t *timeout) /* I - Timeout */
-+{
-+ cupsArrayRemove (Timeouts, timeout);
-+ free (timeout);
-+}
-+
-+
-+#endif /* HAVE_AVAHI ... from top of file */
-+
-+/*
-+ * End of "$Id$".
-+ */
diff --git a/libre/cups-libre/cups-avahi-4-poll.patch b/libre/cups-libre/cups-avahi-4-poll.patch
deleted file mode 100755
index d7fa5fd56..000000000
--- a/libre/cups-libre/cups-avahi-4-poll.patch
+++ /dev/null
@@ -1,529 +0,0 @@
-diff -up cups-1.5.2/scheduler/avahi.c.avahi-4-poll cups-1.5.2/scheduler/avahi.c
---- cups-1.5.2/scheduler/avahi.c.avahi-4-poll 2012-03-14 15:07:29.477542381 +0000
-+++ cups-1.5.2/scheduler/avahi.c 2012-03-14 15:07:29.477542381 +0000
-@@ -0,0 +1,441 @@
-+/*
-+ * "$Id$"
-+ *
-+ * Avahi poll implementation for the CUPS scheduler.
-+ *
-+ * Copyright (C) 2010, 2011 Red Hat, Inc.
-+ * Authors:
-+ * Tim Waugh <twaugh@redhat.com>
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ *
-+ * Redistributions of source code must retain the above copyright
-+ * notice, this list of conditions and the following disclaimer.
-+ *
-+ * Redistributions in binary form must reproduce the above copyright
-+ * notice, this list of conditions and the following disclaimer in the
-+ * documentation and/or other materials provided with the distribution.
-+ *
-+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-+ * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
-+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
-+ * OF THE POSSIBILITY OF SUCH DAMAGE.
-+ *
-+ * Contents:
-+ *
-+ * watch_read_cb - Read callback for file descriptor
-+ * watch_write_cb - Write callback for file descriptor
-+ * watched_fd_add_select() - Call cupsdAddSelect() as needed
-+ * watch_new() - Create a new file descriptor watch
-+ * watch_free() - Free a file descriptor watch
-+ * watch_update() - Update watched events for a file descriptor
-+ * watch_get_events() - Get events that happened for a file descriptor
-+ * timeout_cb() - Run a timed Avahi callback
-+ * timeout_new() - Set a wakeup time
-+ * timeout_update() - Update the expiration time for a timeout
-+ * timeout_free() - Free a timeout
-+ * compare_watched_fds() - Compare watched file descriptors for array sorting
-+ * avahi_cups_poll_new() - Create a new Avahi main loop object for CUPS
-+ * avahi_cups_poll_free() - Free an Avahi main loop object for CUPS
-+ * avahi_cups_poll_get() - Get the abstract poll API structure
-+ */
-+
-+#include <config.h>
-+
-+#ifdef HAVE_AVAHI /* Applies to entire file... */
-+
-+/*
-+ * Include necessary headers...
-+ */
-+
-+#include "cupsd.h"
-+
-+#if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO)
-+# include <malloc.h>
-+#endif /* HAVE_MALLOC_H && HAVE_MALLINFO */
-+
-+#ifdef HAVE_AVAHI
-+# include <avahi-common/timeval.h>
-+#endif /* HAVE_AVAHI */
-+
-+
-+typedef struct
-+{
-+ AvahiCupsPoll *cups_poll;
-+
-+ int fd;
-+ AvahiWatchEvent occurred;
-+ cups_array_t *watches;
-+} cupsd_watched_fd_t;
-+
-+struct AvahiWatch
-+{
-+ cupsd_watched_fd_t *watched_fd;
-+
-+ AvahiWatchEvent events;
-+ AvahiWatchCallback callback;
-+ void *userdata;
-+};
-+
-+struct AvahiTimeout
-+{
-+ AvahiCupsPoll *cups_poll;
-+ AvahiTimeoutCallback callback;
-+ void *userdata;
-+ cupsd_timeout_t *cupsd_timeout;
-+};
-+
-+/*
-+ * Local functions...
-+ */
-+
-+static AvahiWatch * watch_new(const AvahiPoll *api,
-+ int fd,
-+ AvahiWatchEvent events,
-+ AvahiWatchCallback callback,
-+ void *userdata);
-+static void watch_free(AvahiWatch *watch);
-+static void watch_update(AvahiWatch *watch,
-+ AvahiWatchEvent events);
-+static AvahiWatchEvent watch_get_events(AvahiWatch *watch);
-+
-+
-+/*
-+ * 'watch_read_cb' - Read callback for file descriptor
-+ */
-+
-+static void
-+watch_read_cb (void *userdata)
-+{
-+ AvahiWatch *watch;
-+ cupsd_watched_fd_t *watched_fd = userdata;
-+ watched_fd->occurred |= AVAHI_WATCH_IN;
-+ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches);
-+ watch;
-+ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches))
-+ {
-+ if (watch->events & watched_fd->occurred)
-+ {
-+ (watch->callback) (watch, watched_fd->fd,
-+ AVAHI_WATCH_IN, watch->userdata);
-+ watched_fd->occurred &= ~AVAHI_WATCH_IN;
-+ break;
-+ }
-+ }
-+}
-+
-+
-+/*
-+ * 'watch_write_cb' - Write callback for file descriptor
-+ */
-+
-+static void
-+watch_write_cb (void *userdata)
-+{
-+ AvahiWatch *watch;
-+ cupsd_watched_fd_t *watched_fd = userdata;
-+ watched_fd->occurred |= AVAHI_WATCH_OUT;
-+ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches);
-+ watch;
-+ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches))
-+ {
-+ if (watch->events & watched_fd->occurred)
-+ {
-+ (watch->callback) (watch, watched_fd->fd,
-+ AVAHI_WATCH_OUT, watch->userdata);
-+ watched_fd->occurred &= ~AVAHI_WATCH_OUT;
-+ break;
-+ }
-+ }
-+}
-+
-+
-+/*
-+ * 'watched_fd_add_select' - Call cupsdAddSelect() as needed
-+ */
-+
-+static int /* O - Watches? */
-+watched_fd_add_select (cupsd_watched_fd_t *watched_fd)
-+{
-+ AvahiWatch *watch;
-+ cupsd_selfunc_t read_cb = NULL, write_cb = NULL;
-+ int any_watches = 0;
-+
-+ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches);
-+ watch;
-+ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches))
-+ {
-+ any_watches = 1;
-+ if (watch->events & (AVAHI_WATCH_IN |
-+ AVAHI_WATCH_ERR |
-+ AVAHI_WATCH_HUP))
-+ {
-+ read_cb = (cupsd_selfunc_t)watch_read_cb;
-+ if (write_cb != NULL)
-+ break;
-+ }
-+
-+ if (watch->events & AVAHI_WATCH_OUT)
-+ {
-+ write_cb = (cupsd_selfunc_t)watch_write_cb;
-+ if (read_cb != NULL)
-+ break;
-+ }
-+ }
-+
-+ if (read_cb || write_cb)
-+ cupsdAddSelect (watched_fd->fd, read_cb, write_cb, watched_fd);
-+ else
-+ cupsdRemoveSelect (watched_fd->fd);
-+
-+ return (any_watches);
-+}
-+
-+/*
-+ * 'watch_new' - Create a new file descriptor watch
-+ */
-+
-+static AvahiWatch *
-+watch_new (const AvahiPoll *api,
-+ int fd,
-+ AvahiWatchEvent events,
-+ AvahiWatchCallback callback,
-+ void *userdata)
-+{
-+ cupsd_watched_fd_t key, *watched_fd;
-+ AvahiCupsPoll *cups_poll = api->userdata;
-+ AvahiWatch *watch = malloc(sizeof(AvahiWatch));
-+ if (watch == NULL)
-+ return (NULL);
-+
-+ watch->events = events;
-+ watch->callback = callback;
-+ watch->userdata = userdata;
-+
-+ key.fd = fd;
-+ watched_fd = cupsArrayFind (cups_poll->watched_fds, &key);
-+ if (watched_fd == NULL)
-+ {
-+ watched_fd = malloc(sizeof(cupsd_watched_fd_t));
-+ if (watched_fd == NULL)
-+ {
-+ free (watch);
-+ return (NULL);
-+ }
-+
-+ watched_fd->fd = fd;
-+ watched_fd->occurred = 0;
-+ watched_fd->cups_poll = cups_poll;
-+ watched_fd->watches = cupsArrayNew (NULL, NULL);
-+ cupsArrayAdd (cups_poll->watched_fds, watched_fd);
-+ }
-+
-+ watch->watched_fd = watched_fd;
-+ cupsArrayAdd(watched_fd->watches, watch);
-+ watched_fd_add_select (watched_fd);
-+ return (watch);
-+}
-+
-+
-+/*
-+ * 'watch_free' - Free a file descriptor watch
-+ */
-+
-+static void
-+watch_free (AvahiWatch *watch)
-+{
-+ cupsd_watched_fd_t *watched_fd = watch->watched_fd;
-+ AvahiCupsPoll *cups_poll = watched_fd->cups_poll;
-+
-+ cupsArrayRemove (watched_fd->watches, watch);
-+ free (watch);
-+
-+ if (!watched_fd_add_select (watched_fd))
-+ {
-+ /* No more watches */
-+ cupsArrayRemove (cups_poll->watched_fds, watched_fd);
-+ free (watched_fd);
-+ }
-+}
-+
-+
-+/*
-+ * 'watch_update' - Update watched events for a file descriptor
-+ */
-+
-+static void
-+watch_update (AvahiWatch *watch,
-+ AvahiWatchEvent events)
-+{
-+ watch->events = events;
-+ watched_fd_add_select (watch->watched_fd);
-+}
-+
-+
-+/*
-+ * 'watch_get_events' - Get events that happened for a file descriptor
-+ */
-+
-+static AvahiWatchEvent
-+watch_get_events (AvahiWatch *watch)
-+{
-+ return (watch->watched_fd->occurred);
-+}
-+
-+
-+/*
-+ * 'timeout_cb()' - Run a timed Avahi callback
-+ */
-+
-+static void
-+timeout_cb (cupsd_timeout_t *cupsd_timeout, void *userdata)
-+{
-+ AvahiTimeout *timeout = userdata;
-+ (timeout->callback) (timeout, timeout->userdata);
-+}
-+
-+
-+/*
-+ * 'timeout_new' - Set a wakeup time
-+ */
-+
-+static AvahiTimeout *
-+timeout_new (const AvahiPoll *api,
-+ const struct timeval *tv,
-+ AvahiTimeoutCallback callback,
-+ void *userdata)
-+{
-+ AvahiTimeout *timeout;
-+ AvahiCupsPoll *cups_poll = api->userdata;
-+
-+ timeout = malloc(sizeof(AvahiTimeout));
-+ if (timeout == NULL)
-+ return (NULL);
-+
-+ timeout->cups_poll = cups_poll;
-+ timeout->callback = callback;
-+ timeout->userdata = userdata;
-+ timeout->cupsd_timeout = cupsdAddTimeout (tv,
-+ (cupsd_timeoutfunc_t)timeout_cb,
-+ timeout);
-+ cupsArrayAdd (cups_poll->timeouts, timeout);
-+ return (timeout);
-+}
-+
-+
-+/*
-+ * 'timeout_update' - Update the expiration time for a timeout
-+ */
-+
-+static void
-+timeout_update (AvahiTimeout *timeout,
-+ const struct timeval *tv)
-+{
-+ cupsdUpdateTimeout (timeout->cupsd_timeout, tv);
-+}
-+
-+
-+/*
-+ * ' timeout_free' - Free a timeout
-+ */
-+
-+static void
-+timeout_free (AvahiTimeout *timeout)
-+{
-+ cupsArrayRemove (timeout->cups_poll->timeouts, timeout);
-+ cupsdRemoveTimeout (timeout->cupsd_timeout);
-+ free (timeout);
-+}
-+
-+
-+/*
-+ * 'compare_watched_fds' - Compare watched file descriptors for array sorting
-+ */
-+static int
-+compare_watched_fds(cupsd_watched_fd_t *p0,
-+ cupsd_watched_fd_t *p1)
-+{
-+ /*
-+ * Compare by fd (no two elements have the same fd)
-+ */
-+
-+ if (p0->fd == p1->fd)
-+ return 0;
-+
-+ return (p0->fd < p1->fd ? -1 : 1);
-+}
-+
-+
-+/*
-+ * 'avahi_cups_poll_new' - Create a new Avahi main loop object for CUPS
-+ */
-+
-+AvahiCupsPoll *
-+avahi_cups_poll_new (void)
-+{
-+ AvahiCupsPoll *cups_poll = malloc(sizeof(AvahiCupsPoll));
-+ if (cups_poll == NULL)
-+ return (NULL);
-+
-+ cups_poll->watched_fds = cupsArrayNew ((cups_array_func_t)compare_watched_fds,
-+ NULL);
-+ cups_poll->timeouts = cupsArrayNew (NULL, NULL);
-+
-+ cups_poll->api.userdata = cups_poll;
-+ cups_poll->api.watch_new = watch_new;
-+ cups_poll->api.watch_free = watch_free;
-+ cups_poll->api.watch_update = watch_update;
-+ cups_poll->api.watch_get_events = watch_get_events;
-+
-+ cups_poll->api.timeout_new = timeout_new;
-+ cups_poll->api.timeout_update = timeout_update;
-+ cups_poll->api.timeout_free = timeout_free;
-+
-+ return (cups_poll);
-+}
-+
-+
-+/*
-+ * 'avahi_cups_poll_free' - Free an Avahi main loop object for CUPS
-+ */
-+void
-+avahi_cups_poll_free (AvahiCupsPoll *cups_poll)
-+{
-+ cupsd_watched_fd_t *watched_fd;
-+
-+ for (watched_fd = (cupsd_watched_fd_t*)cupsArrayFirst(cups_poll->watched_fds);
-+ watched_fd;
-+ watched_fd = (cupsd_watched_fd_t*)cupsArrayNext(cups_poll->watched_fds))
-+ cupsArrayClear (watched_fd->watches);
-+
-+ cupsArrayClear (cups_poll->watched_fds);
-+ cupsArrayClear (cups_poll->timeouts);
-+}
-+
-+
-+/*
-+ * 'avahi_cups_poll_get' - Get the abstract poll API structure
-+ */
-+
-+const AvahiPoll *
-+avahi_cups_poll_get (AvahiCupsPoll *cups_poll)
-+{
-+ return (&cups_poll->api);
-+}
-+
-+
-+#endif /* HAVE_AVAHI ... from top of file */
-+
-+/*
-+ * End of "$Id$".
-+ */
-diff -up cups-1.5.2/scheduler/avahi.h.avahi-4-poll cups-1.5.2/scheduler/avahi.h
---- cups-1.5.2/scheduler/avahi.h.avahi-4-poll 2012-03-14 15:07:29.477542381 +0000
-+++ cups-1.5.2/scheduler/avahi.h 2012-03-14 15:07:29.477542381 +0000
-@@ -0,0 +1,69 @@
-+/*
-+ * "$Id$"
-+ *
-+ * Avahi poll implementation for the CUPS scheduler.
-+ *
-+ * Copyright (C) 2010, 2011 Red Hat, Inc.
-+ * Authors:
-+ * Tim Waugh <twaugh@redhat.com>
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ *
-+ * Redistributions of source code must retain the above copyright
-+ * notice, this list of conditions and the following disclaimer.
-+ *
-+ * Redistributions in binary form must reproduce the above copyright
-+ * notice, this list of conditions and the following disclaimer in the
-+ * documentation and/or other materials provided with the distribution.
-+ *
-+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-+ * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
-+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
-+ * OF THE POSSIBILITY OF SUCH DAMAGE.
-+ */
-+
-+#include <config.h>
-+
-+#ifdef HAVE_AVAHI
-+# include <avahi-client/client.h>
-+# include <avahi-client/publish.h>
-+#endif /* HAVE_AVAHI */
-+
-+#ifdef HAVE_AUTHORIZATION_H
-+# include <Security/Authorization.h>
-+#endif /* HAVE_AUTHORIZATION_H */
-+
-+
-+#ifdef HAVE_AVAHI
-+typedef struct
-+{
-+ AvahiPoll api;
-+ cups_array_t *watched_fds;
-+ cups_array_t *timeouts;
-+} AvahiCupsPoll;
-+#endif /* HAVE_AVAHI */
-+
-+/*
-+ * Prototypes...
-+ */
-+
-+#ifdef HAVE_AVAHI
-+extern AvahiCupsPoll * avahi_cups_poll_new(void);
-+extern void avahi_cups_poll_free(AvahiCupsPoll *cups_poll);
-+extern const AvahiPoll *avahi_cups_poll_get(AvahiCupsPoll *cups_poll);
-+#endif /* HAVE_AVAHI */
-+
-+
-+/*
-+ * End of "$Id$".
-+ */
-diff -up cups-1.5.2/scheduler/Makefile.avahi-4-poll cups-1.5.2/scheduler/Makefile
---- cups-1.5.2/scheduler/Makefile.avahi-4-poll 2012-03-14 15:06:36.508476980 +0000
-+++ cups-1.5.2/scheduler/Makefile 2012-03-14 15:07:29.476542380 +0000
-@@ -17,6 +17,7 @@ include ../Makedefs
-
- CUPSDOBJS = \
- auth.o \
-+ avahi.o \
- banners.o \
- cert.o \
- classes.o \
diff --git a/libre/cups-libre/cups-avahi-5-services.patch b/libre/cups-libre/cups-avahi-5-services.patch
deleted file mode 100755
index 820b3c32b..000000000
--- a/libre/cups-libre/cups-avahi-5-services.patch
+++ /dev/null
@@ -1,1272 +0,0 @@
-diff -up cups-1.5.2/cgi-bin/admin.c.avahi-5-services cups-1.5.2/cgi-bin/admin.c
---- cups-1.5.2/cgi-bin/admin.c.avahi-5-services 2011-08-17 22:01:53.000000000 +0100
-+++ cups-1.5.2/cgi-bin/admin.c 2012-03-14 15:08:25.701611799 +0000
-@@ -1643,7 +1643,7 @@ do_config_server(http_t *http) /* I - H
- else
- local_protocols[0] = '\0';
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- if (cgiGetVariable("BROWSE_LOCAL_DNSSD"))
- {
- if (local_protocols[0])
-@@ -1651,7 +1651,7 @@ do_config_server(http_t *http) /* I - H
- else
- strcat(local_protocols, "dnssd");
- }
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-
- #ifdef HAVE_LDAP
- if (cgiGetVariable("BROWSE_LOCAL_LDAP"))
-@@ -2718,9 +2718,9 @@ do_menu(http_t *http) /* I - HTTP conn
- #endif /* HAVE_GSSAPI */
- cgiSetVariable("KERBEROS", "");
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- cgiSetVariable("HAVE_DNSSD", "1");
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-
- #ifdef HAVE_LDAP
- cgiSetVariable("HAVE_LDAP", "1");
-diff -up cups-1.5.2/scheduler/avahi.h.avahi-5-services cups-1.5.2/scheduler/avahi.h
---- cups-1.5.2/scheduler/avahi.h.avahi-5-services 2012-03-14 15:07:29.477542381 +0000
-+++ cups-1.5.2/scheduler/avahi.h 2012-03-14 15:08:25.701611799 +0000
-@@ -3,7 +3,7 @@
- *
- * Avahi poll implementation for the CUPS scheduler.
- *
-- * Copyright (C) 2010, 2011 Red Hat, Inc.
-+ * Copyright (C) 2010, 2011, 2012 Red Hat, Inc.
- * Authors:
- * Tim Waugh <twaugh@redhat.com>
- *
-@@ -32,37 +32,40 @@
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
--#include <config.h>
-+#ifndef _CUPS_AVAHI_H_
-+# define _CUPS_AVAHI_H_
-
--#ifdef HAVE_AVAHI
--# include <avahi-client/client.h>
--# include <avahi-client/publish.h>
--#endif /* HAVE_AVAHI */
-+/*
-+ * Include necessary headers...
-+ */
-
--#ifdef HAVE_AUTHORIZATION_H
--# include <Security/Authorization.h>
--#endif /* HAVE_AUTHORIZATION_H */
-+# include <config.h>
-
-+# ifdef HAVE_AVAHI
-+# include <avahi-client/client.h>
-+# include <avahi-client/publish.h>
-+# endif /* HAVE_AVAHI */
-
--#ifdef HAVE_AVAHI
-+# ifdef HAVE_AVAHI
- typedef struct
- {
- AvahiPoll api;
- cups_array_t *watched_fds;
- cups_array_t *timeouts;
- } AvahiCupsPoll;
--#endif /* HAVE_AVAHI */
-+# endif /* HAVE_AVAHI */
-
- /*
- * Prototypes...
- */
-
--#ifdef HAVE_AVAHI
-+# ifdef HAVE_AVAHI
- extern AvahiCupsPoll * avahi_cups_poll_new(void);
- extern void avahi_cups_poll_free(AvahiCupsPoll *cups_poll);
- extern const AvahiPoll *avahi_cups_poll_get(AvahiCupsPoll *cups_poll);
--#endif /* HAVE_AVAHI */
-+# endif /* HAVE_AVAHI */
-
-+#endif /* !_CUPS_AVAHI_H_ */
-
- /*
- * End of "$Id$".
-diff -up cups-1.5.2/scheduler/client.c.avahi-5-services cups-1.5.2/scheduler/client.c
---- cups-1.5.2/scheduler/client.c.avahi-5-services 2012-01-13 23:00:22.000000000 +0000
-+++ cups-1.5.2/scheduler/client.c 2012-03-14 15:08:25.703611797 +0000
-@@ -4989,7 +4989,7 @@ valid_host(cupsd_client_t *con) /* I -
- !strncmp(host, "[::1]:", 6));
- }
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- /*
- * Check if the hostname is something.local (Bonjour); if so, allow it.
- */
-@@ -4998,7 +4998,7 @@ valid_host(cupsd_client_t *con) /* I -
- (!_cups_strcasecmp(end, ".local") || !_cups_strncasecmp(end, ".local:", 7) ||
- !_cups_strcasecmp(end, ".local.") || !_cups_strncasecmp(end, ".local.:", 8)))
- return (1);
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-
- /*
- * Check if the hostname is an IP address...
-diff -up cups-1.5.2/scheduler/conf.c.avahi-5-services cups-1.5.2/scheduler/conf.c
---- cups-1.5.2/scheduler/conf.c.avahi-5-services 2012-03-14 15:04:17.636305526 +0000
-+++ cups-1.5.2/scheduler/conf.c 2012-03-14 15:08:25.706611803 +0000
-@@ -652,7 +652,7 @@ cupsdReadConfiguration(void)
- Browsing = CUPS_DEFAULT_BROWSING;
- DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED;
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- cupsdSetString(&DNSSDRegType, "_ipp._tcp,_cups");
- #endif /* HAVE_DNSSD */
-
-diff -up cups-1.5.2/scheduler/dirsvc.c.avahi-5-services cups-1.5.2/scheduler/dirsvc.c
---- cups-1.5.2/scheduler/dirsvc.c.avahi-5-services 2012-03-14 15:04:17.674305572 +0000
-+++ cups-1.5.2/scheduler/dirsvc.c 2012-03-14 15:08:25.709611806 +0000
-@@ -27,6 +27,7 @@
- * ldap_connect() - Start new LDAP connection
- * ldap_reconnect() - Reconnect to LDAP Server
- * ldap_disconnect() - Disconnect from LDAP Server
-+ * cupsdStartAvahiClient() - Start an Avahi client if needed
- * cupsdStartBrowsing() - Start sending and receiving broadcast
- * information.
- * cupsdStartPolling() - Start polling servers as needed.
-@@ -40,11 +41,12 @@
- * dequote() - Remote quotes from a string.
- * dnssdAddAlias() - Add a DNS-SD alias name.
- * dnssdBuildTxtRecord() - Build a TXT record from printer info.
-- * dnssdComparePrinters() - Compare the registered names of two printers.
- * dnssdDeregisterPrinter() - Stop sending broadcast information for a
- * printer.
- * dnssdPackTxtRecord() - Pack an array of key/value pairs into the TXT
- * record format.
-+ * avahiPackTxtRecord() - Pack an array of key/value pairs into an
-+ * AvahiStringList.
- * dnssdRegisterCallback() - DNSServiceRegister callback.
- * dnssdRegisterPrinter() - Start sending broadcast information for a
- * printer or update the broadcast contents.
-@@ -83,6 +85,7 @@
- */
-
- #include "cupsd.h"
-+#include <assert.h>
- #include <grp.h>
-
- #ifdef HAVE_DNSSD
-@@ -97,6 +100,17 @@
- # endif /* HAVE_SYSTEMCONFIGURATION */
- # endif /* __APPLE__ */
- #endif /* HAVE_DNSSD */
-+#ifdef HAVE_AVAHI
-+# include <avahi-common/domain.h>
-+#endif /* HAVE_AVAHI */
-+
-+
-+#ifdef HAVE_DNSSD
-+typedef char *cupsd_txt_record_t;
-+#endif /* HAVE_DNSSD */
-+#ifdef HAVE_AVAHI
-+typedef AvahiStringList *cupsd_txt_record_t;
-+#endif /* HAVE_AVAHI */
-
-
- /*
-@@ -159,27 +173,38 @@ static void update_polling(void);
- static void update_smb(int onoff);
-
-
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
-+static cupsd_txt_record_t dnssdBuildTxtRecord(int *txt_len, cupsd_printer_t *p,
-+ int for_lpd);
-+static void dnssdDeregisterPrinter(cupsd_printer_t *p);
-+static void dnssdRegisterPrinter(cupsd_printer_t *p);
-+static void dnssdStop(void);
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-+
- #ifdef HAVE_DNSSD
- # ifdef HAVE_COREFOUNDATION
- static void dnssdAddAlias(const void *key, const void *value,
- void *context);
- # endif /* HAVE_COREFOUNDATION */
--static char *dnssdBuildTxtRecord(int *txt_len, cupsd_printer_t *p,
-- int for_lpd);
--static int dnssdComparePrinters(cupsd_printer_t *a, cupsd_printer_t *b);
--static void dnssdDeregisterPrinter(cupsd_printer_t *p);
--static char *dnssdPackTxtRecord(int *txt_len, char *keyvalue[][2],
-- int count);
- static void dnssdRegisterCallback(DNSServiceRef sdRef,
- DNSServiceFlags flags,
- DNSServiceErrorType errorCode,
- const char *name, const char *regtype,
- const char *domain, void *context);
--static void dnssdRegisterPrinter(cupsd_printer_t *p);
--static void dnssdStop(void);
- static void dnssdUpdate(void);
- #endif /* HAVE_DNSSD */
-
-+#ifdef HAVE_AVAHI
-+static AvahiStringList *avahiPackTxtRecord(char *keyvalue[][2],
-+ int count);
-+static void avahi_entry_group_cb (AvahiEntryGroup *group,
-+ AvahiEntryGroupState state,
-+ void *userdata);
-+static void avahi_client_cb (AvahiClient *client,
-+ AvahiClientState state,
-+ void *userdata);
-+#endif /* HAVE_AVAHI */
-+
- #ifdef HAVE_LDAP
- static const char * const ldap_attrs[] =/* CUPS LDAP attributes */
- {
-@@ -283,10 +308,10 @@ cupsdDeregisterPrinter(
- ldap_dereg_printer(p);
- #endif /* HAVE_LDAP */
-
--#ifdef HAVE_DNSSD
-- if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef)
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
-+ if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD))
- dnssdDeregisterPrinter(p);
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
- }
-
-
-@@ -702,10 +727,10 @@ cupsdRegisterPrinter(cupsd_printer_t *p)
- slpRegisterPrinter(p); */
- #endif /* HAVE_LIBSLP */
-
--#ifdef HAVE_DNSSD
-- if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef)
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
-+ if ((BrowseLocalProtocols & BROWSE_DNSSD))
- dnssdRegisterPrinter(p);
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
- }
-
-
-@@ -1419,6 +1444,36 @@ ldap_disconnect(LDAP *ld) /* I - LDAP h
- #endif /* HAVE_LDAP */
-
-
-+#ifdef HAVE_AVAHI
-+/*
-+ * 'cupsdStartAvahiClient()' - Start an Avahi client if needed
-+ */
-+
-+void
-+cupsdStartAvahiClient(void)
-+{
-+ int error = 0;
-+
-+ if (!AvahiCupsClient && !AvahiCupsClientConnecting)
-+ {
-+ if (!AvahiCupsPollHandle)
-+ AvahiCupsPollHandle = avahi_cups_poll_new ();
-+
-+ if (AvahiCupsPollHandle)
-+ {
-+ if (avahi_client_new (avahi_cups_poll_get (AvahiCupsPollHandle),
-+ AVAHI_CLIENT_NO_FAIL,
-+ avahi_client_cb, NULL,
-+ &error) != NULL)
-+ AvahiCupsClientConnecting = 1;
-+ else
-+ cupsdLogMessage (CUPSD_LOG_WARN, "Avahi client failed: %d", error);
-+ }
-+ }
-+}
-+#endif /* HAVE_AVAHI */
-+
-+
- /*
- * 'cupsdStartBrowsing()' - Start sending and receiving broadcast information.
- */
-@@ -1542,13 +1597,16 @@ cupsdStartBrowsing(void)
- else
- BrowseSocket = -1;
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_DNSSD)
- {
-+#ifdef HAVE_DNSSD
- DNSServiceErrorType error; /* Error from service creation */
-+#endif /* HAVE_DNSSD */
- cupsd_listener_t *lis; /* Current listening socket */
-
-
-+#ifdef HAVE_DNSSD
- /*
- * First create a "master" connection for all registrations...
- */
-@@ -1573,6 +1631,7 @@ cupsdStartBrowsing(void)
- fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC);
-
- cupsdAddSelect(fd, (cupsd_selfunc_t)dnssdUpdate, NULL, NULL);
-+#endif /* HAVE_DNSSD */
-
- /*
- * Then get the port we use for registrations. If we are not listening
-@@ -1598,17 +1657,23 @@ cupsdStartBrowsing(void)
- */
-
- if (BrowseRemoteProtocols & BROWSE_DNSSD)
-- DNSSDPrinters = cupsArrayNew((cups_array_func_t)dnssdComparePrinters,
-- NULL);
-+ DNSSDPrinters = cupsArrayNew(NULL, NULL);
-
- /*
- * Set the computer name and register the web interface...
- */
-
- cupsdUpdateDNSSDName();
-+
-+#ifdef HAVE_AVAHI
-+ cupsdStartAvahiClient ();
-+#endif /* HAVE_AVAHI */
-+
-+#ifdef HAVE_DNSSD
- }
-- }
- #endif /* HAVE_DNSSD */
-+ }
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-
- #ifdef HAVE_LIBSLP
- if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_SLP)
-@@ -1834,10 +1899,10 @@ cupsdStopBrowsing(void)
- BrowseSocket = -1;
- }
-
--#ifdef HAVE_DNSSD
-- if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef)
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
-+ if ((BrowseLocalProtocols & BROWSE_DNSSD))
- dnssdStop();
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-
- #ifdef HAVE_LIBSLP
- if (((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_SLP) &&
-@@ -1902,7 +1967,7 @@ cupsdStopPolling(void)
- }
-
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- /*
- * 'cupsdUpdateDNSSDName()' - Update the computer name we use for browsing...
- */
-@@ -1910,8 +1975,14 @@ cupsdStopPolling(void)
- void
- cupsdUpdateDNSSDName(void)
- {
-+#ifdef HAVE_DNSSD
- DNSServiceErrorType error; /* Error from service creation */
- char webif[1024]; /* Web interface share name */
-+#endif /* HAVE_DNSSD */
-+#ifdef HAVE_AVAHI
-+ int ret; /* Error from service creation */
-+ char webif[AVAHI_LABEL_MAX]; /* Web interface share name */
-+#endif /* HAVE_AVAHI */
- # ifdef HAVE_SYSTEMCONFIGURATION
- SCDynamicStoreRef sc; /* Context for dynamic store */
- CFDictionaryRef btmm; /* Back-to-My-Mac domains */
-@@ -2042,6 +2113,7 @@ cupsdUpdateDNSSDName(void)
- else
- strlcpy(webif, "CUPS Web Interface", sizeof(webif));
-
-+#ifdef HAVE_DNSSD
- if (WebIFRef)
- DNSServiceRefDeallocate(WebIFRef);
-
-@@ -2054,9 +2126,45 @@ cupsdUpdateDNSSDName(void)
- NULL)) != kDNSServiceErr_NoError)
- cupsdLogMessage(CUPSD_LOG_ERROR,
- "DNS-SD web interface registration failed: %d", error);
-+#endif /* HAVE_DNSSD */
-+
-+#ifdef HAVE_AVAHI
-+ if (!AvahiCupsClient)
-+ /*
-+ * Client not yet running.
-+ */
-+ return;
-+
-+ if (AvahiWebIFGroup)
-+ avahi_entry_group_reset (AvahiWebIFGroup);
-+ else
-+ AvahiWebIFGroup = avahi_entry_group_new (AvahiCupsClient,
-+ avahi_entry_group_cb,
-+ NULL);
-+
-+ if (AvahiWebIFGroup)
-+ {
-+ ret = avahi_entry_group_add_service (AvahiWebIFGroup,
-+ AVAHI_IF_UNSPEC,
-+ AVAHI_PROTO_UNSPEC,
-+ 0, /* flags */
-+ webif, /* name */
-+ "_http._tcp", /* type */
-+ NULL, /* domain */
-+ NULL, /* host */
-+ DNSSDPort, /* port */
-+ "path=/", NULL);
-+ if (ret == 0)
-+ ret = avahi_entry_group_commit (AvahiWebIFGroup);
-+
-+ if (ret != 0)
-+ cupsdLogMessage (CUPSD_LOG_ERROR,
-+ "Avahi web interface registration failed: %d", ret);
-+ }
-+#endif /* HAVE_AVAHI */
- }
- }
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-
-
- #ifdef HAVE_LDAP
-@@ -2334,13 +2442,15 @@ dnssdAddAlias(const void *key, /* I - K
- "Bad Back to My Mac domain in dynamic store!");
- }
- # endif /* HAVE_COREFOUNDATION */
-+#endif /* HAVE_DNSSD */
-
-
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- /*
- * 'dnssdBuildTxtRecord()' - Build a TXT record from printer info.
- */
-
--static char * /* O - TXT record */
-+static cupsd_txt_record_t /* O - TXT record */
- dnssdBuildTxtRecord(
- int *txt_len, /* O - TXT record length */
- cupsd_printer_t *p, /* I - Printer information */
-@@ -2379,7 +2489,12 @@ dnssdBuildTxtRecord(
- keyvalue[i ][0] = "ty";
- keyvalue[i++][1] = p->make_model ? p->make_model : "Unknown";
-
-- snprintf(admin_hostname, sizeof(admin_hostname), "%s.local.", DNSSDHostName);
-+ snprintf(admin_hostname, sizeof(admin_hostname),
-+ "%s.local"
-+#ifdef HAVE_DNSSD
-+ "." /* terminating dot no good for Avahi */
-+#endif /* HAVE_DNSSD */
-+ , DNSSDHostName);
- httpAssembleURIf(HTTP_URI_CODING_ALL, adminurl_str, sizeof(adminurl_str),
- "http", NULL, admin_hostname, DNSSDPort, "/%s/%s",
- (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers",
-@@ -2462,19 +2577,12 @@ dnssdBuildTxtRecord(
- * Then pack them into a proper txt record...
- */
-
-+#ifdef HAVE_DNSSD
- return (dnssdPackTxtRecord(txt_len, keyvalue, i));
--}
--
--
--/*
-- * 'dnssdComparePrinters()' - Compare the registered names of two printers.
-- */
--
--static int /* O - Result of comparison */
--dnssdComparePrinters(cupsd_printer_t *a,/* I - First printer */
-- cupsd_printer_t *b)/* I - Second printer */
--{
-- return (_cups_strcasecmp(a->reg_name, b->reg_name));
-+#endif /* HAVE_DNSSD */
-+#ifdef HAVE_AVAHI
-+ return (avahiPackTxtRecord(keyvalue, i));
-+#endif /* HAVE_AVAHI */
- }
-
-
-@@ -2489,6 +2597,10 @@ dnssdDeregisterPrinter(
- {
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdDeregisterPrinter(%s)", p->name);
-
-+#ifdef HAVE_DNSSD
-+ if (!DNSSDRef)
-+ return;
-+
- /*
- * Closing the socket deregisters the service
- */
-@@ -2524,6 +2636,24 @@ dnssdDeregisterPrinter(
- free(p->printer_txt);
- p->printer_txt = NULL;
- }
-+#endif /* HAVE_DNSSD */
-+
-+#ifdef HAVE_AVAHI
-+ if (p->avahi_group)
-+ {
-+ avahi_entry_group_reset (p->avahi_group);
-+ avahi_entry_group_free (p->avahi_group);
-+ p->avahi_group = NULL;
-+
-+ if (p->ipp_txt)
-+ avahi_string_list_free (p->ipp_txt);
-+
-+ if (p->printer_txt)
-+ avahi_string_list_free (p->printer_txt);
-+
-+ p->ipp_txt = p->printer_txt = NULL;
-+ }
-+#endif /* HAVE_AVAHI */
-
- /*
- * Remove the printer from the array of DNS-SD printers, then clear the
-@@ -2533,8 +2663,10 @@ dnssdDeregisterPrinter(
- cupsArrayRemove(DNSSDPrinters, p);
- cupsdClearString(&p->reg_name);
- }
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-
-
-+#ifdef HAVE_DNSSD
- /*
- * 'dnssdPackTxtRecord()' - Pack an array of key/value pairs into the
- * TXT record format.
-@@ -2644,8 +2776,10 @@ dnssdRegisterCallback(
- LastEvent |= CUPSD_EVENT_PRINTER_MODIFIED;
- }
- }
-+#endif /* HAVE_DNSSD */
-
-
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- /*
- * 'dnssdRegisterPrinter()' - Start sending broadcast information for a printer
- * or update the broadcast contents.
-@@ -2654,20 +2788,40 @@ dnssdRegisterCallback(
- static void
- dnssdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */
- {
-+#ifdef HAVE_DNSSD
- DNSServiceErrorType se; /* dnssd errors */
- char *ipp_txt, /* IPP TXT record buffer */
- *printer_txt, /* LPD TXT record buffer */
-- name[1024], /* Service name */
-- *nameptr; /* Pointer into name */
-+ name[1024]; /* Service name */
- int ipp_len, /* IPP TXT record length */
- printer_len, /* LPD TXT record length */
- printer_port; /* LPD port number */
-+#endif /* HAVE_DNSSD */
-+#ifdef HAVE_AVAHI
-+ int ret; /* Error code */
-+ AvahiStringList *ipp_txt, /* IPP TXT record */
-+ *printer_txt; /* LPD TXT record */
-+ char name[AVAHI_LABEL_MAX], /* Service name */
-+ fullsubtype[AVAHI_LABEL_MAX]; /* Full subtype */
-+ char *regtype_copy, /* Writeable copy of reg type */
-+ *subtype, /* Current service sub type */
-+ *nextsubtype; /* Next service sub type */
-+#endif /* HAVE_AVAHI */
-+ char *nameptr; /* Pointer into name */
- const char *regtype; /* Registration type */
-
-
-+#ifdef HAVE_DNSSD
-+ if (!DNSSDRef)
-+ return;
-+
- cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name,
- !p->ipp_ref ? "new" : "update");
--
-+#endif /* HAVE_DNSSD */
-+#ifdef HAVE_AVAHI
-+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name,
-+ !p->avahi_group ? "new" : "update");
-+#endif /* HAVE_AVAHI */
- /*
- * If per-printer sharing was just disabled make sure we're not
- * registered before returning.
-@@ -2686,12 +2840,36 @@ dnssdRegisterPrinter(cupsd_printer_t *p)
- if (p->info && strlen(p->info) > 0)
- {
- if (DNSSDComputerName)
-- snprintf(name, sizeof(name), "%s @ %s", p->info, DNSSDComputerName);
-+ {
-+ /*
-+ * Make sure there is room for at least 15 characters of
-+ * DNSSDComputerName.
-+ */
-+
-+ assert(sizeof(name) >= 15 + 4);
-+ nameptr = name + strlcpy(name, p->info,
-+ sizeof(name) - 4 -
-+ strnlen(DNSSDComputerName, 15));
-+ nameptr += strlcpy(nameptr, " @ ", sizeof(name) - (nameptr - name));
-+ strlcpy(nameptr, DNSSDComputerName, sizeof(name) - (nameptr - name));
-+ }
- else
- strlcpy(name, p->info, sizeof(name));
- }
- else if (DNSSDComputerName)
-- snprintf(name, sizeof(name), "%s @ %s", p->name, DNSSDComputerName);
-+ {
-+ /*
-+ * Make sure there is room for at least 15 characters of
-+ * DNSSDComputerName.
-+ */
-+
-+ assert(sizeof(name) >= 15 + 4);
-+ nameptr = name + strlcpy(name, p->info,
-+ sizeof(name) - 4 -
-+ strnlen(DNSSDComputerName, 15));
-+ nameptr += strlcpy(nameptr, " @ ", sizeof(name) - (nameptr - name));
-+ strlcpy(nameptr, DNSSDComputerName, sizeof(name) - (nameptr - name));
-+ }
- else
- strlcpy(name, p->name, sizeof(name));
-
-@@ -2712,6 +2890,7 @@ dnssdRegisterPrinter(cupsd_printer_t *p)
- * Register IPP and (optionally) LPD...
- */
-
-+#ifdef HAVE_DNSSD
- ipp_len = 0; /* anti-compiler-warning-code */
- ipp_txt = dnssdBuildTxtRecord(&ipp_len, p, 0);
-
-@@ -2884,6 +3063,209 @@ dnssdRegisterPrinter(cupsd_printer_t *p)
-
- if (printer_txt)
- free(printer_txt);
-+#endif /* HAVE_DNSSD */
-+#ifdef HAVE_AVAHI
-+ if (!AvahiCupsClient)
-+ /*
-+ * Client not running yet. The client callback will call us again later.
-+ */
-+ return;
-+
-+ ipp_txt = dnssdBuildTxtRecord(NULL, p, 0);
-+ printer_txt = dnssdBuildTxtRecord(NULL, p, 1);
-+ regtype = (p->type & CUPS_PRINTER_FAX) ? "_fax-ipp._tcp" : DNSSDRegType;
-+
-+ if (p->avahi_group && p->ipp_txt && ipp_txt &&
-+ !avahi_string_list_equal (p->ipp_txt, ipp_txt))
-+ {
-+ /*
-+ * Update the existing registration...
-+ */
-+
-+ avahi_string_list_free (p->ipp_txt);
-+
-+ if (p->printer_txt)
-+ avahi_string_list_free (p->printer_txt);
-+
-+ /*
-+ * Update the service group entry.
-+ */
-+
-+ regtype_copy = strdup (regtype);
-+ subtype = strchr (regtype_copy, ',');
-+ if (subtype)
-+ *subtype = '\0';
-+
-+ cupsdLogMessage (CUPSD_LOG_DEBUG,
-+ "Updating TXT record for %s (%s)", name, regtype_copy);
-+ ret = avahi_entry_group_update_service_txt_strlst (p->avahi_group,
-+ AVAHI_IF_UNSPEC,
-+ AVAHI_PROTO_UNSPEC,
-+ 0, name,
-+ regtype_copy,
-+ NULL, ipp_txt);
-+ free (regtype_copy);
-+
-+ if (ret < 0)
-+ goto update_failed;
-+
-+ p->ipp_txt = ipp_txt;
-+ ipp_txt = NULL;
-+
-+ if (BrowseLocalProtocols & BROWSE_LPD)
-+ {
-+ ret = avahi_entry_group_update_service_txt_strlst (p->avahi_group,
-+ AVAHI_IF_UNSPEC,
-+ AVAHI_PROTO_UNSPEC,
-+ 0, name,
-+ "_printer._tcp", NULL,
-+ printer_txt);
-+ if (ret < 0)
-+ goto update_failed;
-+
-+ p->printer_txt = printer_txt;
-+ printer_txt = NULL;
-+ }
-+
-+ ret = avahi_entry_group_commit (p->avahi_group);
-+ if (ret < 0)
-+ {
-+ update_failed:
-+ cupsdLogMessage (CUPSD_LOG_ERROR,
-+ "Failed to update TXT record for %s: %d",
-+ name, ret);
-+ avahi_entry_group_reset (p->avahi_group);
-+ avahi_entry_group_free (p->avahi_group);
-+ p->avahi_group = NULL;
-+ ipp_txt = p->ipp_txt;
-+ p->ipp_txt = NULL;
-+ }
-+ }
-+
-+ if (!p->avahi_group)
-+ {
-+ /*
-+ * Initial registration. Use the _fax subtype for fax queues...
-+ */
-+
-+ p->avahi_group = avahi_entry_group_new (AvahiCupsClient,
-+ avahi_entry_group_cb,
-+ p);
-+
-+ cupsdLogMessage(CUPSD_LOG_DEBUG,
-+ "Registering Avahi printer %s with name \"%s\" and "
-+ "type \"%s\"", p->name, name, regtype);
-+
-+ if (!p->avahi_group)
-+ {
-+ ret = 0;
-+ goto add_failed;
-+ }
-+
-+ /*
-+ * Add each service type (DNSSDRegType may contain several,
-+ * separated by commas).
-+ */
-+
-+ subtype = regtype_copy = strdup (regtype);
-+ while (subtype && *subtype)
-+ {
-+ nextsubtype = strchr (subtype, ',');
-+ if (nextsubtype)
-+ *nextsubtype++ = '\0';
-+
-+ if (subtype == regtype_copy)
-+ {
-+ /*
-+ * Main type entry.
-+ */
-+
-+ cupsdLogMessage (CUPSD_LOG_DEBUG,
-+ "Adding TXT record for %s (%s)", name, regtype_copy);
-+ ret = avahi_entry_group_add_service_strlst (p->avahi_group,
-+ AVAHI_IF_UNSPEC,
-+ AVAHI_PROTO_UNSPEC,
-+ 0, name, regtype_copy,
-+ NULL, NULL,
-+ DNSSDPort,
-+ ipp_txt);
-+ }
-+ else
-+ {
-+ /*
-+ * Sub-type entry.
-+ */
-+
-+ snprintf (fullsubtype, sizeof(fullsubtype),
-+ "%s._sub.%s", subtype, regtype_copy);
-+ cupsdLogMessage (CUPSD_LOG_DEBUG,
-+ "Adding TXT record for %s (%s)", name, fullsubtype);
-+ ret = avahi_entry_group_add_service_subtype (p->avahi_group,
-+ AVAHI_IF_UNSPEC,
-+ AVAHI_PROTO_UNSPEC,
-+ 0, name,
-+ regtype_copy,
-+ NULL, fullsubtype);
-+ }
-+
-+ if (ret < 0)
-+ {
-+ free (regtype_copy);
-+ goto add_failed;
-+ }
-+
-+ subtype = nextsubtype;
-+ }
-+
-+ free (regtype_copy);
-+ p->ipp_txt = ipp_txt;
-+ ipp_txt = NULL;
-+
-+ if (BrowseLocalProtocols & BROWSE_LPD)
-+ {
-+ cupsdLogMessage(CUPSD_LOG_DEBUG,
-+ "Registering Avahi printer %s with name \"%s\" and "
-+ "type \"_printer._tcp\"", p->name, name);
-+
-+ ret = avahi_entry_group_add_service_strlst (p->avahi_group,
-+ AVAHI_IF_UNSPEC,
-+ AVAHI_PROTO_UNSPEC,
-+ 0, name,
-+ "_printer._tcp", NULL, NULL,
-+ 515,
-+ printer_txt);
-+ if (ret < 0)
-+ goto add_failed;
-+
-+ p->printer_txt = printer_txt;
-+ printer_txt = NULL;
-+ }
-+
-+ ret = avahi_entry_group_commit (p->avahi_group);
-+
-+ if (ret < 0)
-+ {
-+ add_failed:
-+ cupsdLogMessage (CUPSD_LOG_ERROR,
-+ "Failed to add Avahi entry for %s: %d",
-+ name, ret);
-+ if (p->avahi_group)
-+ {
-+ avahi_entry_group_reset (p->avahi_group);
-+ avahi_entry_group_free (p->avahi_group);
-+ p->avahi_group = NULL;
-+ }
-+ ipp_txt = p->ipp_txt;
-+ p->ipp_txt = NULL;
-+ }
-+ }
-+
-+ if (ipp_txt)
-+ avahi_string_list_free (ipp_txt);
-+
-+ if (printer_txt)
-+ avahi_string_list_free (printer_txt);
-+#endif /* HAVE_AVAHI */
- }
-
-
-@@ -2896,6 +3278,10 @@ dnssdStop(void)
- {
- cupsd_printer_t *p; /* Current printer */
-
-+#ifdef HAVE_DNSSD
-+ if (!DNSSDRef)
-+ return;
-+#endif /* HAVE_DNSSD */
-
- /*
- * De-register the individual printers
-@@ -2910,12 +3296,23 @@ dnssdStop(void)
- * Shutdown the rest of the service refs...
- */
-
-+#ifdef HAVE_DNSSD
- if (WebIFRef)
- {
- DNSServiceRefDeallocate(WebIFRef);
- WebIFRef = NULL;
- }
-+#endif /* HAVE_DNSSD */
-+#ifdef HAVE_AVAHI
-+ if (AvahiWebIFGroup)
-+ {
-+ avahi_entry_group_reset (AvahiWebIFGroup);
-+ avahi_entry_group_free (AvahiWebIFGroup);
-+ AvahiWebIFGroup = NULL;
-+ }
-+#endif /* HAVE_AVAHI */
-
-+#ifdef HAVE_DNSSD
- if (RemoteRef)
- {
- DNSServiceRefDeallocate(RemoteRef);
-@@ -2926,14 +3323,17 @@ dnssdStop(void)
-
- DNSServiceRefDeallocate(DNSSDRef);
- DNSSDRef = NULL;
-+#endif /* HAVE_DNSSD */
-
- cupsArrayDelete(DNSSDPrinters);
- DNSSDPrinters = NULL;
-
- DNSSDPort = 0;
- }
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-
-
-+#ifdef HAVE_DNSSD
- /*
- * 'dnssdUpdate()' - Handle DNS-SD queries.
- */
-@@ -2955,6 +3355,153 @@ dnssdUpdate(void)
- #endif /* HAVE_DNSSD */
-
-
-+#ifdef HAVE_AVAHI
-+/*
-+ * 'avahiPackTxtRecord()' - Pack an array of key/value pairs into an
-+ * AvahiStringList.
-+ */
-+
-+static AvahiStringList * /* O - new string list */
-+avahiPackTxtRecord(char *keyvalue[][2], /* I - Table of key value pairs */
-+ int count) /* I - Number of items in table */
-+{
-+ AvahiStringList *strlst = NULL;
-+ char **elements;
-+ size_t len;
-+ int i = 0;
-+
-+ elements = malloc ((1 + count) * sizeof (char *));
-+ if (!elements)
-+ goto cleanup;
-+
-+ for (i = 0; i < count; i++)
-+ {
-+ len = (1 + strlen (keyvalue[i][0]) +
-+ (keyvalue[i][1] ? 1 + strlen (keyvalue[i][1]) : 1));
-+ elements[i] = malloc (len * sizeof (char));
-+ if (!elements[i])
-+ goto cleanup;
-+
-+ snprintf (elements[i], len, "%s=%s", keyvalue[i][0], keyvalue[i][1]);
-+ }
-+
-+ strlst = avahi_string_list_new_from_array ((const char **) elements, count);
-+
-+cleanup:
-+ while (--i >= 0)
-+ free (elements[i]);
-+
-+ free (elements);
-+ return (strlst);
-+}
-+
-+
-+/*
-+ * 'avahi_entry_group_cb()' - Avahi entry group callback function.
-+ */
-+static void
-+avahi_entry_group_cb (AvahiEntryGroup *group,
-+ AvahiEntryGroupState state,
-+ void *userdata)
-+{
-+ char *name;
-+
-+ if (userdata)
-+ name = ((cupsd_printer_t *) userdata)->reg_name;
-+ else
-+ name = "CUPS web interface";
-+
-+ switch (state)
-+ {
-+ case AVAHI_ENTRY_GROUP_UNCOMMITED:
-+ case AVAHI_ENTRY_GROUP_REGISTERING:
-+ break;
-+
-+ case AVAHI_ENTRY_GROUP_ESTABLISHED:
-+ cupsdLogMessage (CUPSD_LOG_DEBUG,
-+ "Avahi entry group established for %s", name);
-+ break;
-+
-+ default:
-+ cupsdLogMessage (CUPSD_LOG_DEBUG,
-+ "Avahi entry group %s has state %d",
-+ name, state);
-+ break;
-+ }
-+}
-+
-+
-+/*
-+ * 'avahi_client_cb()' - Avahi client callback function.
-+ */
-+static void
-+avahi_client_cb (AvahiClient *client,
-+ AvahiClientState state,
-+ void *userdata)
-+{
-+ cupsd_printer_t *printer;
-+ switch (state)
-+ {
-+ case AVAHI_CLIENT_S_RUNNING:
-+ /*
-+ * Avahi client started successfully.
-+ */
-+ AvahiCupsClient = client;
-+ AvahiCupsClientConnecting = 0;
-+ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client started");
-+
-+ cupsdUpdateDNSSDName ();
-+
-+ for (printer = (cupsd_printer_t *)cupsArrayFirst(Printers);
-+ printer;
-+ printer = (cupsd_printer_t *)cupsArrayNext(Printers))
-+ if (Browsing && (BrowseLocalProtocols & BROWSE_DNSSD) &&
-+ (!(printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT |
-+ CUPS_PRINTER_SCANNER))) && printer->shared)
-+ dnssdRegisterPrinter (printer);
-+
-+ break;
-+
-+ case AVAHI_CLIENT_CONNECTING:
-+ /*
-+ * No Avahi daemon, client is waiting.
-+ */
-+ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client connecting");
-+ break;
-+
-+ case AVAHI_CLIENT_S_REGISTERING:
-+ /*
-+ * Not yet registered.
-+ */
-+ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client registering");
-+ break;
-+
-+ case AVAHI_CLIENT_FAILURE:
-+ /*
-+ * Avahi client failed, close it to allow a clean restart.
-+ */
-+ cupsdLogMessage (CUPSD_LOG_ERROR,
-+ "Avahi client failed, "
-+ "closing client to allow a clean restart");
-+
-+ for (printer = (cupsd_printer_t *)cupsArrayFirst(Printers);
-+ printer;
-+ printer = (cupsd_printer_t *)cupsArrayNext(Printers))
-+ dnssdDeregisterPrinter (printer);
-+
-+ avahi_client_free(client);
-+ AvahiCupsClientConnecting = 0;
-+ AvahiCupsClient = NULL;
-+
-+ break;
-+
-+ default:
-+ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client state: %d", state);
-+ }
-+}
-+#endif /* HAVE_AVAHI */
-+
-+
- /*
- * 'get_auth_info_required()' - Get the auth-info-required value to advertise.
- */
-diff -up cups-1.5.2/scheduler/dirsvc.h.avahi-5-services cups-1.5.2/scheduler/dirsvc.h
---- cups-1.5.2/scheduler/dirsvc.h.avahi-5-services 2011-03-21 02:12:14.000000000 +0000
-+++ cups-1.5.2/scheduler/dirsvc.h 2012-03-14 15:08:25.711611808 +0000
-@@ -31,6 +31,10 @@
- # endif /* HAVE_LDAP_SSL_H */
- #endif /* HAVE_LDAP */
-
-+#ifdef HAVE_AVAHI
-+# include <avahi-client/publish.h>
-+#endif /* HAVE_AVAHI */
-+
- /*
- * Browse protocols...
- */
-@@ -131,19 +135,22 @@ VAR int PollPipe VALUE(0);
- VAR cupsd_statbuf_t *PollStatusBuffer VALUE(NULL);
- /* Status buffer for pollers */
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- VAR char *DNSSDComputerName VALUE(NULL),
- /* Computer/server name */
- *DNSSDHostName VALUE(NULL),
- /* Hostname */
- *DNSSDRegType VALUE(NULL);
- /* Bonjour registration type */
--VAR cups_array_t *DNSSDAlias VALUE(NULL);
-- /* List of dynamic ServerAlias's */
- VAR int DNSSDPort VALUE(0);
- /* Port number to register */
- VAR cups_array_t *DNSSDPrinters VALUE(NULL);
- /* Printers we have registered */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-+
-+#ifdef HAVE_DNSSD
-+VAR cups_array_t *DNSSDAlias VALUE(NULL);
-+ /* List of dynamic ServerAlias's */
- VAR DNSServiceRef DNSSDRef VALUE(NULL),
- /* Master DNS-SD service reference */
- WebIFRef VALUE(NULL),
-@@ -152,6 +159,17 @@ VAR DNSServiceRef DNSSDRef VALUE(NULL),
- /* Remote printer browse reference */
- #endif /* HAVE_DNSSD */
-
-+#ifdef HAVE_AVAHI
-+VAR AvahiCupsPoll *AvahiCupsPollHandle VALUE(NULL);
-+ /* AvahiCupsPoll object */
-+VAR AvahiClient *AvahiCupsClient VALUE(NULL);
-+ /* AvahiClient object */
-+VAR int AvahiCupsClientConnecting VALUE(0);
-+ /* Is AvahiClient object connecting? */
-+VAR AvahiEntryGroup *AvahiWebIFGroup VALUE(NULL);
-+ /* Web interface entry group */
-+#endif /* HAVE_AVAHI */
-+
- #ifdef HAVE_LIBSLP
- VAR SLPHandle BrowseSLPHandle VALUE(NULL);
- /* SLP API handle */
-@@ -195,13 +213,14 @@ extern void cupsdRegisterPrinter(cupsd_p
- extern void cupsdRestartPolling(void);
- extern void cupsdSaveRemoteCache(void);
- extern void cupsdSendBrowseList(void);
-+extern void cupsdStartAvahiClient(void);
- extern void cupsdStartBrowsing(void);
- extern void cupsdStartPolling(void);
- extern void cupsdStopBrowsing(void);
- extern void cupsdStopPolling(void);
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- extern void cupsdUpdateDNSSDName(void);
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
- #ifdef HAVE_LDAP
- extern void cupsdUpdateLDAPBrowse(void);
- #endif /* HAVE_LDAP */
-diff -up cups-1.5.2/scheduler/ipp.c.avahi-5-services cups-1.5.2/scheduler/ipp.c
---- cups-1.5.2/scheduler/ipp.c.avahi-5-services 2012-03-14 15:04:17.665305560 +0000
-+++ cups-1.5.2/scheduler/ipp.c 2012-03-14 15:08:25.715611813 +0000
-@@ -6099,7 +6099,7 @@ copy_printer_attrs(
- ippAddDate(con->response, IPP_TAG_PRINTER, "printer-current-time",
- ippTimeToDate(curtime));
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- if (!ra || cupsArrayFind(ra, "printer-dns-sd-name"))
- {
- if (printer->reg_name)
-@@ -6109,7 +6109,7 @@ copy_printer_attrs(
- ippAddInteger(con->response, IPP_TAG_PRINTER, IPP_TAG_NOVALUE,
- "printer-dns-sd-name", 0);
- }
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-
- if (!ra || cupsArrayFind(ra, "printer-error-policy"))
- ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME,
-diff -up cups-1.5.2/scheduler/main.c.avahi-5-services cups-1.5.2/scheduler/main.c
---- cups-1.5.2/scheduler/main.c.avahi-5-services 2012-03-14 15:06:36.511476986 +0000
-+++ cups-1.5.2/scheduler/main.c 2012-03-14 15:08:25.718611817 +0000
-@@ -120,6 +120,10 @@ main(int argc, /* I - Number of comm
- cupsd_listener_t *lis; /* Current listener */
- time_t current_time, /* Current time */
- activity, /* Client activity timer */
-+#ifdef HAVE_AVAHI
-+ avahi_client_time, /* Time for next Avahi client
-+ check */
-+#endif /* HAVE_AVAHI */
- browse_time, /* Next browse send time */
- senddoc_time, /* Send-Document time */
- expire_time, /* Subscription expire time */
-@@ -672,6 +676,9 @@ main(int argc, /* I - Number of comm
- */
-
- current_time = time(NULL);
-+#ifdef HAVE_AVAHI
-+ avahi_client_time = current_time;
-+#endif /* HAVE_AVAHI */
- browse_time = current_time;
- event_time = current_time;
- expire_time = current_time;
-@@ -894,6 +901,16 @@ main(int argc, /* I - Number of comm
- tmo = cupsdNextTimeout (&tmo_delay);
- if (tmo && tmo_delay == 0)
- cupsdRunTimeout (tmo);
-+
-+ /*
-+ * Try to restart the Avahi client every 10 seconds if needed...
-+ */
-+
-+ if ((current_time - avahi_client_time) >= 10)
-+ {
-+ avahi_client_time = current_time;
-+ cupsdStartAvahiClient();
-+ }
- #endif /* HAVE_AVAHI */
-
- #ifndef __APPLE__
-diff -up cups-1.5.2/scheduler/printers.c.avahi-5-services cups-1.5.2/scheduler/printers.c
---- cups-1.5.2/scheduler/printers.c.avahi-5-services 2012-03-14 15:04:17.646305537 +0000
-+++ cups-1.5.2/scheduler/printers.c 2012-03-14 15:08:25.720611819 +0000
-@@ -883,9 +883,9 @@ cupsdDeletePrinter(
- cupsdClearString(&p->alert);
- cupsdClearString(&p->alert_description);
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- cupsdClearString(&p->pdl);
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-
- cupsArrayDelete(p->filetypes);
-
-@@ -3787,7 +3787,7 @@ add_printer_formats(cupsd_printer_t *p)
- attr->values[i].string.text = _cupsStrAlloc(mimetype);
- }
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- {
- char pdl[1024]; /* Buffer to build pdl list */
- mime_filter_t *filter; /* MIME filter looping var */
-@@ -3843,7 +3843,7 @@ add_printer_formats(cupsd_printer_t *p)
-
- cupsdSetString(&p->pdl, pdl);
- }
--#endif /* HAVE_DNSSD */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
- }
-
-
-diff -up cups-1.5.2/scheduler/printers.h.avahi-5-services cups-1.5.2/scheduler/printers.h
---- cups-1.5.2/scheduler/printers.h.avahi-5-services 2011-03-18 18:42:46.000000000 +0000
-+++ cups-1.5.2/scheduler/printers.h 2012-03-14 15:08:25.721611820 +0000
-@@ -16,6 +16,9 @@
- #ifdef HAVE_DNSSD
- # include <dns_sd.h>
- #endif /* HAVE_DNSSD */
-+#ifdef HAVE_AVAHI
-+# include "avahi.h"
-+#endif /* HAVE_AVAHI */
- #include <cups/pwg-private.h>
-
-
-@@ -95,16 +98,23 @@ struct cupsd_printer_s
- time_t marker_time; /* Last time marker attributes were updated */
- _ppd_cache_t *pc; /* PPD cache and mapping data */
-
--#ifdef HAVE_DNSSD
-+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
- char *reg_name, /* Name used for service registration */
-- *pdl, /* pdl value for TXT record */
-- *ipp_txt, /* IPP TXT record contents */
-+ *pdl; /* pdl value for TXT record */
-+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */
-+#ifdef HAVE_DNSSD
-+ char *ipp_txt, /* IPP TXT record contents */
- *printer_txt; /* LPD TXT record contents */
- int ipp_len, /* IPP TXT record length */
- printer_len; /* LPD TXT record length */
- DNSServiceRef ipp_ref, /* Reference for _ipp._tcp,_cups */
- printer_ref; /* Reference for _printer._tcp */
- #endif /* HAVE_DNSSD */
-+#ifdef HAVE_AVAHI
-+ AvahiStringList *ipp_txt, /* IPP TXT record */
-+ *printer_txt; /* LPD TXT record */
-+ AvahiEntryGroup *avahi_group; /* Avahi entry group */
-+#endif /* HAVE_AVAHI */
- };
-
-
diff --git a/libre/cups-libre/cups-no-export-ssllibs.patch b/libre/cups-libre/cups-no-export-ssllibs.patch
deleted file mode 100755
index 9be3c819b..000000000
--- a/libre/cups-libre/cups-no-export-ssllibs.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-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/libre/cups-libre/cups-no-gcrypt.patch b/libre/cups-libre/cups-no-gcrypt.patch
deleted file mode 100755
index 42f71d0d4..000000000
--- a/libre/cups-libre/cups-no-gcrypt.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff -ruN cups-1.4.7.orig//config-scripts/cups-ssl.m4 cups-1.4.7/config-scripts/cups-ssl.m4
---- cups-1.5.0.orig//config-scripts/cups-ssl.m4 2011-01-11 08:05:58.000000000 +0100
-+++ cups-1.5.0/config-scripts/cups-ssl.m4 2011-08-02 10:44:26.011047900 +0200
-@@ -96,7 +96,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
- have_ssl=1
- SSLLIBS=`$PKGCONFIG --libs gnutls`
-@@ -110,16 +109,6 @@
- AC_DEFINE(HAVE_SSL)
- AC_DEFINE(HAVE_GNUTLS)
- 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...
---- cups-1.5.0.orig//cups/http-private.h 2011-01-22 01:07:22.000000000 +0100
-+++ cups-1.5.0/cups/http-private.h 2011-08-02 10:42:43.341604107 +0200
-@@ -93,7 +93,6 @@
- # elif defined HAVE_GNUTLS
- # include <gnutls/gnutls.h>
- # include <gnutls/x509.h>
--# include <gcrypt.h>
- # elif defined(HAVE_CDSASSL)
- # include <CoreFoundation/CoreFoundation.h>
- # include <Security/Security.h>
diff --git a/libre/cups-libre/cups-no-gzip-man.patch b/libre/cups-libre/cups-no-gzip-man.patch
deleted file mode 100755
index 6786c4430..000000000
--- a/libre/cups-libre/cups-no-gzip-man.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff -up cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man cups-1.5b1/config-scripts/cups-manpages.m4
---- cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man 2011-05-12 07:21:56.000000000 +0200
-+++ cups-1.5b1/config-scripts/cups-manpages.m4 2011-05-23 17:25:50.000000000 +0200
-@@ -69,10 +69,10 @@ case "$uname" in
- ;;
- Linux* | GNU* | Darwin*)
- # Linux, GNU Hurd, and Mac OS X
-- MAN1EXT=1.gz
-- MAN5EXT=5.gz
-- MAN7EXT=7.gz
-- MAN8EXT=8.gz
-+ MAN1EXT=1
-+ MAN5EXT=5
-+ MAN7EXT=7
-+ MAN8EXT=8
- MAN8DIR=8
- ;;
- *)
diff --git a/libre/cups-libre/cups.install b/libre/cups-libre/cups.install
deleted file mode 100755
index 47c3d9b82..000000000
--- a/libre/cups-libre/cups.install
+++ /dev/null
@@ -1,26 +0,0 @@
-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/libre/cups-libre/cups.logrotate b/libre/cups-libre/cups.logrotate
deleted file mode 100755
index 9c49bbdaf..000000000
--- a/libre/cups-libre/cups.logrotate
+++ /dev/null
@@ -1,8 +0,0 @@
-/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/libre/cups-libre/cups.pam b/libre/cups-libre/cups.pam
deleted file mode 100755
index 53724d1f8..000000000
--- a/libre/cups-libre/cups.pam
+++ /dev/null
@@ -1,3 +0,0 @@
-auth required pam_unix.so
-account required pam_unix.so
-session required pam_unix.so
diff --git a/libre/cups-libre/rePKGBUILD b/libre/cups-libre/rePKGBUILD
deleted file mode 100755
index 5f55000cc..000000000
--- a/libre/cups-libre/rePKGBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# This is an example rePKGBUILD file. Use this as a start to creating your own,
-# and remove these comments. For more information, see 'man PKGBUILD'.
-# NOTE: Please fill out the license field for your package! If it is unknown,
-# then please put 'unknown'.
-
-# Maintainer: Nicolas Reynolds <fauno@kiwwwi.com.ar>
-source PKGBUILD
-unset build package md5sums source check
-_repo=extra
-pkgname='cups-libre'
-options=(!strip)
-source=(PKGBUILD
- http://mirrors.kernel.org/archlinux/${_repo}/os/$CARCH/${pkgbase}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT}
- # files for pkg modifications
- )
-
-build() {
- cd "${srcdir}/"
- rm -v .{INSTALL,PKGINFO} ${pkgname%-libre}-$pkgver-$pkgrel-$CARCH$PKGEXT || true
- # put actions for package modifications below this line
-}
-
-package_cups-libre() {
- pkgdesc="The CUPS Printing System - daemon package"
- provides=("${pkgbase}=${pkgver}")
- replaces=("${pkgbase}")
- conflicts=("${pkgbase}")
- 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'
- 'xdg-utils: xdg .desktop file support')
-
- find ${srcdir} -maxdepth 1 -type l -delete
- cp -a ${srcdir}/* ${pkgdir}
-}
diff --git a/libre/enscript/PKGBUILD b/libre/enscript/PKGBUILD
new file mode 100644
index 000000000..281675296
--- /dev/null
+++ b/libre/enscript/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 150464 2012-02-18 00:24:06Z allan $
+# Maintainer: Paul Mattal <paul@archlinux.org>
+# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
+
+pkgname=enscript
+pkgver=1.6.6
+pkgrel=1
+pkgdesc="Convert ASCII files to PostScript suitable for printing"
+arch=('i686' 'x86_64' 'mips64el')
+backup=('etc/enscript/enscript.cfg')
+depends=('glibc')
+license=('GPL2' 'custom')
+source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz)
+md5sums=('3acc242b829adacabcaf28533f049afd')
+url="http://git.savannah.gnu.org/cgit/enscript.git"
+
+build() {
+ cd $srcdir/$pkgname-$pkgver
+ ./configure --prefix=/usr --sysconfdir=/etc/enscript --mandir=/usr/share/man \
+ --infodir=/usr/share/info
+ make
+}
+
+package() {
+ cd $srcdir/$pkgname-$pkgver
+ make prefix=$pkgdir/usr \
+ sysconfdir=$pkgdir/etc/enscript mandir=$pkgdir/usr/share/man \
+ infodir=$pkgdir/usr/share/info install
+ install -D -m644 afm/MustRead.html "${pkgdir}/usr/share/licenses/${pkgname}/MustRead.html"
+}
+
+# vim: ts=2 sw=2 et ft=sh
diff --git a/libre/file-roller-libre/PKGBUILD b/libre/file-roller-libre/PKGBUILD
index 1e20fe070..297067255 100755
--- a/libre/file-roller-libre/PKGBUILD
+++ b/libre/file-roller-libre/PKGBUILD
@@ -1,15 +1,15 @@
-# $Id: PKGBUILD 170951 2012-11-14 01:36:00Z foutrelis $
+# $Id: PKGBUILD 171115 2012-11-16 17:25:15Z ibiru $
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Jan de Groot <jgc@archlinux.org>
_pkgname=file-roller
pkgname=file-roller-libre
pkgver=3.6.2
-pkgrel=2
+pkgrel=3
pkgdesc="Archive manipulator for GNOME"
arch=('i686' 'x86_64')
license=('GPL')
-depends=('desktop-file-utils' 'gtk3' 'hicolor-icon-theme' 'dconf' 'libarchive' 'file' 'json-glib')
+depends=('desktop-file-utils' 'gtk3' 'hicolor-icon-theme' 'dconf' 'libarchive' 'file' 'json-glib' 'libnotify')
makedepends=('intltool' 'gnome-doc-utils' 'pkg-config' 'nautilus' 'itstool' 'docbook-xsl')
optdepends=('ununrar: interface to unarchiver, the free RAR uncompression program'
'zip: creates PKZIP-compatible .zip files'
diff --git a/libre/gnustep-base-libre/PKGBUILD b/libre/gnustep-base-libre/PKGBUILD
deleted file mode 100755
index 4b5fa1731..000000000
--- a/libre/gnustep-base-libre/PKGBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Parabola maintainer: Michał Masłowski <mtjm@mtjm.eu>
-# Parabola contributor: André Silva <andre.paulista@adinet.com.uy>
-# $Id$
-# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
-# Maintainer: Vesa Kaihlavirta <vegai@iki.fi>
-# Contributor: Sebastian Sareyko <public@nooms.de>
-
-_pkgname=gnustep-base
-pkgname=gnustep-base-libre
-pkgver=1.24.0
-pkgrel=2
-pkgdesc="The GNUstep base package with exceptions enabled"
-arch=('i686' 'x86_64')
-url="http://www.gnustep.org/"
-license=("GPL" "LGPL")
-depends=(libxslt avahi gmp gcc-libs openssl libffi gnustep-make-libre gnutls)
-makedepends=(gcc-objc)
-conflicts=('gnustep-base-svn' 'gnustep-base')
-provides=('gnustep-base')
-groups=('gnustep-core')
-options=('!emptydirs' '!makeflags')
-source=(ftp://ftp.gnustep.org/pub/gnustep/core/$_pkgname-$pkgver.tar.gz)
-md5sums=('53cd117e9f64729870e906b66d2314ba')
-
-build() {
- cd "$srcdir/$_pkgname-$pkgver"
- source /etc/profile.d/GNUstep.sh
- ./configure --prefix=/usr --sysconfdir=/etc/GNUstep \
- --with-ffi-include=/usr/lib/libffi-`pacman -Q libffi | cut -f2 -d\ |cut -f1 -d-`/include/
- # fix file ownership
- sed -i 's/tar -xf $(TIMEZONE_ARCHIVE);/tar -xf $(TIMEZONE_ARCHIVE);chown -R root:root * ;/' NSTimeZones/Makefile.postamble
- sed -i 's|.*gnutls_transport_set_lowat.*||' Source/GSSocketStream.m
- make VERBOSE=1
-}
-
-package() {
- cd "$srcdir/$_pkgname-$pkgver"
- make DESTDIR="$pkgdir" install
- chown -R root.root "$pkgdir/"
-}
diff --git a/libre/gnustep-make-libre/PKGBUILD b/libre/gnustep-make-libre/PKGBUILD
deleted file mode 100755
index 7abc014c6..000000000
--- a/libre/gnustep-make-libre/PKGBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Parabola maintainer: Michał Masłowski <mtjm@mtjm.eu>
-# Parabola contributor: André Silva <andre.paulista@adinet.com.uy>
-# $Id$
-# Maintainer: Vesa Kaihlavirta <vegai@iki.fi>
-# Contributor: Sebastian Sareyko <public@nooms.de>
-
-_pkgname=gnustep-make
-pkgname=gnustep-make-libre
-pkgver=2.6.2
-pkgrel=1
-pkgdesc="The GNUstep make package with exceptions enabled"
-arch=('any')
-url="http://www.gnustep.org/"
-license=('GPL')
-depends=('glibc')
-conflicts=('gnustep-make-svn' 'gnustep-make')
-provides=('gnustep-make')
-groups=('gnustep-core')
-source=(ftp://ftp.gnustep.org/pub/gnustep/core/$_pkgname-$pkgver.tar.gz)
-md5sums=('b926d142debc9f38d75b11019c31889f')
-
-build() {
- cd $srcdir/$_pkgname-$pkgver
- # The option is not needed, but makes clear why we rebuild this.
- ./configure --prefix=/usr --sysconfdir=/etc/GNUstep \
- --enable-native-objc-exceptions
- make
- make DESTDIR=$pkgdir install
- install -D -m755 \
- $pkgdir/usr/share/GNUstep/Makefiles/GNUstep.sh \
- $pkgdir/etc/profile.d/GNUstep.sh
-}
diff --git a/libre/gst-plugins-bad-libre/PKGBUILD b/libre/gst-plugins-bad-libre/PKGBUILD
index 2e0658cfb..e96c047a8 100644
--- a/libre/gst-plugins-bad-libre/PKGBUILD
+++ b/libre/gst-plugins-bad-libre/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 153258 2012-03-12 16:05:19Z jgc $
+# $Id: PKGBUILD 171693 2012-11-21 14:33:55Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com>
pkgbase=gst-plugins-bad
pkgname=gst-plugins-bad-libre
-pkgver=1.0.2
+pkgver=1.0.3
pkgrel=1
pkgdesc='GStreamer Multimedia Framework Bad Plugins, without nonfree faac support'
arch=(
@@ -57,7 +57,7 @@ source=(
"$url/src/$pkgbase/$pkgbase-$pkgver.tar.xz"
)
sha256sums=(
- 9e503305799a2b6eb9d0b77c59b8aa8bbe9e6eb815a0635bd013560c73996579
+ 2eae746be0b4c7fa2f1e057c91bd36940d7c25593ab612b707904461360031f0
)
build() {
diff --git a/libre/gstreamer0.10-bad-libre/PKGBUILD b/libre/gstreamer0.10-bad-libre/PKGBUILD
index b74958e3c..46e608da9 100755
--- a/libre/gstreamer0.10-bad-libre/PKGBUILD
+++ b/libre/gstreamer0.10-bad-libre/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 160766 2012-06-05 08:51:20Z jgc $
+# $Id: PKGBUILD 168313 2012-10-08 14:04:19Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Maintainer (Parabola): fauno <fauno@kiwwwi.com.ar>
# Maintainer (Parabola): André Silva <andre.paulista@adinet.com.uy>
@@ -6,10 +6,10 @@
pkgbase=gstreamer0.10-bad-libre
pkgname=('gstreamer0.10-bad-libre' 'gstreamer0.10-bad-libre-plugins')
pkgver=0.10.23
-pkgrel=2
+pkgrel=3
arch=('i686' 'x86_64')
license=('LGPL' 'GPL')
-makedepends=('pkgconfig' 'gstreamer0.10-base>=0.10.36' 'xvidcore' 'libdca' 'bzip2' 'libdc1394' 'neon' 'musicbrainz' 'faad2' 'libmms' 'libcdaudio' 'libmpcdec' 'mjpegtools' 'libdvdnav' 'libmodplug' 'jasper' 'liblrdf' 'libofa' 'soundtouch' 'libvdpau' 'schroedinger' 'libass' 'libvpx' 'gsm' 'libgme' 'rtmpdump' 'libsndfile' 'librsvg' 'wildmidi')
+makedepends=('pkgconfig' 'gstreamer0.10-base>=0.10.36' 'xvidcore' 'libdca' 'bzip2' 'libdc1394' 'neon' 'musicbrainz' 'faad2' 'libmms' 'libcdaudio' 'libmpcdec' 'mjpegtools' 'libdvdnav' 'libmodplug' 'jasper' 'liblrdf' 'libofa' 'soundtouch' 'libvdpau' 'schroedinger' 'libass' 'libvpx' 'gsm' 'libgme' 'rtmpdump' 'libsndfile' 'librsvg' 'wildmidi' 'opus')
url="http://gstreamer.freedesktop.org/"
options=(!libtool !emptydirs)
source=(${url}/src/gst-plugins-bad/gst-plugins-bad-${pkgver}.tar.xz)
@@ -45,7 +45,7 @@ package_gstreamer0.10-bad-libre() {
package_gstreamer0.10-bad-libre-plugins() {
pkgdesc="GStreamer Multimedia Framework Bad Plugins (gst-plugins-bad)"
- depends=("gstreamer0.10-bad-libre=${pkgver}" 'xvidcore' 'libdca' 'bzip2' 'libdc1394' 'neon' 'musicbrainz' 'faad2' 'libmms' 'libcdaudio' 'libmpcdec' 'mjpegtools' 'libdvdnav' 'libmodplug' 'jasper' 'liblrdf' 'libofa' 'libvdpau' 'soundtouch' 'libass' 'schroedinger' 'libvpx' 'gsm' 'rtmpdump' 'libgme' 'libsndfile' 'librsvg' 'wildmidi')
+ depends=("gstreamer0.10-bad-libre=${pkgver}" 'xvidcore' 'libdca' 'bzip2' 'libdc1394' 'neon' 'musicbrainz' 'faad2' 'libmms' 'libcdaudio' 'libmpcdec' 'mjpegtools' 'libdvdnav' 'libmodplug' 'jasper' 'liblrdf' 'libofa' 'libvdpau' 'soundtouch' 'libass' 'schroedinger' 'libvpx' 'gsm' 'rtmpdump' 'libgme' 'libsndfile' 'librsvg' 'wildmidi' 'opus')
groups=('gstreamer0.10-plugins')
install=gstreamer0.10-bad-plugins.install
provides=("gstreamer0.10-bad-plugins=$pkgver")
diff --git a/libre/iceape-i18n/PKGBUILD b/libre/iceape-i18n/PKGBUILD
index 6aaa1aa04..815f0e340 100755
--- a/libre/iceape-i18n/PKGBUILD
+++ b/libre/iceape-i18n/PKGBUILD
@@ -11,7 +11,7 @@
# - Run 'make'. It will take care of everything else for you.
_debname=iceape
-_debver=2.7.10
+_debver=2.7.11
_debrel=1
_debrepo=http://ftp.debian.org/debian/pool/main/
debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; }
@@ -22,7 +22,7 @@ pkgbase=iceape-i18n
pkgname=($(for lang in ${_langpacks[@]}
do echo $pkgbase-$lang | tr A-Z a-z
done))
-_pkgver=2.7.10
+_pkgver=2.7.11
pkgver=${_debver}.${_debrel}
pkgrel=1
@@ -58,26 +58,26 @@ package_iceape-i18n-$(echo $lang | tr A-Z a-z)() {
"
done
-md5sums=('6499aa420d5fa855a3884c657066c443'
- 'c4b98806b5a6cce75878bdf0668f5a4a'
- 'ac1a19ed29bda42f66e533ca9ee79fac'
- '6116bd1b7c51d9414c68e1807d264f35'
- '621dc719068050b479ad0fb9060d39e6'
- 'b184194c4e69dc00ee9f3b15dee71d92'
- '84058513ab8884d0f279aa2990c10327'
- '5be7810ca391eb31d26f5ab46c2f8fea'
- '58737d11a2c0852d6701549d22f071b6'
- 'ac5994cd318ca2692823f91908eee101'
- '5a07c756674b24b0b33af1e26a8e59ee'
- '9178d335fa9f998f157a2e7f27384b15'
- '2e40229a1ef5386574d98b243260f266'
- 'ff8c27d6afc9911af03737c23a0eae5d'
- '611702c6dd5638154ff8a5c99e909da0'
- '217fd6fd1e46eefb524457566f124074'
- '09bb4d6d36403f97b923625055767884'
- 'cebd80d880c87862d9a8baf97c3c5b7b'
- '023750f204d9f0ac89c62987b41532f4'
- '0d753213210d92a8f751b3221fe34dad'
- '4b180802effa63316c54e5ec904405c7'
- '8be48ada576dfd9a37e6b3c0bc55c298'
- 'af08b7f96b175c560bba71ab59e1a3dc')
+md5sums=('fb27360aff6250e7d483803583a5cd78'
+ '236c7aacd7e6416a37aff95f7bfa6a80'
+ 'f17d76128ab529415078cafe63b61d50'
+ '07a5c72158427db8c5a990be6eb2d036'
+ 'fddbcf27d00f1f4d92fed197ace8dd1b'
+ '96eb3291200c44ffdc3ab1d1446f00b7'
+ '04dec3bee388ae66cd434342ab03074f'
+ 'bdef8b38501e7d6805b5304ef2bf8425'
+ '90b5d0ab0ab2eb3b75e5f80cb6d289bb'
+ '97f940c39b84a90b0e16eaeca4fa7806'
+ '34644b44381ae1da46f2fa308fd1cf34'
+ 'a6240664344798568276dd5dbdd27fb2'
+ '61aedef6a89b400584dde82b5e97ff0f'
+ 'abe7a9172876b30c4677b1f4c2237fc9'
+ '60f3c543fbdb72cc12aef8f2369101ff'
+ 'c002da281c0d0fa357f92edd2b8cd12c'
+ 'c17ab30f25f05024879afdf85fa4c516'
+ '250a08a999d6d1d6086ffbd17d60fbb4'
+ '609ce8793ea0d5465da7195e4d956fef'
+ '060226599bac5bc8ddb64417ef1a0108'
+ 'eaa827909690bfa8dfdc621164e23ca8'
+ '3fb66893b5ea3b959de48ef16fb26c74'
+ '6f2d77e767efa0b0d4cb56df9ccd0a2f')
diff --git a/libre/iceape-libre/PKGBUILD b/libre/iceape-libre/PKGBUILD
index eedd8f584..2247f0a8a 100755
--- a/libre/iceape-libre/PKGBUILD
+++ b/libre/iceape-libre/PKGBUILD
@@ -3,7 +3,7 @@
# We're getting this from Debian Sid
_debname=iceape
-_debver=2.7.10
+_debver=2.7.11
_debrel=1
_debrepo=http://ftp.debian.org/debian/pool/main/
debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; }
@@ -29,8 +29,8 @@ source=("${_debrepo}/`debfile ${_debname}`_${_debver}.orig.tar.bz2"
${_pkgname}-2.0-lang.patch
clrf.patch
libre.patch)
-md5sums=('63596601fd01000c842d9543ea8dfd56'
- 'f8de6b9e1906c8349e8799f819503897'
+md5sums=('40473b4c662975eda865e1fc35c4953b'
+ 'f704b69cc0328c83edd6223420fbd412'
'60ba9e8f2fafd20e41268af534a55ea7'
'7266333e31731af8bb50c2eca8d0bd26'
'25b6fe16ac24cd5c852213e5c1adb272'
diff --git a/libre/icedove-i18n/PKGBUILD b/libre/icedove-i18n/PKGBUILD
index 7d0aa1d8b..d7dbbb211 100755
--- a/libre/icedove-i18n/PKGBUILD
+++ b/libre/icedove-i18n/PKGBUILD
@@ -2,7 +2,7 @@
# Maintainer: André Silva <emulatorman@lavabit.com>
pkgbase=icedove-i18n
-pkgver=16.0.2.1
+pkgver=17.0.1
pkgname=('icedove-i18n-ar'
'icedove-i18n-ast'
'icedove-i18n-be'
@@ -473,58 +473,58 @@ package_icedove-i18n-zh-tw() {
cd ${srcdir}
install -Dm644 icedove-i18n-$pkgver-zh-TW.xpi "${pkgdir}/$_path/langpack-zh-TW@icedove.mozilla.org.xpi"
}
-md5sums=('9c4a59c7da66e2354164c3a5bc7af21d'
- '1cc30ebb50c2ff783b07060fe14b4260'
- 'bd2a994f1b0aa8d71b7f432f582e08b5'
- '1b7d5f199b714e5d235cdadc89882c82'
- 'a5945807be0c8e205cf0f4be41d1f301'
- 'ec323d1ea8372afa236ed82d1f38bf62'
- '04985b1bb7a7255970de1c9a0d6b6c37'
- '143d16162ded3cf1ed99731e0ccd4cbc'
- 'ec04abda3d2eafd5cccad44b843d2191'
- 'a1273c8ba22f38f0304d44f52095541d'
- '06ff7794da97ef3cad3ccfde2a229db3'
- 'bb873b67b1e65eccf186622c1315e14b'
- '87ea24ef462fed8a3f6e74e25b210607'
- 'c7363deffa336c8470884ca7500ff583'
- '64d7b4490bbe3cdb25cc8633d46761d4'
- '1bc28fd43fbe54185e0f34161e2bb856'
- 'f90cedcac1daa1a7be9abc9a960bbde0'
- '326a063d3b5d0aff735a145dcbb51e01'
- '86ff061d2346b75b85e59374328d20f8'
- '83969caa207fa30dd016fee6bd2aa543'
- '68d50a5c356d62514bfa99b04776ed7c'
- 'f5ffaa9dc1da2412faf78a4920d19278'
- 'a76518ba680a2fc263de99099e0e1c53'
- 'e88f3c95cf4e51035429307f4f6a4eb5'
- 'c2573d6f463cdd69f6b37612f9ae997a'
- '8b17220cd897ea744978752b2ef11ab0'
- '4ee8b3d2e4fd7bf3353a910d76cbbaf8'
- 'f87d295343ecf5b1e21abe430b157c42'
- '74ce04669c8acf87a8b8878fb2653dc4'
- '5ffc16a8c701c8c2c133775a815d1e67'
- '6d6c1a7e31bf6301ee690509881a4395'
- '41c970fd7ef2224a63de7d562ce71b39'
- 'a4243831934d31aad648221190fe2b42'
- '6c1c023d67a35e4ed3a792bb365f360e'
- '0045f4bceaaddd57fa6c0b895a34feff'
- '18b359d881127defff20e549bb0c5b80'
- 'a295fbd180dfe3e009218aa2775ce332'
- '6beaeaf5bf67321fdef0ee6de968edaa'
- '92b29bc95a476d9cb75c5df075f353b9'
- 'fa757024edb1f1f794f77ecee8c07706'
- '8f21adb897625a2a27a040a8e88bed3f'
- '26b5ab6bb93b454702179c48c9da2e5b'
- 'f319345cdc962919830792644c66165d'
- '7f32885e485beab6822eb9ec0025bae7'
- 'edf019e6332d099d67b68f1f90da680c'
- 'e21836a77f143457ac7912ee0e6386dc'
- '24adc86b3fb496f3d27944a5027d5fa9'
- '7192e7c7d80cc8eb85e1f57defa0496c'
- 'f449ced45bb084ce0adda6df89b1ee31'
- '25e3ce79fc2c1e2164ce04821e683a29'
- '615138d3ed86797a168a0d5784f0c6fe'
- '7c83196da5ee2d01444450cca620c29d'
- '265f8447eee6e6b41ab8fdcf1a1dc154'
- '9889d38b50a7e2d095582ebf75cab9e2'
- '12b882986056bca65fdfc90806daf87b')
+md5sums=('15ededc2d92b095297c32682b1ea5556'
+ '21b066c8006bd37843873a0950b4dd17'
+ 'c531b388e48a2b964091cdabdc6ea843'
+ '02dd4a828cd62d3704b329cc0269c754'
+ 'aa058920d2e9e590a5f43371ec0c758a'
+ 'd2f6d97e73956b929812efc26cbb8a00'
+ '422ba52f874f376d97a74c79047bb07e'
+ 'ebc329dbdfd9533f237731f4ab13c0c7'
+ '372f5b371ef045fd9b1d87d0f5a02f1b'
+ 'f4833810e478a319360b144d1e4e5dd0'
+ 'dcd04ada6fc38908cd1a0b4c640d49b6'
+ 'f5805071746aaac4c977dc6104d81524'
+ '55fb0a3581661c71e8a8b4fdaa5f92c6'
+ 'f4f24e1b0a53d0dca2b8bef384173682'
+ '3beb64fc06de87f5b70f2ba08ab3359e'
+ '62d4a011ccdfdf4f24063caec6e881b2'
+ '230373349ab450147ff19f4afebde2ea'
+ 'c7eff1f39bf536a4da476d77a3e0a450'
+ '06a7c3143b493c96628e93a58f25550c'
+ '5017bdacb7ee1430fa73b9b7ca657497'
+ 'c7aa6657da6f2cd9dc90c323c6676bf9'
+ 'ee9a365773d95e7c31de8089aef0d847'
+ 'feebccca9f6eec21b81e26e1804b0140'
+ '65339aa37592def5a0fa6e5aaf416de5'
+ '64980f1186f4045574babcde77f11529'
+ '20f25644314ad2801db9156531ea290c'
+ 'fd7c8318ab9d946a49ef2873de0d8e0a'
+ 'd6612e0b47375fdb34341ed8386a621f'
+ '89295ed1c51be054d571609209641fa1'
+ 'b35e49dc04bf9134262ae7db57b0311b'
+ '15487ee85959928fa0b85fe99e3c7a82'
+ 'ed555ce92aa37545b4f62ea4bdca9187'
+ '5d83088d4bcd042acfecbb0a85215548'
+ '1f1a513aac9b1d3cbc6dce3e948c33ca'
+ '1b955a8dd7690991d06ced05fc2f1fae'
+ '1785e4bb27d71cc0226eab506f81669a'
+ 'fd9a007c75b8738f3b2e167087655526'
+ '6578b879762db29b40e1723ba59043d6'
+ 'afe8fff2c2707724d2ef5536180a0907'
+ 'b8befd7b5e781403c3c0797633f0f92b'
+ '2097f7218575732e448662b3d1d1a351'
+ '82c29288a115668f25d01d0e7175419f'
+ '8398d4a711dd73302b790a2b99d9e78f'
+ '1ed5155cd7f3be98b25d94a126d043bb'
+ '899f04c2629e648be0f32f1ec04b9b56'
+ '4af5b8985fdb1858c0c25b8452ca72fc'
+ '43189f0ad649e00cedc608c6197a6426'
+ 'aeed4c0b7e536c0b4f9b36a5dc3d1d63'
+ 'a8bbc0c2acf8defcf9c200cacd243536'
+ '9c35cfcbf9d66aa42abfaae4aa4a6937'
+ 'b19268362d73d7e3f66ff7f7f21ab6bd'
+ 'c45de9ad905bbdda655227e77b09a1ba'
+ '430bb7d6dc4037666fb452e5c2c03c83'
+ '6280326bb1fb7c2ddd5c3b5a5360651b'
+ '571688d2bce6597ae76a7ead8929420c')
diff --git a/libre/icedove-libre/Icedove-branding.patch b/libre/icedove-libre/Icedove-branding.patch
new file mode 100644
index 000000000..751305147
--- /dev/null
+++ b/libre/icedove-libre/Icedove-branding.patch
@@ -0,0 +1,37 @@
+From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
+Date: Sat, 24 Nov 2012 11:36:16 +0100
+Subject: Icedove branding
+
+---
+ mail/app/application.ini | 2 +-
+ mail/confvars.sh | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/mail/app/application.ini b/mail/app/application.ini
+index 8380eb7..12902c2 100644
+--- a/mail/app/application.ini
++++ b/mail/app/application.ini
+@@ -4,7 +4,7 @@
+
+ #filter substitution
+ [App]
+-Name=Thunderbird
++Name=Icedove
+ Version=@APP_VERSION@
+ BuildID=@GRE_BUILDID@
+ #ifdef MOZ_SOURCE_REPO
+diff --git a/mail/confvars.sh b/mail/confvars.sh
+index 5c34d70..395bb87 100755
+--- a/mail/confvars.sh
++++ b/mail/confvars.sh
+@@ -3,8 +3,8 @@
+ # License, v. 2.0. If a copy of the MPL was not distributed with this
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+-MOZ_APP_BASENAME=Thunderbird
+-MOZ_APP_NAME=thunderbird
++MOZ_APP_BASENAME=Icedove
++MOZ_APP_NAME=icedove
+ MOZ_UPDATER=1
+ MOZ_THUNDERBIRD=1
+ MOZ_CHROME_FILE_FORMAT=omni
diff --git a/libre/icedove-libre/PKGBUILD b/libre/icedove-libre/PKGBUILD
index 6ec577f58..d61b756f5 100755
--- a/libre/icedove-libre/PKGBUILD
+++ b/libre/icedove-libre/PKGBUILD
@@ -3,7 +3,7 @@
# We're getting this from Debian Experimental
_debname=icedove
-_debver=16.0.2
+_debver=17.0
_debrel=1
_debrepo=http://ftp.debian.org/debian/pool/main/
debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; }
@@ -11,7 +11,7 @@ debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; }
_pkgname=${_debname}
pkgname=${_debname}-libre
pkgver=${_debver}.${_debrel}
-pkgrel=3
+pkgrel=1
pkgdesc="A libre version of Debian Icedove, the Standalone Mail/News reader based on Mozilla Thunderbird."
arch=('i586' 'i686' 'x86_64' 'mips64el')
license=('GPL2' 'MPL' 'LGPL')
@@ -30,16 +30,18 @@ source=("${_debrepo}/`debfile ${_debname}`_${_debver}.orig.tar.bz2"
vendor.js
makefile.patch
branding.patch
- ${_pkgname}.desktop)
+ ${_pkgname}.desktop
+ Icedove-branding.patch)
options=(!emptydirs)
-md5sums=('a3724f40d28014acf593528bb8a048f0'
- '53d62a4841d7989d1f6d1b04929394b4'
+md5sums=('f011e0308a0758df772638836fb03709'
+ '8534a19b46ce21d80fce16b50f1f37bd'
'd6d58d3104a44624e0a3d227cdf1c211'
'476ec205162340fb0679f522c9d31c3b'
'4eecc4fc5aafaf0da651a09eadc90bee'
'c4ed43e85945e180a89cce03e45ec62c'
'126b1446212396c33220936c01d9592d'
- 'e785e0c267f4435ae1a9aa0b03bcacfb')
+ 'e785e0c267f4435ae1a9aa0b03bcacfb'
+ 'ea5f7a06967f561d47d7e5c35b23de6f')
build() {
export QUILT_PATCHES=debian/patches
@@ -58,10 +60,15 @@ build() {
for i in 48x48 64x64; do
install -Dm644 "debian/app-icons/${_pkgname}${i/x*/}.png" "${srcdir}/${DEBIAN_BUILD}/mail/branding/${_pkgname}/content/icon${i/x*/}.png"
done
+
+ # This patch has a orthographic issue ("Icdove" instead of "Icedove") in MOZ_APP_BASENAME line for confvars.sh
+ rm -v debian/patches/debian-hacks/Icedove-branding.patch || true
+
quilt push -av
patch -Np1 -i "${srcdir}/makefile.patch" # small fix
patch -Np1 -i "${srcdir}/branding.patch" # fixing branding
+ patch -Np1 -i "${srcdir}/Icedove-branding.patch" # debian patch fixed version
cp "${srcdir}/mozconfig" .mozconfig
make -j1 -f client.mk build MOZ_MAKE_FLAGS="${MAKEFLAGS}"
diff --git a/libre/iceweasel-i18n/PKGBUILD b/libre/iceweasel-i18n/PKGBUILD
index 6fd6aaf03..406cb3c32 100755
--- a/libre/iceweasel-i18n/PKGBUILD
+++ b/libre/iceweasel-i18n/PKGBUILD
@@ -9,18 +9,18 @@
# - Run 'make'. It will take care of everything else for you.
_debname=iceweasel
-_debver=16.0.2
+_debver=17.0
_debrel=1
_debrepo=http://ftp.debian.org/debian/pool/main/
debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; }
-_langpacks=(ach af ak ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de el en-GB en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy-NL ga-IE gd gl gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko ku lg lij lt lv mai mk ml mr nb-NO nl nn-NO nso or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta-LK ta te th tr uk vi zh-CN zh-TW zu)
+_langpacks=(ach af ak ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de el en-GB en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy-NL ga-IE gd gl gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko ku lg lij lt lv mai mk ml mr nb-NO nl nn-NO nso or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta ta-LK te th tr uk vi zh-CN zh-TW zu)
pkgbase=iceweasel-i18n
pkgname=($(for lang in ${_langpacks[@]}
do echo $pkgbase-$lang | tr A-Z a-z
done))
-_pkgver=16.0.2
+_pkgver=17.0
pkgver=${_debver}.${_debrel}
pkgrel=1
@@ -56,91 +56,91 @@ package_iceweasel-i18n-$(echo $lang | tr A-Z a-z)() {
"
done
-md5sums=('7917e479db04573f738d25d9a57cb049'
- 'ec1fadd5879ebbd7884b00c15e8148a8'
- 'fc281450b90d5e7861ac4f555d5ea871'
- '1fe8f0d56b76f2bd627627098813ace2'
- 'fb3a5c73b806bbd7bd50a64a5894c831'
- '84e222c9a5caa3cfd30b8c79cf49ae20'
- '7a8b1160c2ac40dac7bb3ef788d7e2d0'
- '3b974c5d14de638a36ee6b6e3a1fab94'
- '6b40f968cd7c4a19ddc252fedf88dcbc'
- 'd6f533690c8570150ea193e4784fa37e'
- '75bcfbbacde730ec498345994d5da699'
- '322971c545da5815bfaf9c9f5b380ea4'
- '7da8514ff56ad89db85cf160bc02d8cc'
- '8b748543ca637db910531f35fcc7eb1e'
- '3a5188077b07d50a60c19a9be34fef2e'
- 'c2f01b10da3a49049dadf13e7d62194b'
- '97045cfea1caf0730557171a2dbc1384'
- '969c813859367a254d7edbb16e323d62'
- '479b9f915480af5c4cda1477bcc745f6'
- '081f3d13f05b9d44d5bb2d7842998d68'
- 'c527200432799e3a37180439074f7616'
- '6b688e726d273c21bb08f9e09a3dae48'
- 'b912eedaed384be13d99cbe769bb3683'
- '9d828a0459fbb3997ade5a2c4bcfff35'
- '67b79482d42d8057d0e66a8d00314efb'
- 'da9661e6211765ca9d503d1ff0aaeec1'
- 'e31f997e78fc2069b91a25cf71ee4a43'
- '5207746c0154fc737d3bbeb5d468651b'
- '191e284c168827fd4344f25c287f21d1'
- 'ebcb9f2fb2571d045d3e19ee9d8cbb9f'
- '81c5e660d89148f0ca7da1186f1cda3a'
- 'ca8a2f10358da70d30c8a6af7bc44d54'
- '8581d1f7e7e3a850d360e4da7506d166'
- 'd4811aef8cdc90b6661a669ffad2ead8'
- '41a9cd0e8ea9d71f4d82ac0f4e4911c0'
- 'e00759dd17ea1647afe40c1b9f676187'
- 'b145a19de88d7c62e319e5719cc079d5'
- '817beaa2dab8f01cfcc5f034d537f97b'
- '48257dba1a8ca1ccd9e75cf5d00819df'
- '2036c221e16ea942795eae837a690615'
- 'fc879e816fd4e831f47d14a3ed2442d7'
- '1851131108d0f9665cddaf636c5de826'
- '557c1a2d9176bde516c45112ae4632e8'
- '9142dcd98b5ec1783d72ffcb1326aae7'
- 'f4c0f20255fd7f715a923cd6f81301ca'
- '1f65f925300b5e4317018d80d147fb46'
- '955cba749d29a3608fb70e5914835f2b'
- '7ad38d60e90f96404860ef281bddfe17'
- 'd14126daf1067c19297ff1a94dc91e27'
- 'a1e55184abcd990206c5c82d7445b53e'
- '9e1eeb91fb680c4b09ed1439c8af4265'
- 'b313eb3158561713f00eec0b3ff82739'
- 'e42c798d9371109be8595653c87a96e6'
- '499cb790565eb93e4387120815bc0d3f'
- 'efed1f452372a569002282819f2828e8'
- '6e6e1215ffcc77fbd5deac9b3856ecff'
- '5905c1911035d9576e84791ac4416f23'
- 'd7a49fa9daec5c4c403633e04ec03b49'
- '58d91d27d4e9bb8106534bac2562c566'
- '73fe09d52c99ede62bd8fd07c4780ee4'
- '19eb3d4c88d80035645bbd6a992bf938'
- '51a35fae949c997b5a300211a967d36d'
- '579a02556b1200fc749600390dfb9d97'
- '2d7f14c47a9b974a69bfb5f821c6f04b'
- '8622ac1bb52fb56af89e26f2d2a98ffd'
- 'f5073a3e7bbbc71184a29d567c3d0914'
- '8979aaa64b9300ef245cb6368f1e3275'
- '1444fd6ec5639b51fc4c15c3fc7d41ec'
- '0eb171065c77b27c5aed4aa11fa2a6f4'
- '4b2a490537405ceb2935225807d4bde9'
- '69db8437023d658c5da0cf7388b1f579'
- '8d6bf855d5070624268cc175f3e86a14'
- '3edd9eea3d25fecb21787ce83499c994'
- '3ab336a082a86f9c7df7a7873f40a6e9'
- 'b798317e831b5b9a06161bdaf119ad4d'
- 'e86a78e5bfcba6f45b9f0bbf42c5ad89'
- '8f0a46cdd135c0d8858c409cbca4e9cd'
- '0a78294d15ef47fb1916ca129c5348c0'
- '625fb622c634c035f4b326928c776392'
- '6b528ef1c3427e799d924b12a5e1fb39'
- 'c790339622a85b5b307fb4a8fa496fe7'
- '56021c871cce43c64bc6ddff5f794f31'
- 'babbd7cde37d24463ea5d8a389abd512'
- '6eb58fc54626a3b8d58c03f37dfc2ec1'
- '782d556e773cb97298592fedabdc9a7f'
- 'f2cf5e5a2b244d0afab2edd193209039'
- '973c9e08c3329ba51625272db30d9d6c'
- '28055c70eda06dcf371f0399dce94e8b')
+md5sums=('aca195b6aa9da7fbf568c08f66f966f2'
+ 'e026ffecfd999b9ec8a38f3f2f29f4b5'
+ '4e1e3a700a7c64556fe7281447b2ee08'
+ '68586be8b467b4faf8e0822817a8a844'
+ '0855365b830c4558ec23b0976d258356'
+ '0e4857a39eab45b03607f0a18d469be6'
+ '3d47320eb012880e38344237cd2ee1ff'
+ 'd37290ecae4792f97302347c2d9b72fa'
+ 'ff8b22a9853a0876b42254dc856f8222'
+ '1d57aefb5d8200756e5751b6b660ba69'
+ 'b527326e74cb330a0e2ec36f47930e90'
+ '8a4ad51e5a9328b3437a5b1dc0ecf613'
+ 'c58a6d0ae9bc48d01775f91d84c8afda'
+ '01ffe65230eaf9551ea45d6d2d607cdc'
+ '735c3e03920964711b9914710fe37b56'
+ 'e25a3627c72b4e7a52bf00ccc087aa69'
+ 'f576d51ac7fa505133f75634af3a14dc'
+ 'd82798c091826fcff1552240669bf72d'
+ 'cdd5ec962ed5507eb63ff3cb42f77e19'
+ '8ff7b9281ffecc76831315ce3423db93'
+ 'e53f4816e34487e6c659dff373aae482'
+ 'cf7793dfcbf18d97ffd7168228767da8'
+ '20ca3aee8bf43c675f7fb160f5f3359e'
+ '228e40322a1fcf6fed867fec81b7c702'
+ 'a17b3619eeb977c11e5f99b527c26c12'
+ '180b5a570d1117d0f08c7ca9f43e9796'
+ 'c1a2dc0954ec3d58de0b46f9efb56c86'
+ 'df546f876542bd474656fc27bfea8afe'
+ 'fdb7d6212ed888759422222018289c27'
+ 'af55d3b4ab09fefde72a14f2d869bedb'
+ 'a0235aace986ccf2f66b8f7e3b7878af'
+ '4550a84b0884a7eb2530031b8cf7bd13'
+ '1a81ba0771c82680cb10182247503703'
+ '99950e68df786e47b896e784bd749d53'
+ '81f8ff7132d27e04ef18e743aeb7e6b5'
+ 'bffdcadd6c0e44013eca8d3cb3ff4e91'
+ '44726dde95fb92a9c96de3424784b420'
+ 'e70e64366cb381b583e19945ec78f465'
+ '38fcd722bc60540ecb347b52237595d2'
+ 'dfcc1dad5e95a1460737c70ccd4b5735'
+ '941183e99dc85e6b8a834a52f101784a'
+ 'eb2e91b9991161891d039eb4c40a25a3'
+ '7c509a226c72005e5c9bf4e83bb80abf'
+ 'cf7ce1659ee0af3fd6e9fccf6b0b7d62'
+ 'ab47d4c2d8ecf8c9a093529edc4cdd17'
+ '236cfdaa476eabe1d89e5d03ae83c5f0'
+ 'ab572cadb8b952aa0d165ff796f92084'
+ '8c7396b7010b6afe8b1cc5625405762c'
+ '2adac2f2c2bfc1216b3d7e3944e5a6c5'
+ 'fc544cdd63ce46d72694f296b90e807d'
+ '46ebea9850dd4f8b5bc8134b0e00fa88'
+ '8459c0e2ee2ad97b8828b3ae458c7a30'
+ '212ad5e037ae26e06a29e96076a46d88'
+ '483f0bc2b12782d93aff4ebd6c9d72bc'
+ '69331b072dc1978c7aedc05105b3dab7'
+ '9c325dc249e935e32c1bf573a8bf8a03'
+ 'dc065160d7d7109aca5e5abee88a38dd'
+ '63e0f6e5123b976ba91679e4b0668117'
+ '670301325560f01a65a1516c063ba0ab'
+ 'bf5754aa9937ca01796724bad4128348'
+ 'd37a9af438ede3c95c4147776c1881c7'
+ '00b6aa1338665c1ddd830332eba3e869'
+ 'fd6df56ae64208669b771cd44edbdf22'
+ 'd28ba0c094d0ac6ca8839b6f24b8e36d'
+ 'ddb04a9c43a0a7e3a410a56292abeab0'
+ '195d2b735f34c04505ca68c0f614805a'
+ '6fc7618c6bd4143a8f1e58a560b7a9b2'
+ 'aa1558345b96e6cc3b0c9c22fe3540a8'
+ '37a43a703b46f3275f960abd9852bae3'
+ '523d2d66af36dbd862156fefd183169a'
+ 'af4e4651a8e379d9ca151ae3180d4090'
+ '79240b7df3c53d122ddf7c734e83fdfa'
+ '4bc316dfd0cbb235e787f031155a70f4'
+ 'e04f0b6cb1c79345a989feeaba6adba0'
+ '4d294d9984a14c7f703a9e92a5144de9'
+ 'b1d70ed8d43a3655c2134c7ee32552b3'
+ '4b0decc563ef2f308cb76691e7a20ef6'
+ 'eec9a1717554a85671d4971757cb302d'
+ '588bb4c21d74f3db326ca527dc9fe593'
+ '704173008a109a4ca888bce6abdd1ea0'
+ '8c230dd567c576ca9e2d7cd40923623c'
+ '6dd510df2583839646268121db4ee517'
+ '2b915a4d899364934bc04e3ffe693279'
+ '3ac196603d06fa52746c56b431f0778d'
+ '90ff7e2af56d59cefb941043e6bcd5d5'
+ '77a39f2723940c6312798c65dbb602dc'
+ 'd7fe6dded2ac3aa1dc697e3b46c8d4d5'
+ 'feff9895b8d7678e208947c40c7f53e0') \ No newline at end of file
diff --git a/libre/iceweasel-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch b/libre/iceweasel-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch
index a5fe02165..69fe5c072 100755
--- a/libre/iceweasel-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch
+++ b/libre/iceweasel-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch
@@ -267,10 +267,10 @@ index f35c227..7062886 100644
%{C++
diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp
-index 60348b5..c240c4f 100644
+index 68a52e6..02bb30e 100644
--- a/toolkit/xre/nsAppRunner.cpp
+++ b/toolkit/xre/nsAppRunner.cpp
-@@ -3651,7 +3651,7 @@ XREMain::XRE_mainRun()
+@@ -3669,7 +3669,7 @@ XREMain::XRE_mainRun()
if (gDoProfileReset) {
// Automatically migrate from the current application if we just
// reset the profile.
diff --git a/libre/iceweasel-libre/PKGBUILD b/libre/iceweasel-libre/PKGBUILD
index 7532436d7..185f1c039 100755
--- a/libre/iceweasel-libre/PKGBUILD
+++ b/libre/iceweasel-libre/PKGBUILD
@@ -14,7 +14,7 @@ _pgo=false
# We're getting this from Debian Experimental
_debname=iceweasel
-_debver=16.0.2
+_debver=17.0
_debrel=1
_debrepo=http://ftp.debian.org/debian/pool/main/
debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; }
@@ -52,8 +52,8 @@ source=("${_debrepo}/`debfile ${_debname}`_${_debver}.orig.tar.bz2"
vendor.js
shared-libs.patch
Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch)
-md5sums=('4a4f19048e34f7f0a2d28adc351df1ed'
- 'ee38477dd7ede1c32e559ee74139b5c9'
+md5sums=('3e555026478026987753b4859ec91d3b'
+ '9b07815d94b8190c780fac10009025b9'
'eab149c1994ab14392e55af3abb08e80'
'ac29b01c189f20abae2f3eef1618ffc0'
'a485a2b5dc544a8a2bd40c985d2e5813'
@@ -61,7 +61,7 @@ md5sums=('4a4f19048e34f7f0a2d28adc351df1ed'
'abf5ecb74caa857abb42bcfbb3442d9c'
'0d053487907de4376d67d8f499c5502b'
'52e52f840a49eb1d14be1c0065b03a93'
- '0a31239f1008038df5057982fe745dec')
+ '65f68090d2a69b467bd2707d0c4ea3bd')
if [ "$_pkgname" != "$pkgname" ]; then
provides+=("$_pkgname=$pkgver")
diff --git a/libre/kile-libre/PKGBUILD b/libre/kile-libre/PKGBUILD
index fcc53e9d9..525624001 100755
--- a/libre/kile-libre/PKGBUILD
+++ b/libre/kile-libre/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 159260 2012-05-19 19:37:30Z ronald $
+# $Id: PKGBUILD 171256 2012-11-16 22:51:16Z allan $
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor: Damir Perisa <damir.perisa@bluewin.ch>
# Maintainer (Parabola): Michał Masłowski <mtjm@mtjm.eu>
@@ -7,13 +7,14 @@
_pkgname=kile
pkgname=kile-libre
pkgver=2.1.3
-pkgrel=1
+pkgrel=2
pkgdesc="A user friendly TeX/LaTeX frontend for KDE"
arch=("i686" "x86_64")
license=('GPL2')
url="http://kile.sourceforge.net/"
depends=('kdebase-runtime' 'texlive-core' 'kdebase-katepart')
makedepends=('cmake' 'automoc4')
+optdepends=('kdebase-konsole: embedded terminal')
conflicts=('kile')
replaces=('kile')
provides=('kile')
diff --git a/libre/linux-libre-kmod-alx/PKGBUILD b/libre/linux-libre-kmod-alx/PKGBUILD
index 68dfccc79..f7bf76187 100644
--- a/libre/linux-libre-kmod-alx/PKGBUILD
+++ b/libre/linux-libre-kmod-alx/PKGBUILD
@@ -1,11 +1,11 @@
# Maintainer: André Silva <emulatorman@lavabit.com>
-_kernver=3.6.6
+_kernver=3.6.7
_kernrel=1
pkgname=('linux-libre-kmod-alx')
_pkgver=2012-10-03
pkgver=20121003
-pkgrel=5
+pkgrel=6
pkgdesc='Atheros alx ethernet device driver for linux-libre kernel'
arch=('i686' 'x86_64')
url='http://linuxwireless.org/'
diff --git a/libre/linux-libre-lts-kmod-alx/PKGBUILD b/libre/linux-libre-lts-kmod-alx/PKGBUILD
index 65bae7c0b..5892fa794 100644
--- a/libre/linux-libre-lts-kmod-alx/PKGBUILD
+++ b/libre/linux-libre-lts-kmod-alx/PKGBUILD
@@ -1,11 +1,11 @@
# Maintainer: André Silva <emulatorman@lavabit.com>
-_kernver=3.0.51
+_kernver=3.0.52
_kernrel=1
pkgname=('linux-libre-lts-kmod-alx')
_pkgver=2012-10-03
pkgver=20121003
-pkgrel=6
+pkgrel=7
pkgdesc='Atheros alx ethernet device driver for linux-libre-lts kernel'
arch=('i686' 'x86_64')
url='http://linuxwireless.org/'
diff --git a/libre/linux-libre-lts/PKGBUILD b/libre/linux-libre-lts/PKGBUILD
index b7ffda209..0948ed4f1 100755
--- a/libre/linux-libre-lts/PKGBUILD
+++ b/libre/linux-libre-lts/PKGBUILD
@@ -7,10 +7,10 @@
pkgbase=linux-libre-lts # Build stock -LIBRE-LTS kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.0
-_sublevel=51
+_sublevel=52
pkgver=${_basekernel}.${_sublevel}
pkgrel=1
-_lxopkgver=${_basekernel}.50 # nearly always the same as pkgver
+_lxopkgver=${_basekernel}.52 # nearly always the same as pkgver
arch=('i686' 'x86_64' 'mips64el')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -32,7 +32,7 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
'module-init-wait-3.0.patch'
"http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2")
md5sums=('5f64180fe7df4e574dac5911b78f5067'
- 'fb3c742b1f8b01131534a22348cfa712'
+ '41adc30b96b745f08899317da83f7eaa'
'aed25ab047e1c0b020a1516c235c6a74'
'7d37e8ce0f4bd5a957172b12ae742ea0'
'c072b17032e80debc6a8626299245d46'
@@ -44,7 +44,7 @@ md5sums=('5f64180fe7df4e574dac5911b78f5067'
'f36222e7ce20c8e4dc27376f9be60f6c'
'670931649c60fcb3ef2e0119ed532bd4'
'8a71abc4224f575008f974a099b5cf6f'
- 'e2cc9f33fb26b254b6b65f8981aebf13')
+ 'ecf9d21d2d6dfbc29dc18b616cbce4e1')
if [ "$CARCH" != "mips64el" ]; then
# Don't use the Loongson-specific patches on non-mips64el arches.
unset source[${#source[@]}-1]
diff --git a/libre/linux-libre-lts/linux-libre-lts.install b/libre/linux-libre-lts/linux-libre-lts.install
index 75238bf66..28a571191 100755
--- a/libre/linux-libre-lts/linux-libre-lts.install
+++ b/libre/linux-libre-lts/linux-libre-lts.install
@@ -2,7 +2,7 @@
# arg 2: the old package version
KERNEL_NAME=-lts
-KERNEL_VERSION=3.0.51-1-LIBRE-LTS
+KERNEL_VERSION=3.0.52-1-LIBRE-LTS
# set a sane PATH to ensure that critical utils like depmod will be found
export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD
index 65086e3e8..7f9cb69cb 100755
--- a/libre/linux-libre/PKGBUILD
+++ b/libre/linux-libre/PKGBUILD
@@ -10,10 +10,10 @@
pkgbase=linux-libre # Build stock -LIBRE kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.6
-_sublevel=6
+_sublevel=7
pkgver=${_basekernel}.${_sublevel}
pkgrel=1
-_lxopkgver=${_basekernel}.6 # nearly always the same as pkgver
+_lxopkgver=${_basekernel}.7 # nearly always the same as pkgver
arch=('i686' 'x86_64' 'mips64el')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -31,9 +31,10 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
'change-default-console-loglevel.patch'
'module-symbol-waiting-3.6.patch'
'module-init-wait-3.6.patch'
+ 'irq_cfg_pointer-3.6.6.patch'
"http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2")
md5sums=('a2312edd0265b5b07bd4b50afae2b380'
- '887e4a0fd0fb10da9410f5d1a75466b8'
+ 'a4e642180c7d757a642175fe32e4a264'
'e4a3a4677e1fac6ecf0e0fb44c41ca08'
'68fc36a4efb6ade0eca409b9444fef0c'
'e49ac236dfeef709f91a3d993ea7b62c'
@@ -43,7 +44,8 @@ md5sums=('a2312edd0265b5b07bd4b50afae2b380'
'9d3c56a4b999c8bfbd4018089a62f662'
'670931649c60fcb3ef2e0119ed532bd4'
'8a71abc4224f575008f974a099b5cf6f'
- 'a281ee5d89a016d72840bddb2d742635')
+ '4909a0271af4e5f373136b382826717f'
+ '1dd80f353c705fef988346a8ef05d13f')
if [ "$CARCH" != "mips64el" ]; then
# Don't use the Loongson-specific patches on non-mips64el arches.
unset source[${#source[@]}-1]
@@ -73,6 +75,9 @@ build() {
patch -Np1 -i "${srcdir}/module-symbol-waiting-3.6.patch"
patch -Np1 -i "${srcdir}/module-init-wait-3.6.patch"
+ # fix FS#32615 - Check for valid irq_cfg pointer in smp_irq_move_cleanup_interrupt
+ patch -Np1 -i "${srcdir}/irq_cfg_pointer-3.6.6.patch"
+
if [ "$CARCH" == "mips64el" ]; then
sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre|" Makefile
sed -r "s|^( SUBLEVEL = ).*|\1$_sublevel|" \
diff --git a/libre/linux-libre/irq_cfg_pointer-3.6.6.patch b/libre/linux-libre/irq_cfg_pointer-3.6.6.patch
new file mode 100644
index 000000000..32583c0ac
--- /dev/null
+++ b/libre/linux-libre/irq_cfg_pointer-3.6.6.patch
@@ -0,0 +1,16 @@
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux.git;a=blobdiff_plain;f=arch%2Fx86%2Fkernel%2Fapic%2Fio_apic.c;h=1817fa911024f07151d3edf91bd350722c9f79f8;hp=c265593ec2cdc3df35fda1586aaf91514fab62fa;hb=94777fc51b3ad85ff9f705ddf7cdd0eb3bbad5a6;hpb=3e8fa263a97079c74880675c451587bb6899e661
+
+diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
+index c265593..1817fa9 100644
+--- a/arch/x86/kernel/apic/io_apic.c
++++ b/arch/x86/kernel/apic/io_apic.c
+@@ -2257,6 +2257,9 @@ asmlinkage void smp_irq_move_cleanup_interrupt(void)
+ continue;
+
+ cfg = irq_cfg(irq);
++ if (!cfg)
++ continue;
++
+ raw_spin_lock(&desc->lock);
+
+ /*
diff --git a/libre/linux-libre/linux-libre.install b/libre/linux-libre/linux-libre.install
index 8a3791240..f5c51e08f 100755
--- a/libre/linux-libre/linux-libre.install
+++ b/libre/linux-libre/linux-libre.install
@@ -2,7 +2,7 @@
# arg 2: the old package version
KERNEL_NAME=
-KERNEL_VERSION=3.6.6-1-LIBRE
+KERNEL_VERSION=3.6.7-1-LIBRE
# set a sane PATH to ensure that critical utils like depmod will be found
export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
diff --git a/libre/metalog/PKGBUILD b/libre/metalog/PKGBUILD
deleted file mode 100755
index 41a570b7c..000000000
--- a/libre/metalog/PKGBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# $Id: PKGBUILD 137711 2011-09-10 13:12:33Z pierre $
-# Maintainer: juergen <juergen@archlinux.org>
-# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
-
-pkgname=metalog
-pkgver=2.0
-pkgrel=3
-pkgdesc="Metalog is a modern replacement for syslogd and klogd"
-url="http://metalog.sourceforge.net"
-license=('GPL')
-arch=('i686' 'x86_64' 'mips64el')
-depends=('pcre')
-groups=('base')
-provides=('logger')
-replaces=('syslog-ng')
-conflicts=('syslog-ng')
-backup=('etc/metalog.conf' 'etc/conf.d/metalog')
-source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-2.tar.xz"
- 'metalog' 'metalog.confd')
-md5sums=('e948d10d780205eae17645c89aee1361'
- 'cdd1d34eedbfbc2d9e659bf0a0f58f56'
- '86bccd5a02996921e29eff8a0394d11f')
-
-build() {
- cd $srcdir/$pkgname-2
- ./configure --prefix=/usr --sysconfdir=/etc
- make
-}
-
-check() {
- cd $srcdir/$pkgname-2
- make check
-}
-
-package() {
- cd $srcdir/$pkgname-2
- make DESTDIR=$pkgdir install
- install -D -m755 $srcdir/metalog $pkgdir/etc/rc.d/metalog
- install -D -m644 $srcdir/metalog.confd $pkgdir/etc/conf.d/metalog
- install -D -m644 metalog.conf $pkgdir/etc/metalog.conf
-
-}
-
diff --git a/libre/metalog/metalog b/libre/metalog/metalog
deleted file mode 100755
index d30f47289..000000000
--- a/libre/metalog/metalog
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-# source application-specific settings
-[ -f /etc/conf.d/metalog ] && . /etc/conf.d/metalog
-
-. /etc/rc.conf
-. /etc/rc.d/functions
-
-PID=`pidof -o %PPID /usr/sbin/metalog`
-case "$1" in
- start)
- stat_busy "Starting Metalog"
- [ -z "$PID" ] && /usr/sbin/metalog -B $METALOG_OPTS 2>&1
- if [ $? -gt 0 ]; then
- stat_fail
- else
- echo $PID > /var/run/metalog.pid
- add_daemon metalog
- stat_done
- fi
- ;;
- stop)
- stat_busy "Stopping Metalog"
- [ ! -z "$PID" ] && kill $PID &>/dev/null
- if [ $? -gt 0 ]; then
- stat_fail
- else
- rm_daemon metalog
- stat_done
- fi
- ;;
- restart)
- $0 stop
- sleep 1
- $0 start
- ;;
- *)
- echo "usage: $0 {start|stop|restart}"
-esac
-exit 0
diff --git a/libre/metalog/metalog.confd b/libre/metalog/metalog.confd
deleted file mode 100755
index 3d76ffab3..000000000
--- a/libre/metalog/metalog.confd
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# Parameters to be passed to metalog
-#
-
-# NOTE: Since v.0.7, metalog disables buffering by default.
-# Add '-a' if you want buffering.
-
-METALOG_OPTS=""
diff --git a/libre/mplayer-libre/.directory b/libre/mplayer-libre/.directory
index 724f09760..b3a1c5dc3 100755
--- a/libre/mplayer-libre/.directory
+++ b/libre/mplayer-libre/.directory
@@ -1,2 +1,3 @@
[Dolphin]
-Timestamp=2012,3,7,11,33,38
+Timestamp=2012,11,17,0,31,48
+Version=3
diff --git a/libre/mplayer-libre/PKGBUILD b/libre/mplayer-libre/PKGBUILD
index 3e9d0a44d..583b679ca 100755
--- a/libre/mplayer-libre/PKGBUILD
+++ b/libre/mplayer-libre/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 163126 2012-07-07 16:29:25Z ibiru $
+# $Id: PKGBUILD 171086 2012-11-16 15:00:56Z ibiru $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: Hugo Doria <hugo@archlinux.org>
# Maintainer (Parabola): André Silva <emulatorman@lavabit.com>
@@ -6,8 +6,8 @@
_pkgbase=mplayer
pkgbase=mplayer-libre
pkgname=('mplayer-libre' 'mencoder-libre')
-pkgver=35014
-pkgrel=1
+pkgver=35421
+pkgrel=1.1
arch=('i686' 'x86_64')
makedepends=('libxxf86dga' 'libxxf86vm' 'libmad' 'libxinerama' 'sdl' 'lame' 'libtheora' 'xvidcore' 'libmng' 'libxss' 'libgl' 'smbclient'
'aalib' 'jack' 'libcaca' 'x264' 'faad2' 'lirc-utils' 'libxvmc' 'enca' 'libvdpau' 'opencore-amr' 'libdca' 'a52dec' 'schroedinger' 'libvpx'
@@ -16,7 +16,7 @@ license=('GPL')
url="http://www.mplayerhq.hu/"
options=(!buildflags !emptydirs)
source=(ftp://ftp.archlinux.org/other/$_pkgbase/$_pkgbase-$pkgver.tar.xz mplayer.desktop)
-md5sums=('d0785560e5e8eb02e089728ef4412eae'
+md5sums=('b8a82ad1e1d6c3ac847074772daba817'
'c0d6ef795cf6de48e3b87ff7c23f0319')
build() {
@@ -39,7 +39,7 @@ build() {
--enable-radio \
--enable-radio-capture \
--language=all \
- --confdir=/etc/mplayer
+ --confdir=/etc/mplayer
[ "$CARCH" = "i686" ] && sed 's|-march=i486|-march=i686|g' -i config.mak
make
@@ -71,7 +71,7 @@ package_mplayer-libre() {
package_mencoder-libre() {
pkgdesc="Free command line video decoding, encoding and filtering tool (without unfree faac support)"
depends=('enca' 'a52dec' 'libvpx' 'x264' 'libmng' 'libdca' 'bzip2' 'lame' 'alsa-lib' 'fontconfig' 'giflib' 'libpng' 'smbclient' 'xvidcore' 'opencore-amr'
- 'libmad' 'libtheora' 'fribidi' 'libjpeg' 'faad2' 'schroedinger' 'mpg123' 'libass' 'libbluray' 'libcdio')
+ 'libmad' 'libtheora' 'fribidi' 'libjpeg' 'faad2' 'schroedinger' 'mpg123' 'libass' 'libbluray' 'libcdio' 'libvorbis')
provides=("mencoder=$pkgver")
replaces=('mencoder')
conflicts=('mencoder')
@@ -80,3 +80,5 @@ package_mencoder-libre() {
make DESTDIR="$pkgdir" install-mencoder install-mencoder-man
find "$pkgdir/usr/share/man" -name 'mplayer.1' -exec bash -c 'mv "$1" "${1/mplayer/mencoder}"' _ {} \;
}
+md5sums=('b5d8c24fc106b4ed58acda3b86c468fa'
+ 'c0d6ef795cf6de48e3b87ff7c23f0319')
diff --git a/libre/mplayer-vaapi-libre/PKGBUILD b/libre/mplayer-vaapi-libre/PKGBUILD
index 41f84e022..c5b33cf75 100755
--- a/libre/mplayer-vaapi-libre/PKGBUILD
+++ b/libre/mplayer-vaapi-libre/PKGBUILD
@@ -6,19 +6,19 @@
# Maintainer (Parabola): André Silva <emulatorman@lavabit.com>
pkgname=mplayer-vaapi-libre
-pkgver=35014
-pkgrel=1
+pkgver=35107
+pkgrel=3.1
pkgdesc="A movie player, compiled with vaapi (without unfree faac support)"
arch=('i686' 'x86_64')
url="http://gitorious.org/vaapi/mplayer"
license=('GPL')
depends=('libxxf86dga' 'libxxf86vm' 'libmad' 'libcdio' 'libxinerama' 'sdl'
- 'lame' 'fontconfig' 'libtheora' 'xvidcore' 'libmng' 'libxss' 'mesa'
+ 'lame' 'fontconfig' 'libtheora' 'xvidcore' 'libmng' 'libxss' 'glu'
'smbclient' 'aalib' 'jack' 'libcaca' 'x264' 'speex' 'faad2'
'lirc-utils' 'ttf-dejavu' 'libxvmc' 'enca' 'opencore-amr' 'libdca'
'a52dec' 'schroedinger' 'mpg123' 'libvpx' 'libpulse' 'fribidi'
'libbluray' 'libva' 'libass' 'desktop-file-utils')
-makedepends=('unzip-libre' 'live-media' 'yasm' 'ladspa' 'git')
+makedepends=('unzip-libre' 'live-media' 'yasm' 'ladspa' 'git' 'mesa')
provides=("mplayer=$pkgver" "mplayer-vaapi=$pkgver")
conflicts=('mplayer' 'mplayer-vaapi')
replaces=('mplayer-vaapi')
@@ -27,7 +27,7 @@ source=(http://pkgbuild.com/~foutrelis/mplayer-vaapi-$pkgver.tar.xz
tweak-desktop-file.patch)
options=('!buildflags' '!emptydirs')
install=mplayer-vaapi.install
-sha256sums=('db19a938e7de46aad567b6d7d8866ec6cb3919a29d60236609a83ebf4e1bb5f0'
+sha256sums=('a6c645625cc2cd6ca48764db302c926049f831e757857ece351b37b674e05e56'
'5a09fb462729a4e573568f9e8c1f57dbe7f69c0b68cfa4f6d70b3e52c450d93b')
build() {
diff --git a/libre/pacman/0003-Ensure-pre_upgrade-scriptlet-gets-old-package-version.patch b/libre/pacman/0003-Ensure-pre_upgrade-scriptlet-gets-old-package-version.patch
new file mode 100644
index 000000000..ae3a57ecd
--- /dev/null
+++ b/libre/pacman/0003-Ensure-pre_upgrade-scriptlet-gets-old-package-version.patch
@@ -0,0 +1,29 @@
+From 1bf05e706b5edac92e9c913a69ca8686c6440f8b Mon Sep 17 00:00:00 2001
+From: Dan McGee <dan@archlinux.org>
+Date: Fri, 04 May 2012 16:41:40 +0000
+Subject: Ensure pre_upgrade scriptlet gets old package version
+
+This was accidentally broken in the refactor done in commit 73139ccb.
+
+Fixes FS#29371.
+
+Signed-off-by: Dan McGee <dan@archlinux.org>
+---
+diff --git a/lib/libalpm/add.c b/lib/libalpm/add.c
+index 6c2f0cb..c49d99b 100644
+--- a/lib/libalpm/add.c
++++ b/lib/libalpm/add.c
+@@ -488,8 +488,9 @@ static int commit_single_pkg(alpm_handle_t *handle, alpm_pkg_t *newpkg,
+ if(alpm_pkg_has_scriptlet(newpkg) &&
+ !(trans->flags & ALPM_TRANS_FLAG_NOSCRIPTLET)) {
+ const char *scriptlet_name = is_upgrade ? "pre_upgrade" : "pre_install";
+- _alpm_runscriptlet(handle, pkgfile,
+- scriptlet_name, newpkg->version, NULL, 1);
++
++ _alpm_runscriptlet(handle, pkgfile, scriptlet_name,
++ newpkg->version, oldpkg ? oldpkg->version : NULL, 1);
+ }
+
+ /* we override any pre-set reason if we have alldeps or allexplicit set */
+--
+cgit v0.9.0.2-13-g2bd3
diff --git a/libre/pacman/PKGBUILD b/libre/pacman/PKGBUILD
index 4f05be586..85ae5cc5f 100755
--- a/libre/pacman/PKGBUILD
+++ b/libre/pacman/PKGBUILD
@@ -1,11 +1,11 @@
# vim: set ts=2 sw=2 et:
-# $Id: PKGBUILD 150148 2012-02-13 14:49:35Z dreisner $
+# $Id: PKGBUILD 171482 2012-11-18 01:57:51Z allan $
# Maintainer: Dan McGee <dan@archlinux.org>
-# Maintainer: Dave Reisner <dave@archlinux.org>
+# Maintainer: Dave Reisner <dreisner@archlinux.org>
pkgname=pacman
pkgver=4.0.3
-pkgrel=3
+pkgrel=5
pkgdesc="A library-based package manager with dependency support"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.archlinux.org/pacman/"
@@ -21,6 +21,7 @@ options=(!libtool)
source=(ftp://ftp.archlinux.org/other/pacman/$pkgname-$pkgver.tar.gz{,.sig}
0001-Add-conflict-for-replacing-owned-empty-directory.patch
0002-Check-empty-subdirectory-ownership.patch
+ 0003-Ensure-pre_upgrade-scriptlet-gets-old-package-version.patch
pacman.conf
pacman.conf.x86_64
pacman.conf.mips64el
@@ -29,6 +30,7 @@ md5sums=('387965c7125e60e5f0b9ff3b427fe0f9'
'1a70392526c8768470da678b31905a6e'
'1a9b79788640907a2b34e8671cacc94a'
'a9ddd43891bed364e1e97d27b2887bf1'
+ '2e8cbf55a94b1954b167c5dee6b62317'
'080d9f76f56e135cc62205874636aa0f'
'ce9943fc8086d491890565e91ea1a0d8'
'eb8dba9bd0b315230fbf0e5dc0a7335b'
@@ -39,6 +41,7 @@ build() {
patch -p1 -i $srcdir/0001-Add-conflict-for-replacing-owned-empty-directory.patch
patch -p1 -i $srcdir/0002-Check-empty-subdirectory-ownership.patch
+ patch -p1 -i $srcdir/0003-Ensure-pre_upgrade-scriptlet-gets-old-package-version.patch
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --enable-doc
diff --git a/libre/sqlite3-libre/PKGBUILD b/libre/sqlite3-libre/PKGBUILD
deleted file mode 100755
index 569538fbf..000000000
--- a/libre/sqlite3-libre/PKGBUILD
+++ /dev/null
@@ -1,63 +0,0 @@
-# $Id: PKGBUILD 154652 2012-03-30 14:26:35Z andyrtr $
-# Maintainer: Andreas Radke <andyrtr@archlinux.org>
-# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
-
-pkgbase="sqlite3"
-pkgname=('sqlite3' 'sqlite3-tcl')
-_amalgamationver=3071100
-_amalgamationver2=${_amalgamationver/00/}
-#pkgver=${_amalgamationver2//0/.}
-pkgver=3.7.11
-pkgrel=1.1
-pkgdesc="A C library that implements an SQL database engine"
-arch=('i686' 'x86_64' 'mips64el')
-license=('custom')
-url="http://www.sqlite.org/"
-makedepends=('tcl' 'readline>=6.0.00')
-source=( # tarball containing the amalgamation for SQLite 3.7.5 together with a configure script and makefile for building it; includes now also the Tcl Extension Architecture (TEA)
- http://www.sqlite.org/sqlite-autoconf-$_amalgamationver.tar.gz
- license.txt)
-options=('!libtool' '!emptydirs')
-md5sums=('0552d71bda98ebdcaea305cd6058221b'
- 'c1cdbc5544034d9012e421e75a5e4890')
-
-build() {
- export CFLAGS="$CFLAGS -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_SECURE_DELETE"
-
- # build sqlite
- cd "$srcdir"/sqlite-autoconf-$_amalgamationver
- ./configure --prefix=/usr \
- --disable-static
- make
-
- # build the tcl extension
- cd "$srcdir"/sqlite-autoconf-$_amalgamationver/tea
- ./configure --prefix=/usr \
- --with-system-sqlite
- make
-
-}
-
-package_sqlite3() {
-
- pkgdesc="A C library that implements an SQL database engine"
- depends=('readline>=6.0.00')
- conflicts=('sqlite' 'sqlite3')
- replaces=('sqlite' 'sqlite3')
- provides=("sqlite3=$pkgver")
-
- cd ${srcdir}/sqlite-autoconf-$_amalgamationver
- make DESTDIR=${pkgdir} install
-
- # license
- install -D -m644 ${srcdir}/license.txt ${pkgdir}/usr/share/licenses/${pkgname}/license.txt
-}
-
-package_sqlite3-tcl() {
-
- pkgdesc="sqlite3 Tcl Extension Architecture (TEA)"
- depends=('sqlite3>=3.7.5')
-
- cd ${srcdir}/sqlite-autoconf-$_amalgamationver/tea
- make DESTDIR=${pkgdir} install
-}
diff --git a/libre/sqlite3-libre/license.txt b/libre/sqlite3-libre/license.txt
deleted file mode 100755
index 118c5d5e6..000000000
--- a/libre/sqlite3-libre/license.txt
+++ /dev/null
@@ -1,33 +0,0 @@
-SQLite Copyright
-SQLite is in the
-Public Domain
-
-
-All of the deliverable code in SQLite has been dedicated to the public domain by the authors. All code authors, and representatives of the companies they work for, have signed affidavits dedicating their contributions to the public domain and originals of those signed affidavits are stored in a firesafe at the main offices of Hwaci. Anyone is free to copy, modify, publish, use, compile, sell, or distribute the original SQLite code, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.
-
-The previous paragraph applies to the deliverable code in SQLite - those parts of the SQLite library that you actually bundle and ship with a larger application. Portions of the documentation and some code used as part of the build process might fall under other licenses. The details here are unclear. We do not worry about the licensing of the documentation and build code so much because none of these things are part of the core deliverable SQLite library.
-
-All of the deliverable code in SQLite has been written from scratch. No code has been taken from other projects or from the open internet. Every line of code can be traced back to its original author, and all of those authors have public domain dedications on file. So the SQLite code base is clean and is uncontaminated with licensed code from other projects.
-Obtaining An Explicit License To Use SQLite
-
-Even though SQLite is in the public domain and does not require a license, some users want to obtain a license anyway. Some reasons for obtaining a license include:
-You are using SQLite in a jurisdiction that does not recognize the public domain.
-You are using SQLite in a jurisdiction that does not recognize the right of an author to dedicate their work to the public domain.
-You want to hold a tangible legal document as evidence that you have the legal right to use and distribute SQLite.
-Your legal department tells you that you have to purchase a license.
-
-If you feel like you really have to purchase a license for SQLite, Hwaci, the company that employs the architect and principal developers of SQLite, will sell you one.
-Contributed Code
-
-In order to keep SQLite completely free and unencumbered by copyright, all new contributors to the SQLite code base are asked to dedicate their contributions to the public domain. If you want to send a patch or enhancement for possible inclusion in the SQLite source tree, please accompany the patch with the following statement:
-The author or authors of this code dedicate any and all copyright interest in this code to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this code under copyright law.
-
-We are not able to accept patches or changes to SQLite that are not accompanied by a statement such as the above. In addition, if you make changes or enhancements as an employee, then a simple statement such as the above is insufficient. You must also send by surface mail a copyright release signed by a company officer. A signed original of the copyright release should be mailed to:
-Hwaci
-6200 Maple Cove Lane
-Charlotte, NC 28269
-USA
-
-A template copyright release is available in PDF or HTML. You can use this release to make future changes.
-
-see http://www.sqlite.org/copyright.html \ No newline at end of file
diff --git a/libre/sqlite3/PKGBUILD b/libre/sqlite3/PKGBUILD
deleted file mode 100755
index 2a939aa57..000000000
--- a/libre/sqlite3/PKGBUILD
+++ /dev/null
@@ -1,68 +0,0 @@
-# $Id: PKGBUILD 138719 2011-09-27 17:41:55Z andyrtr $
-# Maintainer: Andreas Radke <andyrtr@archlinux.org>
-# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
-
-# Parabola note: this PKGBUILD is not meant for building, but for
-# providing a PKGBUILD that doesn't build the with unclear permissions
-# docs
-
-pkgbase="sqlite3"
-pkgname=('sqlite3' 'sqlite3-tcl')
-_amalgamationver=3070800
-_amalgamationver2=${_amalgamationver/00/}
-pkgver=${_amalgamationver2//0/.}
-pkgrel=2
-pkgdesc="A C library that implements an SQL database engine"
-arch=('i686' 'x86_64')
-license=('custom')
-url="http://www.sqlite.org/"
-makedepends=('tcl' 'readline>=6.0.00')
-source=( # tarball containing the amalgamation for SQLite 3.7.5 together with a configure script and makefile for building it; includes now also the Tcl Extension Architecture (TEA)
- http://www.sqlite.org/sqlite-autoconf-$_amalgamationver.tar.gz
- license.txt)
-options=('!libtool' '!emptydirs')
-md5sums=('6bfb46d73caaa1bbbcd2b52184b6c542'
- 'c1cdbc5544034d9012e421e75a5e4890')
-sha1sums=('34852cfd49ddea440eb26a35ad32deee0176a724'
- 'f34f6daa4ab3073d74e774aad21d66878cf26853')
-
-build() {
- export CFLAGS="$CFLAGS -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_SECURE_DELETE"
-
- # build sqlite
- cd "$srcdir"/sqlite-autoconf-$_amalgamationver
- ./configure --prefix=/usr \
- --disable-static
- make
-
- # build the tcl extension
- cd "$srcdir"/sqlite-autoconf-$_amalgamationver/tea
- ./configure --prefix=/usr \
- --with-system-sqlite
- make
-
-}
-
-package_sqlite3() {
-
- pkgdesc="A C library that implements an SQL database engine"
- depends=('readline>=6.0.00')
- conflicts=('sqlite')
- replaces=('sqlite')
-
- cd ${srcdir}/sqlite-autoconf-$_amalgamationver
- make DESTDIR=${pkgdir} install
-
- # license
- install -D -m644 ${srcdir}/license.txt ${pkgdir}/usr/share/licenses/${pkgname}/license.txt
-}
-
-package_sqlite3-tcl() {
-
- pkgdesc="sqlite3 Tcl Extension Architecture (TEA)"
- depends=('sqlite3>=3.7.5')
-
- cd ${srcdir}/sqlite-autoconf-$_amalgamationver/tea
- make DESTDIR=${pkgdir} install
-}
-
diff --git a/libre/sqlite3/license.txt b/libre/sqlite3/license.txt
deleted file mode 100755
index 118c5d5e6..000000000
--- a/libre/sqlite3/license.txt
+++ /dev/null
@@ -1,33 +0,0 @@
-SQLite Copyright
-SQLite is in the
-Public Domain
-
-
-All of the deliverable code in SQLite has been dedicated to the public domain by the authors. All code authors, and representatives of the companies they work for, have signed affidavits dedicating their contributions to the public domain and originals of those signed affidavits are stored in a firesafe at the main offices of Hwaci. Anyone is free to copy, modify, publish, use, compile, sell, or distribute the original SQLite code, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.
-
-The previous paragraph applies to the deliverable code in SQLite - those parts of the SQLite library that you actually bundle and ship with a larger application. Portions of the documentation and some code used as part of the build process might fall under other licenses. The details here are unclear. We do not worry about the licensing of the documentation and build code so much because none of these things are part of the core deliverable SQLite library.
-
-All of the deliverable code in SQLite has been written from scratch. No code has been taken from other projects or from the open internet. Every line of code can be traced back to its original author, and all of those authors have public domain dedications on file. So the SQLite code base is clean and is uncontaminated with licensed code from other projects.
-Obtaining An Explicit License To Use SQLite
-
-Even though SQLite is in the public domain and does not require a license, some users want to obtain a license anyway. Some reasons for obtaining a license include:
-You are using SQLite in a jurisdiction that does not recognize the public domain.
-You are using SQLite in a jurisdiction that does not recognize the right of an author to dedicate their work to the public domain.
-You want to hold a tangible legal document as evidence that you have the legal right to use and distribute SQLite.
-Your legal department tells you that you have to purchase a license.
-
-If you feel like you really have to purchase a license for SQLite, Hwaci, the company that employs the architect and principal developers of SQLite, will sell you one.
-Contributed Code
-
-In order to keep SQLite completely free and unencumbered by copyright, all new contributors to the SQLite code base are asked to dedicate their contributions to the public domain. If you want to send a patch or enhancement for possible inclusion in the SQLite source tree, please accompany the patch with the following statement:
-The author or authors of this code dedicate any and all copyright interest in this code to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this code under copyright law.
-
-We are not able to accept patches or changes to SQLite that are not accompanied by a statement such as the above. In addition, if you make changes or enhancements as an employee, then a simple statement such as the above is insufficient. You must also send by surface mail a copyright release signed by a company officer. A signed original of the copyright release should be mailed to:
-Hwaci
-6200 Maple Cove Lane
-Charlotte, NC 28269
-USA
-
-A template copyright release is available in PDF or HTML. You can use this release to make future changes.
-
-see http://www.sqlite.org/copyright.html \ No newline at end of file
diff --git a/libre/thunderbird-libre/.directory b/libre/thunderbird-libre/.directory
deleted file mode 100755
index 6ec9fb1ce..000000000
--- a/libre/thunderbird-libre/.directory
+++ /dev/null
@@ -1,2 +0,0 @@
-[Dolphin]
-Timestamp=2012,4,13,6,21,8
diff --git a/libre/thunderbird-libre/PKGBUILD b/libre/thunderbird-libre/PKGBUILD
deleted file mode 100755
index 134f0efd0..000000000
--- a/libre/thunderbird-libre/PKGBUILD
+++ /dev/null
@@ -1,82 +0,0 @@
-# $Id: PKGBUILD 157994 2012-04-30 20:56:00Z ibiru $
-# Maintainer : Ionut Biru <ibiru@archlinux.org>
-# Contributor: Alexander Baldeck <alexander@archlinux.org>
-# Contributor: Dale Blount <dale@archlinux.org>
-# Contributor: Anders Bostrom <anders.bostrom@home.se>
-# Maintainer (Parabola): André Silva <andre.paulista@adinet.com.uy>
-
-pkgname=thunderbird-libre
-pkgver=12.0.1
-pkgrel=1
-pkgdesc="Standalone Mail/News reader"
-arch=('i686' 'x86_64')
-license=('MPL' 'GPL')
-url="http://www.mozilla.org/thunderbird/"
-depends=('alsa-lib' 'dbus-glib' 'desktop-file-utils' 'gtk2' 'hicolor-icon-theme' 'hunspell' 'libevent' 'libnotify' 'libvpx' 'libxt' 'mime-types' 'mozilla-common' 'nss' 'sqlite' 'startup-notification')
-makedepends=('unzip' 'zip' 'pkg-config' 'python2' 'wireless_tools' 'yasm' 'mesa' 'autoconf2.13')
-optdepends=('libcanberra: for sound support')
-replaces=('thunderbird')
-conflicts=('thunderbird')
-provides=("thunderbird=$pkgver")
-install=thunderbird.install
-source=(ftp://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/$pkgver/source/thunderbird-$pkgver.source.tar.bz2
- mozconfig
- thunderbird.desktop
- thunderbird-install-dir.patch
- channel-prefs.js
- vendor.js
- gcc47.patch
- clrf.patch
- searchplugins-libre.patch)
-md5sums=('64cacde4cb2b1e8736f1c3a0ea6a02db'
- '41511a6bcdd04cf56706218e4670e631'
- 'af3e5b344d2edf1c7d61bb0a5a96de9a'
- 'aea906acf72c43dd82ead2fabcc1c6db'
- '476ec205162340fb0679f522c9d31c3b'
- '5a53179d14ae9631b7afe5e4d0fc0b25'
- '1e3ad86899c61f0993c429d10913edb4'
- 'abe8f73faa71ea2a1e4c6f5a33f56c27'
- '6a1d132b0275876678cb0b08c527805a')
-
-build() {
- cd comm-release
- patch -Np1 -i "$srcdir/thunderbird-install-dir.patch"
- patch -Np1 -i "$srcdir/gcc47.patch"
- patch -Np1 -i "$srcdir/clrf.patch"
-
- # Removing non-free search plugins replacing them with duckduckgo and identi.ca
- patch -Np1 -i "$srcdir/searchplugins-libre.patch"
-
- cp "$srcdir/mozconfig" .mozconfig
-
- export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/thunderbird"
- export PYTHON="/usr/bin/python2"
-
- make -j1 -f client.mk build MOZ_MAKE_FLAGS="$MAKEFLAGS"
-}
-
-package() {
- cd comm-release
- make -j1 -f client.mk DESTDIR="$pkgdir" install
-
- install -m644 "$srcdir"/vendor.js "$pkgdir/usr/lib/thunderbird/defaults/pref/"
-
- for i in 16x16 22x22 24x24 32x32 48x48 256x256; do
- install -Dm644 other-licenses/branding/thunderbird/mailicon${i/x*/}.png \
- "$pkgdir/usr/share/icons/hicolor/$i/apps/thunderbird.png"
- done
-
- install -Dm644 "$srcdir/thunderbird.desktop" \
- "$pkgdir/usr/share/applications/thunderbird.desktop"
-
- rm -rf "$pkgdir"/usr/lib/thunderbird/{dictionaries,hyphenation}
- ln -sf /usr/share/hunspell "$pkgdir/usr/lib/thunderbird/dictionaries"
- ln -sf /usr/share/hyphen "$pkgdir/usr/lib/thunderbird/hyphenation"
-
- # We don't want the development stuff
- rm -r "$pkgdir"/usr/{include,lib/thunderbird-devel,share/idl}
-
-# Recommend free addons
- cp --remove-destination "${srcdir}/channel-prefs.js" \
- "${pkgdir}/usr/lib/thunderbird/defaults/pref/channel-prefs.js"
-}
diff --git a/libre/thunderbird-libre/channel-prefs.js b/libre/thunderbird-libre/channel-prefs.js
deleted file mode 100755
index 13b1ba388..000000000
--- a/libre/thunderbird-libre/channel-prefs.js
+++ /dev/null
@@ -1,9 +0,0 @@
-//@line 2 "/build/src/comm-release/mail/app/profile/channel-prefs.js"
-pref("app.update.channel", "default");
-
-//Recommend free addons
-pref("extensions.getAddons.get.url", "http://www.gnu.org/software/gnuzilla/addons.html");
-pref("extensions.getAddons.search.browseURL", "http://www.gnu.org/software/gnuzilla/addons.html");
-pref("extensions.getAddons.search.url", "http://www.gnu.org/software/gnuzilla/addons.html");
-pref("extensions.getMoreThemesURL", "http://www.gnu.org/software/gnuzilla/addons.html");
-pref("extensions.webservice.discoverURL", "http://www.gnu.org/software/gnuzilla/addons.html");
diff --git a/libre/thunderbird-libre/clrf.patch b/libre/thunderbird-libre/clrf.patch
deleted file mode 100755
index 5a77f2b01..000000000
--- a/libre/thunderbird-libre/clrf.patch
+++ /dev/null
@@ -1,265 +0,0 @@
-diff -Nur comm-release.orig/mailnews/base/search/src/nsMsgSearchAdapter.cpp comm-release/mailnews/base/search/src/nsMsgSearchAdapter.cpp
---- comm-release.orig/mailnews/base/search/src/nsMsgSearchAdapter.cpp 2012-04-25 01:09:10.468804374 +0000
-+++ comm-release/mailnews/base/search/src/nsMsgSearchAdapter.cpp 2012-04-25 01:09:45.928528202 +0000
-@@ -688,7 +688,7 @@
- PL_strcat(encoding, "{");
- lengthStr.AppendInt((PRInt32) strlen(value));
- PL_strcat(encoding, lengthStr.get());
-- PL_strcat(encoding, "}"CRLF);
-+ PL_strcat(encoding, "}" CRLF);
- PL_strcat(encoding, value);
- return NS_OK;
- }
-diff -Nur comm-release.orig/mailnews/base/src/nsMsgFolderCompactor.cpp comm-release/mailnews/base/src/nsMsgFolderCompactor.cpp
---- comm-release.orig/mailnews/base/src/nsMsgFolderCompactor.cpp 2012-04-25 01:09:10.475470988 +0000
-+++ comm-release/mailnews/base/src/nsMsgFolderCompactor.cpp 2012-04-25 01:09:45.928528202 +0000
-@@ -758,7 +758,7 @@
- }
- }
- }
--#define EXTRA_KEYWORD_HDR " "MSG_LINEBREAK
-+#define EXTRA_KEYWORD_HDR " " MSG_LINEBREAK
-
- // if status offset isn't in the first block, this code won't work. There's no good reason
- // for the status offset not to be at the beginning of the message anyway.
-@@ -1216,7 +1216,7 @@
- // check if there's an envelope header; if not, write one.
- if (strncmp(m_dataBuffer, "From ", 5))
- {
-- m_fileStream->Write("From "CRLF, 7, &bytesWritten);
-+ m_fileStream->Write("From " CRLF, 7, &bytesWritten);
- m_offlineMsgSize += bytesWritten;
- }
- }
-diff -Nur comm-release.orig/mailnews/compose/src/nsSmtpProtocol.cpp comm-release/mailnews/compose/src/nsSmtpProtocol.cpp
---- comm-release.orig/mailnews/compose/src/nsSmtpProtocol.cpp 2012-04-25 01:09:10.542137136 +0000
-+++ comm-release/mailnews/compose/src/nsSmtpProtocol.cpp 2012-04-25 01:09:45.928528202 +0000
-@@ -1722,7 +1722,7 @@
- {
- m_sendDone = true;
- nsCOMPtr<nsIURI> url = do_QueryInterface(m_runningURL);
-- SendData(url, "QUIT"CRLF); // send a quit command to close the connection with the server.
-+ SendData(url, "QUIT" CRLF); // send a quit command to close the connection with the server.
- m_nextState = SMTP_RESPONSE;
- m_nextStateAfterResponse = SMTP_DONE;
- return(0);
-@@ -1969,7 +1969,7 @@
- {
- nsCOMPtr<nsIURI> url = do_QueryInterface(m_runningURL);
- // send a quit command to close the connection with the server.
-- if (SendData(url, "QUIT"CRLF) == NS_OK)
-+ if (SendData(url, "QUIT" CRLF) == NS_OK)
- {
- m_nextState = SMTP_RESPONSE;
- m_nextStateAfterResponse = SMTP_ERROR_DONE;
-@@ -2118,4 +2118,3 @@
- NS_ENSURE_SUCCESS(rv,rv);
- return rv;
- }
--
-diff -Nur comm-release.orig/mailnews/imap/src/nsImapMailFolder.cpp comm-release/mailnews/imap/src/nsImapMailFolder.cpp
---- comm-release.orig/mailnews/imap/src/nsImapMailFolder.cpp 2012-04-25 01:09:10.605469976 +0000
-+++ comm-release/mailnews/imap/src/nsImapMailFolder.cpp 2012-04-25 01:09:45.928528202 +0000
-@@ -8309,7 +8309,7 @@
- bool needMoreData = false;
- char * newLine = nsnull;
- PRUint32 numBytesInLine = 0;
-- const char *envelope = "From "CRLF;
-+ const char *envelope = "From " CRLF;
- offlineStore->Write(envelope, strlen(envelope), &bytesWritten);
- fileSize += bytesWritten;
- do
-diff -Nur comm-release.orig/mailnews/imap/src/nsImapProtocol.cpp comm-release/mailnews/imap/src/nsImapProtocol.cpp
---- comm-release.orig/mailnews/imap/src/nsImapProtocol.cpp 2012-04-25 01:09:10.605469976 +0000
-+++ comm-release/mailnews/imap/src/nsImapProtocol.cpp 2012-04-25 01:09:45.931861509 +0000
-@@ -1409,7 +1409,7 @@
- {
- // PRInt32 oldRecent = GetServerStateParser().NumberOfRecentMessages();
- nsCAutoString commandBuffer(GetServerCommandTag());
-- commandBuffer.Append(" IDLE"CRLF);
-+ commandBuffer.Append(" IDLE" CRLF);
-
- do
- {
-@@ -3287,7 +3287,7 @@
- commandString.Append(messageIds);
- commandString.Append(" (");
- commandString.Append(attribute);
-- commandString.Append(")"CRLF);
-+ commandString.Append(")" CRLF);
- nsresult rv = SendData(commandString.get());
-
- if (NS_SUCCEEDED(rv))
-@@ -5283,7 +5283,7 @@
-
- IncrementCommandTagNumber();
- nsCAutoString command(GetServerCommandTag());
-- command.Append(" expunge"CRLF);
-+ command.Append(" expunge" CRLF);
-
- nsresult rv = SendData(command.get());
- if (NS_SUCCEEDED(rv))
-@@ -5359,7 +5359,7 @@
- command.Append(gAppName);
- command.Append("\" \"version\" \"");
- command.Append(gAppVersion);
-- command.Append("\")"CRLF);
-+ command.Append("\")" CRLF);
-
- nsresult rv = SendData(command.get());
- if (NS_SUCCEEDED(rv))
-@@ -5816,7 +5816,7 @@
- nsCAutoString correctedPassword;
- EscapeUserNamePasswordString(password.get(), &correctedPassword);
- command.Append(correctedPassword);
-- command.Append("\""CRLF);
-+ command.Append("\"" CRLF);
- rv = SendData(command.get(), true /* suppress logging */);
- NS_ENSURE_SUCCESS(rv, rv);
- ParseIMAPandCheckForNewMail();
-@@ -7447,7 +7447,7 @@
- nsCString command(GetServerCommandTag());
- command += " create \"";
- command += escapedName;
-- command += "\""CRLF;
-+ command += "\"" CRLF;
-
- nsresult rv = SendData(command.get());
- if(NS_SUCCEEDED(rv))
-@@ -7550,7 +7550,7 @@
- nsCString command (GetServerCommandTag());
- command += " lsub \"\" \"";
- command += escapedPattern;
-- command += "\""CRLF;
-+ command += "\"" CRLF;
-
- PR_Free(boxnameWithOnlineDirectory);
-
-@@ -7579,7 +7579,7 @@
- command += useXLIST ?
- " xlist \"\" \"" : " list \"\" \"";
- command += escapedPattern;
-- command += "\""CRLF;
-+ command += "\"" CRLF;
-
- PR_Free(boxnameWithOnlineDirectory);
-
-@@ -7600,7 +7600,7 @@
- nsCString command (GetServerCommandTag());
- command += " subscribe \"";
- command += escapedName;
-- command += "\""CRLF;
-+ command += "\"" CRLF;
-
- nsresult rv = SendData(command.get());
- if (NS_SUCCEEDED(rv))
-@@ -7618,7 +7618,7 @@
- nsCString command (GetServerCommandTag());
- command += " unsubscribe \"";
- command += escapedName;
-- command += "\""CRLF;
-+ command += "\"" CRLF;
-
- nsresult rv = SendData(command.get());
- if (NS_SUCCEEDED(rv))
-@@ -7632,7 +7632,7 @@
- if (m_urlInProgress)
- return;
- nsCAutoString command (GetServerCommandTag());
-- command += " IDLE"CRLF;
-+ command += " IDLE" CRLF;
- nsresult rv = SendData(command.get());
- if (NS_SUCCEEDED(rv))
- {
-@@ -7659,7 +7659,7 @@
- nsCOMPtr <nsIAsyncInputStream> asyncInputStream = do_QueryInterface(m_inputStream);
- if (asyncInputStream)
- asyncInputStream->AsyncWait(nsnull, 0, 0, nsnull);
-- nsresult rv = SendData("DONE"CRLF);
-+ nsresult rv = SendData("DONE" CRLF);
- // set a short timeout if we don't want to wait for a response
- if (m_transport && !waitForResponse)
- m_transport->SetTimeout(nsISocketTransport::TIMEOUT_READ_WRITE, 5);
-@@ -7728,8 +7728,8 @@
- PRUint32 msgsHandled = 0;
- const char *formatString;
- formatString = (idsAreUid)
-- ? "%s uid store %s %s"CRLF
-- : "%s store %s %s"CRLF;
-+ ? "%s uid store %s %s" CRLF
-+ : "%s store %s %s" CRLF;
-
- do
- {
-diff -Nur comm-release.orig/mailnews/imap/src/nsImapServerResponseParser.cpp comm-release/mailnews/imap/src/nsImapServerResponseParser.cpp
---- comm-release.orig/mailnews/imap/src/nsImapServerResponseParser.cpp 2012-04-25 01:09:10.605469976 +0000
-+++ comm-release/mailnews/imap/src/nsImapServerResponseParser.cpp 2012-04-25 01:09:45.931861509 +0000
-@@ -185,7 +185,7 @@
-
- NS_ASSERTION(aCurrentCommand && *aCurrentCommand != '\r' &&
- *aCurrentCommand != '\n' && *aCurrentCommand != ' ', "Invailid command string");
-- bool sendingIdleDone = !strcmp(aCurrentCommand, "DONE"CRLF);
-+ bool sendingIdleDone = !strcmp(aCurrentCommand, "DONE" CRLF);
- if (sendingIdleDone)
- fWaitingForMoreClientInput = false;
-
-diff -Nur comm-release.orig/mailnews/local/src/nsPop3Protocol.cpp comm-release/mailnews/local/src/nsPop3Protocol.cpp
---- comm-release.orig/mailnews/local/src/nsPop3Protocol.cpp 2012-04-25 01:09:10.492137526 +0000
-+++ comm-release/mailnews/local/src/nsPop3Protocol.cpp 2012-04-25 01:09:45.931861509 +0000
-@@ -2483,7 +2483,7 @@
- return(MK_OUT_OF_MEMORY);
- m_pop3ConData->next_state_after_response = POP3_GET_LIST;
- m_listpos = 0;
-- return SendData(m_url, "LIST"CRLF);
-+ return SendData(m_url, "LIST" CRLF);
- }
-
-
-diff -Nur comm-release.orig/mailnews/mime/src/mimedrft.cpp comm-release/mailnews/mime/src/mimedrft.cpp
---- comm-release.orig/mailnews/mime/src/mimedrft.cpp 2012-04-25 01:09:10.488804218 +0000
-+++ comm-release/mailnews/mime/src/mimedrft.cpp 2012-04-25 01:09:45.931861509 +0000
-@@ -1473,7 +1473,7 @@
- *newbody = 0;
- PL_strcatn(newbody, newbodylen, "<PRE>");
- PL_strcatn(newbody, newbodylen, body);
-- PL_strcatn(newbody, newbodylen, "</PRE>"CRLF);
-+ PL_strcatn(newbody, newbodylen, "</PRE>" CRLF);
- PR_Free(body);
- body = newbody;
- }
-diff -Nur comm-release.orig/mailnews/mime/src/mimemult.cpp comm-release/mailnews/mime/src/mimemult.cpp
---- comm-release.orig/mailnews/mime/src/mimemult.cpp 2012-04-25 01:09:10.488804218 +0000
-+++ comm-release/mailnews/mime/src/mimemult.cpp 2012-04-25 01:12:53.383735715 +0000
-@@ -280,7 +280,7 @@
- MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK));
- MimeWriteAString(obj, NS_LITERAL_CSTRING("Content-Disposition: attachment; filename=\""));
- MimeWriteAString(obj, fileName);
-- MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK));
-+ MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK));
- MimeWriteAString(obj, NS_LITERAL_CSTRING("X-Mozilla-External-Attachment-URL: "));
- MimeWriteAString(obj, obj->options->state->detachedFilePath);
- MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK));
-@@ -293,10 +293,10 @@
- status = MimeWriteAString(obj, header);
- if (status < 0)
- return status;
-- status = MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK"Content-Transfer-Encoding: 8bit"MSG_LINEBREAK));
-+ status = MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK "Content-Transfer-Encoding: 8bit" MSG_LINEBREAK));
- MimeWriteAString(obj, NS_LITERAL_CSTRING("Content-Disposition: inline; filename=\"Deleted: "));
- MimeWriteAString(obj, fileName);
-- MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK"X-Mozilla-Altered: AttachmentDeleted; date=\""));
-+ MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK "X-Mozilla-Altered: AttachmentDeleted; date=\""));
- }
- nsCString result;
- char timeBuffer[128];
-@@ -306,8 +306,8 @@
- "%a %b %d %H:%M:%S %Y",
- &now);
- MimeWriteAString(obj, nsDependentCString(timeBuffer));
-- MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK));
-- MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK"You deleted an attachment from this message. The original MIME headers for the attachment were:"MSG_LINEBREAK));
-+ MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK));
-+ MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK "You deleted an attachment from this message. The original MIME headers for the attachment were:" MSG_LINEBREAK));
- MimeHeaders_write_raw_headers(mult->hdrs, obj->options, false);
- }
- PRInt32 old_nchildren = container->nchildren;
diff --git a/libre/thunderbird-libre/gcc47.patch b/libre/thunderbird-libre/gcc47.patch
deleted file mode 100755
index 080502c23..000000000
--- a/libre/thunderbird-libre/gcc47.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-diff -Nur comm-release.orig/mozilla/ipc/chromium/src/base/file_util_linux.cc comm-release/mozilla/ipc/chromium/src/base/file_util_linux.cc
---- comm-release.orig/mozilla/ipc/chromium/src/base/file_util_linux.cc 2012-04-24 23:15:57.347221336 +0000
-+++ comm-release/mozilla/ipc/chromium/src/base/file_util_linux.cc 2012-04-24 23:18:34.116046872 +0000
-@@ -5,6 +5,9 @@
- #include "base/file_util.h"
-
- #include <fcntl.h>
-+#if defined(ANDROID) || defined(OS_POSIX)
-+#include <unistd.h>
-+#endif
-
- #include <string>
- #include <vector>
-diff -Nur comm-release.orig/mozilla/ipc/chromium/src/base/message_pump_libevent.cc comm-release/mozilla/ipc/chromium/src/base/message_pump_libevent.cc
---- comm-release.orig/mozilla/ipc/chromium/src/base/message_pump_libevent.cc 2012-04-24 23:15:57.353887955 +0000
-+++ comm-release/mozilla/ipc/chromium/src/base/message_pump_libevent.cc 2012-04-24 23:18:34.116046872 +0000
-@@ -6,6 +6,9 @@
-
- #include <errno.h>
- #include <fcntl.h>
-+#if defined(ANDROID) || defined(OS_POSIX)
-+#include <unistd.h>
-+#endif
-
- #include "eintr_wrapper.h"
- #include "base/logging.h"
-diff -Nur comm-release.orig/mozilla/ipc/chromium/src/base/time_posix.cc comm-release/mozilla/ipc/chromium/src/base/time_posix.cc
---- comm-release.orig/mozilla/ipc/chromium/src/base/time_posix.cc 2012-04-24 23:15:57.350554645 +0000
-+++ comm-release/mozilla/ipc/chromium/src/base/time_posix.cc 2012-04-24 23:18:34.116046872 +0000
-@@ -13,6 +13,9 @@
- #else
- #include <time.h>
- #endif
-+#if defined(ANDROID) || defined(OS_POSIX)
-+#include <unistd.h>
-+#endif
-
- #include <limits>
-
diff --git a/libre/thunderbird-libre/mozconfig b/libre/thunderbird-libre/mozconfig
deleted file mode 100755
index 8950db703..000000000
--- a/libre/thunderbird-libre/mozconfig
+++ /dev/null
@@ -1,40 +0,0 @@
-mk_add_options MOZ_CO_PROJECT=mail
-ac_add_options --enable-application=mail
-
-ac_add_options --prefix=/usr
-ac_add_options --libdir=/usr/lib
-
-# System libraries
-ac_add_options --with-system-nspr
-ac_add_options --with-system-nss
-ac_add_options --with-system-jpeg
-ac_add_options --with-system-zlib
-ac_add_options --with-system-bz2
-ac_add_options --with-system-png
-ac_add_options --with-system-libevent
-ac_add_options --with-system-libvpx
-ac_add_options --enable-system-hunspell
-ac_add_options --enable-system-sqlite
-ac_add_options --enable-system-ffi
-#ac_add_options --enable-system-cairo
-ac_add_options --enable-system-pixman
-ac_add_options --with-pthreads
-
-# Features
-ac_add_options --enable-official-branding
-ac_add_options --enable-safe-browsing
-ac_add_options --enable-startup-notification
-ac_add_options --enable-gio
-
-ac_add_options --disable-gnomevfs
-ac_add_options --disable-crashreporter
-ac_add_options --disable-updater
-ac_add_options --disable-tests
-ac_add_options --disable-mochitest
-ac_add_options --disable-installer
-
-# Optimization
-ac_add_options --enable-optimize
-
-export MOZILLA_OFFICIAL=1
-mk_add_options MOZILLA_OFFICIAL=1
diff --git a/libre/thunderbird-libre/rePKGBUILD b/libre/thunderbird-libre/rePKGBUILD
deleted file mode 100755
index 6a0c46222..000000000
--- a/libre/thunderbird-libre/rePKGBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# This is an example rePKGBUILD file. Use this as a start to creating your own,
-# and remove these comments. For more information, see 'man PKGBUILD'.
-# NOTE: Please fill out the license field for your package! If it is unknown,
-# then please put 'unknown'.
-
-# Maintainer: Nicolas Reynolds <fauno@kiwwwi.com.ar>
-source PKGBUILD
-unset build package md5sums source
-_repo=extra
-options=(!strip)
-source=(PKGBUILD
- http://mirrors.kernel.org/archlinux/${_repo}/os/$CARCH/${pkgname%-libre}-$pkgver-$pkgrel-$CARCH$PKGEXT
- # files for pkg modifications
- channel-prefs.js)
-
-build() {
- cd "${srcdir}/"
- rm -v .{INSTALL,PKGINFO} ${pkgname%-libre}-$pkgver-$pkgrel-$CARCH$PKGEXT
-
-# Recommend free addons
- cp --remove-destination "${srcdir}/channel-prefs.js" \
- "${srcdir}/usr/lib/thunderbird/defaults/pref/channel-prefs.js"
-}
-
-package() {
- find ${srcdir} -type l -maxdepth 1 -delete
- cd ${srcdir}
- cp -a ./* ${pkgdir}
-}
diff --git a/libre/thunderbird-libre/searchplugins-libre.patch b/libre/thunderbird-libre/searchplugins-libre.patch
deleted file mode 100755
index e466a9eb3..000000000
--- a/libre/thunderbird-libre/searchplugins-libre.patch
+++ /dev/null
@@ -1,144 +0,0 @@
---- comm-release.orig/mail/locales/en-US/searchplugins/list.txt 2012-03-27 15:56:00.000000000 -0300
-+++ comm-release/mail/locales/en-US/searchplugins/list.txt 2012-04-13 05:43:25.227475353 -0300
-@@ -1,7 +1,5 @@
--amazondotcom
--aol-web-search
--bing
-+duckduckgo-ssl
- eBay
--twitter
-+identica-notice-search
-+identica-people-search
- wikipedia
--yahoo
---- comm-release.orig/mail/locales/en-US/searchplugins/amazondotcom.xml 2012-03-27 15:56:00.000000000 -0300
-+++ /dev/null 2012-04-12 23:52:53.981159155 -0300
-@@ -1,11 +0,0 @@
--<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
--<ShortName>Amazon.com</ShortName>
--<Description>Amazon.com Search</Description>
--<InputEncoding>ISO-8859-1</InputEncoding>
--<Image width="16" height="16">data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHgSURBVHjalFM9TNtQEP4cB7PwM1RITUXIgsRaYEEVEyKZwhiyZAQyd0BhpFOlIjoBqhjSqVQMoVMLLAjEwECCQJkSkBqJYDOAFOMKFSf28d7DTUxiUDnp/Pzeu/vuu7t3ICKF6SLTMv2/lB0fRWKfjwDm4JJisYh0Oo3fpZLYT0SjSCQS8JAFMADNDZ3NZsnf1taiqVTKi4nGASruk5lkkmTmMB6JUKFQqO+DfX1eABWeQoVR6f7HSdM0obqu48Yw8G1tDT82NsRd1TSbU9BbGPCog8PDj+jLzurFoAVgMh4XxoNDQ6SqKi0tL9eBvAB8zZwymYxYY7EYAoEA8vm82BNTg6XUIs0MeGTZoR1mhXSnwNl4pmAbjU7mcjkKhkL1ynMnntZ4OEw3VyrV8utk7s5TdW++0QXz+1i3P7IK36t+PCfVn1OQOoOA0gXr5DPak+cPXbBK+/T3S69AtY3LJ98vZ1or/iLr+pTuvr59/A6s003UdqZFJF/PCKQ3o5CUznoBST2AfbEF/9iqYEDaIfwj73VJPEfgNTe0tWNYR0uwy9uOW0OkrgHI7z5ADo2C7v48nLV3XHKAT+x/1m1sX58xsBxg8rZJrDYD8DHHp4aJj/MK09sXjPOt46PcCzAACXY8/u34wN0AAAAASUVORK5CYII=</Image>
--<Url type="text/html" method="GET" template="http://www.amazon.com/exec/obidos/external-search/">
-- <Param name="field-keywords" value="{searchTerms}"/>
-- <Param name="mode" value="blended"/>
--</Url>
--<SearchForm>http://www.amazon.com/</SearchForm>
--</SearchPlugin>
---- comm-release.orig/mail/locales/en-US/searchplugins/aol-web-search.xml 2012-03-27 15:56:00.000000000 -0300
-+++ /dev/null 2012-04-12 23:52:53.981159155 -0300
-@@ -1,10 +0,0 @@
--<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/">
--<os:ShortName>AOL Web Search</os:ShortName>
--<os:Description>The AOL Search engine delivers great web search results, enhanced by Google, plus relevant multimedia results delivered on a single page-so you can search less and discover more.</os:Description>
--<os:InputEncoding>UTF-8</os:InputEncoding>
--<os:Image width="16" height="16">data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%10%00%00%00%10%08%06%00%00%00%1F%F3%FFa%00%00%00%06bKGD%00%FF%00%FF%00%FF%A0%BD%A7%93%00%00%00%09pHYs%00%00%00H%00%00%00H%00F%C9k%3E%00%00%00%FAIDAT8%CB%9D%D3%B1q%C2%40%10%85%E1%0F%8F%0B%A0%04%97%00%1D%40%05%C6%01%B9%95*1%AA%C0C%05%E0%84%D4%E4%0A%0C%15H%EE%40%1D%98%12%D4%81%1D%E84%C8B%60%C9%2F9%AD%EE%EE%9F%DD%B7%7B%23%B0%DC%7D%A3D%22%8D%F7%06h%D4%00%D4*%02(%EF%03%B8%EB%F87Af%B9%7B%EF%03%B8o%C59%DE%A4%F1%E1%3F%25%EC%91%60%83%87%B0%FF%89m%F8%5Et%F9S%032%3C%E1%0B%E3%D6%99%02s%7C%848%91%C6E%1B0%C1%0B%9E%AFd%9A%E0%D4%80l%B1%96%C6eebE%9C%DC(%F51dRk%15%B2%FD%D5%85%B1a*%CF%80%AA%84%FC%C6%E1%23f%8Dx%8D)%E76n%10aq%C5%C4%03%B2%B0%26%D2%F8To%D6%80Y0q%8AW%97m%1C%23%EA%9A%CE%E6%20%AD%82%91%5D%83T%AA%BAp%A1%AE%B7Pk%2F%8D%A3%BF%9C%ECz%0B9%E6%7D.7K(%C3%3A%F89%FF%00_%82G%C3%D5%0E(%3E%00%00%00%00IEND%AEB%60%82</os:Image>
--<SearchForm>http://search.aol.com</SearchForm>
--<os:Url type="text/html" method="GET" template="http://search.aol.com/aol/search">
-- <os:Param name="query" value="{searchTerms}"/>
--</os:Url>
--</SearchPlugin>
---- comm-release.orig/mail/locales/en-US/searchplugins/bing.xml 2012-03-27 15:56:00.000000000 -0300
-+++ /dev/null 2012-04-12 23:52:53.981159155 -0300
-@@ -1,21 +0,0 @@
--<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
-- <ShortName>Bing</ShortName>
-- <Description>Bing. Search by Microsoft.</Description>
-- <InputEncoding>UTF-8</InputEncoding>
-- <Image width="16" height="16" type="image/x-icon">data:image/x-icon;base64,AAABAAEAEBAAAAEAGABoAwAAFgAAACgAAAAQAAAAIAAAAAEAGAAAAAAAAAAAABMLAAATCwAAAAAAAAAAAAAVpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8ysf97zf+24//F6f/F6f/F6f+K0/9QvP8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8krP+Z2P/////////w+f/F6f/F6f/i9P/////////T7v9Bt/8Vpv8Vpv8Vpv8Vpv/T7v/////w+f97zf8Vpv8Vpv8Vpv8Vpv9QvP/T7v/////w+f9Bt/8Vpv8Vpv97zf////////9QvP8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8krP/i9P/////i9P8Vpv8Vpv+24//////i9P8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv+K0/////////8Vpv8Vpv/F6f////////8krP8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv+n3v/////w+f8Vpv8Vpv/F6f////////+n3v8krP8Vpv8Vpv8Vpv8Vpv8Vpv9tx/////////+Z2P8Vpv8Vpv/F6f/////////////i9P+K0/9QvP9QvP9tx//F6f////////+n3v8Vpv8Vpv8Vpv/F6f/////T7v+Z2P/i9P////////////////////+24/9QvP8Vpv8Vpv8Vpv8Vpv/F6f/////F6f8Vpv8Vpv8krP9QvP9QvP9Bt/8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv/F6f/////F6f8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv9Bt/9QvP9Bt/8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8Vpv8AAHBsAABhdAAAbiAAAHJ0AABsaQAAdGkAACBDAABlbgAAUEEAAEVYAAAuQwAAOy4AAEU7AABBVAAAQ00AAC5W</Image>
-- <Url type="application/x-suggestions+json" template="http://api.bing.com/osjson.aspx">
-- <Param name="query" value="{searchTerms}"/>
-- <Param name="form" value="OSDJAS"/>
-- </Url>
-- <Url type="text/html" method="GET" template="http://www.bing.com/search">
-- <Param name="q" value="{searchTerms}"/>
-- <Param name="form" value="MOZESB"/>
-- <MozParam name="pc" condition="pref" pref="ms-pc"/>
-- </Url>
-- <Url type="application/x-moz-keywordsearch" method="GET" template="http://www.bing.com/search">
-- <Param name="q" value="{searchTerms}"/>
-- <Param name="form" value="MOZESB"/>
-- <MozParam name="pc" condition="pref" pref="ms-pc"/>
-- </Url>
-- <SearchForm>http://www.bing.com/search</SearchForm>
--</SearchPlugin>
---- comm-release.orig/mail/locales/en-US/searchplugins/google.xml 2012-03-27 15:56:00.000000000 -0300
-+++ /dev/null 2012-04-12 23:52:53.981159155 -0300
-@@ -1,14 +0,0 @@
--<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
--<ShortName>Google</ShortName>
--<Description>Google Search</Description>
--<InputEncoding>UTF-8</InputEncoding>
--<Image width="16" height="16">data:image/png;base64,AAABAAEAEBAAAAEAGABoAwAAFgAAACgAAAAQAAAAIAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs9Pt8xetPtu9FsfFNtu%2BTzvb2%2B%2Fne4dFJeBw0egA%2FfAJAfAA8ewBBegAAAAD%2B%2FPtft98Mp%2BwWsfAVsvEbs%2FQeqvF8xO7%2F%2F%2F63yqkxdgM7gwE%2FggM%2BfQA%2BegBDeQDe7PIbotgQufcMufEPtfIPsvAbs%2FQvq%2Bfz%2Bf%2F%2B%2B%2FZKhR05hgBBhQI8hgBAgAI9ewD0%2B%2Fg3pswAtO8Cxf4Kw%2FsJvvYAqupKsNv%2B%2Fv7%2F%2FP5VkSU0iQA7jQA9hgBDgQU%2BfQH%2F%2Ff%2FQ6fM4sM4KsN8AteMCruIqqdbZ7PH8%2Fv%2Fg6Nc%2Fhg05kAA8jAM9iQI%2BhQA%2BgQDQu6b97uv%2F%2F%2F7V8Pqw3eiWz97q8%2Ff%2F%2F%2F%2F7%2FPptpkkqjQE4kwA7kAA5iwI8iAA8hQCOSSKdXjiyflbAkG7u2s%2F%2B%2F%2F39%2F%2F7r8utrqEYtjQE8lgA7kwA7kwA9jwA9igA9hACiWSekVRyeSgiYSBHx6N%2F%2B%2Fv7k7OFRmiYtlAA5lwI7lwI4lAA7kgI9jwE9iwI4iQCoVhWcTxCmb0K%2BooT8%2Fv%2F7%2F%2F%2FJ2r8fdwI1mwA3mQA3mgA8lAE8lAE4jwA9iwE%2BhwGfXifWvqz%2B%2Ff%2F58u%2Fev6Dt4tr%2B%2F%2F2ZuIUsggA7mgM6mAM3lgA5lgA6kQE%2FkwBChwHt4dv%2F%2F%2F728ei1bCi7VAC5XQ7kz7n%2F%2F%2F6bsZkgcB03lQA9lgM7kwA2iQktZToPK4r9%2F%2F%2F9%2F%2F%2FSqYK5UwDKZAS9WALIkFn%2B%2F%2F3%2F%2BP8oKccGGcIRJrERILYFEMwAAuEAAdX%2F%2Ff7%2F%2FP%2B%2BfDvGXQLIZgLEWgLOjlf7%2F%2F%2F%2F%2F%2F9QU90EAPQAAf8DAP0AAfMAAOUDAtr%2F%2F%2F%2F7%2B%2Fu2bCTIYwDPZgDBWQDSr4P%2F%2Fv%2F%2F%2FP5GRuABAPkAA%2FwBAfkDAPAAAesAAN%2F%2F%2B%2Fz%2F%2F%2F64g1C5VwDMYwK8Yg7y5tz8%2Fv%2FV1PYKDOcAAP0DAf4AAf0AAfYEAOwAAuAAAAD%2F%2FPvi28ymXyChTATRrIb8%2F%2F3v8fk6P8MAAdUCAvoAAP0CAP0AAfYAAO4AAACAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAQAA</Image>
--<Url type="application/x-suggestions+json" method="GET" template="http://suggestqueries.google.com/complete/search?output=firefox&amp;hl={moz:locale}&amp;q={searchTerms}"/>
--<Url type="text/html" method="GET" template="http://www.google.com/search">
-- <Param name="q" value="{searchTerms}"/>
-- <Param name="ie" value="utf-8"/>
-- <Param name="oe" value="utf-8"/>
-- <Param name="aq" value="t"/>
--</Url>
--<SearchForm>http://www.google.com</SearchForm>
--</SearchPlugin>
---- comm-release.orig/mail/locales/en-US/searchplugins/twitter.xml 2012-03-27 15:56:00.000000000 -0300
-+++ /dev/null 2012-04-12 23:52:53.981159155 -0300
-@@ -1,10 +0,0 @@
--<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
--<ShortName>Twitter Search</ShortName>
--<Description>Realtime Twitter Search</Description>
--<InputEncoding>UTF-8</InputEncoding>
--<Image width="16" height="16">data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%20%00%00%00%20%08%06%00%00%00szz%F4%00%00%00%19tEXtSoftware%00Adobe%20ImageReadyq%C9e%3C%00%00%06%60IDATx%DA%ACWMLSY%14%BE%F7%F5%97%B6%96%96%16P%84q%02H%A0%01%85%08%26%C4%18%C9D%60%D8L2%0Bfm2%89%86%85%3B%E2l%5D%BA%9Ad%E2%CEY%B8%18c2a%8C%B3%10%893%02e%98d%F0%07%22c%D0%22%88%C4%01K)%D0%3F%FA%FF%DE%BB%F3%DD%F7Z%82%B5%16%A8%DE%E4%B6%AF%AF%EF%DD%F3%DDs%BEs%BEs)c%8C%F0A)%25%D9q%F9%F2eC%7F%7F%7F%1D.%BF%12%04%A1%F30F%22%91%10%A3%D1%E8%92%C1%60ponn%FE%3D99%E9%BDz%F5%AAL%3Ea(%B6%F9G%16%04%1F%83%83%83%E6%B1%B1%B1oVVV%86%E2%F1%F8%7F%C9d2%22%8Ab%2C%95J%C5p%1D%8A%C5b%9E%85%85%85%1F%EF%DF%BF%DF%06%90%9A%CF%0A%00%3B%D2%3Fy%F2%A4okkk%0C%06%A3%B8%CF%D22c1%91%B1%B8%C4%98%84kY%96%19%3C%B1%B6%B8%B8%F83F%13w%DE%E7%02%40%1F%3E%7CX%BB%BA%BAz%0B%C6%23%DCx%24%CD%D8%F30c%7F%FAe%E6%DE%90%D9%1B%40JIL%19%E1px%05%5E%F8a%60%60%C0%FE)%00%B4%D9%1F%D8%BDA%92%A4%13v%BB%FD%8CN%A7%B3D%25B%A6%02%8C%3C%0E2%12H1%A2%C1%3EkJ(%E9rP%D2x%88%92%92%92%92J%97%CB%F5%F5%F2%F2%F2%08%5E%0FcJ%C5%80%D8%01p%EC%D81%23%10%B94%1A%8DM%82C%BC%09BfB%8C%F8%93%8Cp~%8A%A0%DB%9B%18%23V%1D!%D5%00R%AA%D3j%9DNg%3D%80%B8n%DF%BE%ED%EB%EC%ECL%EE%5E8%18%0C%12%84J%9A%9B%9BK%5C%BAt)%BD'%00%B0%5D%83Lp%02%84%86%03%88%88%8C%84E%D5%B8%40%D4H%F3%FB~%98%89c%AF%1C%08%3CU%D6%D6%D6%F6%9D%CDfs%99%CD%E64%F8%B1%C3%07%AC%25%E9%F5%FA%8D%8E%8E%0E%CF%F8%F8%F8%FC%C4%C4%C4z%BE%AC%D1%E6%FC%D6dl%91%EC%93%BB%19%C6%C1H%84%E1%3F%CE%1BJ%60%C0%D4%D4%D4%D4%AB%D5j%BBr%C9%98%E1V%1A%E9%EB%F5%F9%7C%7F%9C%3Bw%EE%D7%8B%17%2F%CE%DE%B8q%23%5D%08%40%C1A3%93%7B%22%8DI9w%B5z%93H%88%E9%83g%E16-%1E%B6X%2C%0E%84%F5%08%C0V%9D%3F%7F%FE%A7%40%200%3D44%24%15%0D%20%81W%E7%B7%19%F1%26%0B%E7%9F%11%00%1CzJ%9Cz%22%80'%E5eee%3D%B5%B5%B5%1B%ED%ED%ED%EF%00%60%A5(%00%0A%B9%E0%C0%F1%0D%BEuV%F09%9E5%87%0D%94%9C%B6S%D2b%A5%C4d29%EB%EA%EA%BE%9E%99%99%19%ED%EA%EA%DAp%BB%DD%09%85%7B%C5%A4NB%DE%7Bn%23.%8BQF%FEA*%AF'9%5CJP%C6%2B0%DBz%7B%7BKv%C8_%0C%00%BA%8F)P%D5G%3E%A4%F1%26%08%23%AA%0E%D3%19%8D%C6%A3%C8%16%FD'%018%C8%1023%ABu(v4%9DNgq%1E%9C%03d%CF%E8%ABCfd%A7zV%80%8C%3C%23R%B2%9C%0E%85B%3E%BF%DF%9F%CE.s%60%00%DC%B5%A5Z%F5%BB0%09)%A92%12%D2%5E%8AL0%A8%85%01)%E8%F7z%BDsSSS%F1%A2%B2%80C%B6%A3%02v%97%0B%CA%A2TY7%0FG%A8%0A%E0%10%CA%9AE%ABz%C2%EF%DF%D8z%F4%E8%91%7Bzz%FA%19f%B2%E84%D4!%A0G%60%BC%D2H%F7%24%10%F7%12%E2-n%05%83%5BH%BF%C9%7B%F7%EE%0D%0D%0F%0F%2F%EF%16.m1%F1%CF%EA%C3%5Ea%E0%C6%D1%BC%2CC%07%1E%8C%8E%8E%FE~%E7%CE%9D%C7%3C%8BsI%BA%BB~%B3%BDH%26g%CA%F0~%DA%10%A6%F4%2Fr%10%A5x%B1%B2%B2r%1E%B7%22%B9%CB%EFx%00%82%22%A3%F5%8AB%C5d%BEC%BD%A0%C6.w%F0%02%F36F%88%13%5C0%EF%E1%3F%D4%7F%7DCCC3%A4%FEBww%B7%EE%E4%C9%93%B7%20%CD%DE%BC%1E%98%9D%9D%15%A1%E1k%40%2CrI%2CE%DE%98%81%20%D7%1B1D%EF)%9A%14tJ%8A4%87E.%DD%1FN~%9F%CB%B6N%AF7B%90N%94%97%97%7F%7F%FC%F8%F1o%A1%88%A5y%3D%80%064%05%97-!n%DB(%97%0E%0E%80%A7%91%2F%99%89%7Bf%F2%EB%95%04%23%0F%FC%10%1B4%2C%5Cth%1EO%F1M%1C%C6%FB'%AC%02%BE)%85%16%D4566%F6%9F%3Auj%1A%7F%3D%CD%12q%C7%03%D7%AF_O%A1%C1XX__%7F%89j%952a%85F%0BUr%5Ef%EF%97a%3Ex%B3%C2%3B%A4%97P%C6%17%91%0F%E7%BF%F0%D0%C4%86%3A%03)%A5%E1%D1Z%ADV%DEqu%5C%B9r%C5%94%8F%84%CC%E3%F1%AC%A3%85%FA%0BMD%88%A7%5B%BD%99%12%17%FA%3F%83%A0%F6%00%B9ZPP%2F%F0%40%1C%A2%B4%00A%E2z%C0%B5%00%C6%E1%08SCEE%85!o%16%A0e%8A%A0L%8E%A2-%9F%85%17%D2%A5%20%DAi%BB%A0%82%D0%A8%20%D8%01D%89%A7i%12%EEK%CA%AA%17%11b8B%B0%80g%DA%8Fi%81%84%5C%F5%A0%D9%FC%0D%C4%F9%02MDC5%E2%D8%E5%14%00%40%26sp%2B%EF%96%E5%7Dx%80e%AA%A4MG%89%15%7C%D2(%ED%1C%91%E1%DD%08%0E7%F2G%0B%D1%C8%C8H%B8%BE%BE~%18%00%8E%B6%B6%B6%5Ep8%1C55Po%B3F%20%D5FF%3C%88%EF%BB%04%CF%06%F6%5EX%F2%15%2B%1BD%A8%0DZ%C0%C9%C8%01%80%E8%DBkkk%8B(%C9%89%82b%04B%AEB%B7%7F%C1%A5%01%20x%D7%5B%E3%D0k4%ED6%AA%10%937%18%5C%E3%A3%A2%1A%16%9A%07%80%5E%A3vD_*%E0%15%E3%C9%D7%AF_%3F%C7%89%EA%196%19%CF%ED%5E%F3%F2%08%A7%9EZ%F4o%83x%F11NB!%14*)%7B%5CKH%EA%91%AD%D0%E4%CF%F1%C1%8D%BFz%F5%EA%D9%B5k%D7%06%AA%AA%AA%9C%D9%08r%BB4%DF%E9x7%88%BE%BE%3E%E7%D9%B3g%CF477%F7%B5%B4%B4t%22%24UHWd6%E5%E7%08%0Af%D3%DC%0D%F0%B5%F8%19%92%D7a%C4%3B%B6%B4%B4%F4%12%C7%BE%BB7o%DE%BC%3B%3F%3F%FF6%5B%03%F6%03%40%19%D5%D5%D5%25%3D%3D%3DG%90%C7%AD%A8%E9%EDh.%1BA%D4%0A%FC6%E1%5BGs%5E%86%5D%02%EDO%E3%3C%10x%81%81*%EB%86%18M%E1%DC%B9%86%BF%C5%DD%DE%FF_%80%01%00%94%13%9D%26%E9%81%03P%00%00%00%00IEND%AEB%60%82</Image>
--<Url type="text/html" method="get"
-- template="http://search.twitter.com/search?q={searchTerms}"/>
--<SearchForm>http://search.twitter.com/</SearchForm>
--</SearchPlugin>
--
---- comm-release.orig/mail/locales/en-US/searchplugins/yahoo.xml 2012-03-27 15:56:00.000000000 -0300
-+++ /dev/null 2012-04-12 23:52:53.981159155 -0300
-@@ -1,13 +0,0 @@
--<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
--<ShortName>Yahoo</ShortName>
--<Description>Yahoo Search</Description>
--<InputEncoding>UTF-8</InputEncoding>
--<Image width="16" height="16">data:image/x-icon;base64,AAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbgJqAIoCdgCaAnoAnhKCAKYijgCuLpIAskKeALpSpgC+Yq4AzHy8ANqezgDmvt4A7tLqAPz5+wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKlRFIoABWAKERERE6ADcKMzzu2hOgAAhERK8REWCWBERE36ERMHMEREvo6iEgY6hEn6Pu0mAzqkz/xjMzoDNwpERERDoAMzAKlERIoAAzMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wAA//8AAP//AADAOQAAgBkAAAAPAAAACQAAAAkAAAAIAAAACAAAAAgAAIAYAADAOAAA//8AAP//AAD//wAA</Image>
--<Url type="application/x-suggestions+json" method="GET"
-- template="http://ff.search.yahoo.com/gossip?output=fxjson&amp;command={searchTerms}" />
--<Url type="text/html" method="GET" template="http://search.yahoo.com/search">
-- <Param name="p" value="{searchTerms}"/>
-- <Param name="ei" value="UTF-8"/>
--</Url>
--<SearchForm>http://search.yahoo.com/</SearchForm>
--</SearchPlugin>
---- /dev/null 2012-04-12 23:52:53.981159155 -0300
-+++ comm-release/mail/locales/en-US/searchplugins/duckduckgo-ssl.xml 2012-04-09 14:43:56.000000000 -0300
-@@ -0,0 +1,11 @@
-+<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/">
-+<os:ShortName>DuckDuckGo RU SSL</os:ShortName>
-+<os:Description>DDG Search + Google's suggestions (Russian)</os:Description>
-+<os:InputEncoding>UTF-8</os:InputEncoding>
-+<os:Image width="16" height="16">data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAANcNAADXDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJyDsJmlk8pf6+v3s/v7+++zr/fcnIOyzJyDsgCcg7CYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnIOwBJyDscCcg7PZttJ7/7Pfs//////++xO7/S5GA/ycg7P8nIOz2JyDscCcg7AEAAAAAAAAAAAAAAAAnIOwBJyDstScg7P8nIOz/Y8p5/2fHZf9Yv0z/YcF2/1rBUv8nIOz/JyDs/ycg7P8nIOy1JyDsAQAAAAAAAAAAJyDscCcg7P8nIOz/JyDs/4jQoP/p9+n//////05X3v9LkYD/JyDs/ycg7P8nIOz/JyDs/ycg7HAAAAAAJyDsJicg7PYnIOz/JyDs/zUu7f/+/v////////////89N+7/JyDs/yUo7f8nIOz/JyDs/ycg7P8nIOz2JyDsJicg7IAnIOz/JyDs/ycg7P9hXPH////////////t/P//GIr2/wfD+/8Gyfz/DKv5/yM57/8nIOz/JyDs/ycg7H8nIOyzJyDs/ycg7P8nIOz/jov1////////////Otz9/w3G/P8cWfH/JSvt/ycg7P8nIOz/JyDs/ycg7P8nIOyzJyDs5icg7P8nIOz/JyDs/7u5+f///////////27l/v8E0v3/BNL9/wTQ/f8Oofn/IT7v/ycg7P8nIOz/JyDs5icg7OYnIOz/JyDs/ycg7P/p6P3/uWsC////////////5fr//6Po/f8Thfb/DKv5/w6f+f8nIOz/JyDs/ycg7OYnIOyzJyDs/ycg7P8nIOz/9/b+/////////////////7lrAv/V1Pv/JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOyzJyDsgCcg7P8nIOz/JyDs/8/N+///////////////////////iIX1/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDsfycg7CYnIOz2JyDs/ycg7P9FP+7/q6n4/+7u/f/n5v3/fXn0/yoj7P8nIOz/JyDs/ycg7P8nIOz/JyDs9icg7CYAAAAAJyDscCcg7P8nIOz/wsD6/+no/f/Y1/z/eHTz/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs/ycg7HAAAAAAAAAAACcg7AEnIOy1JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs/ycg7LUnIOwBAAAAAAAAAAAAAAAAJyDsAScg7HAnIOz2JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs9icg7HAnIOwBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJyDsJicg7IAnIOyzJyDs5icg7OYnIOyzJyDsgCcg7CYAAAAAAAAAAAAAAAAAAAAA+B8AAPAPAADAAwAAwAMAAIABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAACAAQAAwAMAAMADAADwDwAA+B8AAA==</os:Image>
-+<SearchForm>https://duckduckgo.com/</SearchForm>
-+<os:Url type="text/html" method="GET" template="https://duckduckgo.com/?q={searchTerms}&amp;kl=ru-ru">
-+</os:Url><os:Url type="application/x-suggestions+json" method="GET" template="http://ddgg.nfriedly.com/complete/search?output=firefox&amp;hl=ru&amp;q={searchTerms}">
-+</os:Url><os:Url type="application/opensearchdescription+xml" method="GET" template="http://mycroft.mozdev.org/updateos.php/id0/duckduckgo_ssl.xml" rel="self">
-+</os:Url>
-+</SearchPlugin>
---- /dev/null 2012-04-12 23:52:53.981159155 -0300
-+++ comm-release/mail/locales/en-US/searchplugins/identica-notice-search.xml 2012-04-13 05:15:55.000000000 -0300
-@@ -0,0 +1,7 @@
-+<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/">
-+<os:ShortName>Identi.ca Notice Search</os:ShortName>
-+<os:InputEncoding>UTF-8</os:InputEncoding>
-+<os:Image width="16" height="16">data:image/x-icon;base64,AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAABGD6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQAAAAAAAAEBAQEBAQEBAQEAAAAAAAABAQEBAQEBAQEBAAAAAAAAAQEBAQEBAQEBAQAAAAAAAAEBAQEBAQEBAQEAAAAAAAABAQEBAQEBAQEBAAAAAAAAAQEBAQEBAQEBAQAAAAAAAAEBAQEBAQEBAQEAAAAAAAABAQEBAQEBAQEBAAAAAAAAAQEBAQEBAQEBAQAAAAAAAAEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAA//8AAOAHAADgBwAA4AcAAOAHAADgBwAA4AcAAOAHAADgBwAA4AcAAOAHAADgBwAA//8AAP//AAA=</os:Image>
-+<os:Url type="text/html" method="GET" template="http://identi.ca/search/notice?q={searchTerms}">
-+</os:Url>
-+</SearchPlugin>
---- /dev/null 2012-04-12 23:52:53.981159155 -0300
-+++ comm-release/mail/locales/en-US/searchplugins/identica-people-search.xml 2012-04-13 05:15:53.000000000 -0300
-@@ -0,0 +1,7 @@
-+<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/">
-+<os:ShortName>Identi.ca People Search</os:ShortName>
-+<os:InputEncoding>UTF-8</os:InputEncoding>
-+<os:Image width="16" height="16">data:image/x-icon;base64,AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAABGD6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQAAAAAAAAEBAQEBAQEBAQEAAAAAAAABAQEBAQEBAQEBAAAAAAAAAQEBAQEBAQEBAQAAAAAAAAEBAQEBAQEBAQEAAAAAAAABAQEBAQEBAQEBAAAAAAAAAQEBAQEBAQEBAQAAAAAAAAEBAQEBAQEBAQEAAAAAAAABAQEBAQEBAQEBAAAAAAAAAQEBAQEBAQEBAQAAAAAAAAEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAA//8AAOAHAADgBwAA4AcAAOAHAADgBwAA4AcAAOAHAADgBwAA4AcAAOAHAADgBwAA//8AAP//AAA=</os:Image>
-+<os:Url type="text/html" method="GET" template="http://identi.ca/search/people?q={searchTerms}">
-+</os:Url>
-+</SearchPlugin>
diff --git a/libre/thunderbird-libre/thunderbird-install-dir.patch b/libre/thunderbird-libre/thunderbird-install-dir.patch
deleted file mode 100755
index 74e692bf2..000000000
--- a/libre/thunderbird-libre/thunderbird-install-dir.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-diff -Nur comm-beta.orig/config/autoconf.mk.in comm-beta/config/autoconf.mk.in
---- comm-beta.orig/config/autoconf.mk.in 2011-11-06 14:39:51.064983780 +0000
-+++ comm-beta/config/autoconf.mk.in 2011-11-06 14:42:57.216735333 +0000
-@@ -65,8 +65,8 @@
- mandir = @mandir@
- idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-
--installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
--sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
-+installdir = $(libdir)/$(MOZ_APP_NAME)
-+sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel
-
- MOZDEPTH = $(DEPTH)/mozilla
- DIST = $(MOZDEPTH)/dist
-diff -Nur comm-beta.orig/mozilla/config/autoconf.mk.in comm-beta/mozilla/config/autoconf.mk.in
---- comm-beta.orig/mozilla/config/autoconf.mk.in 2011-11-06 14:39:41.771562967 +0000
-+++ comm-beta/mozilla/config/autoconf.mk.in 2011-11-06 14:44:18.404165515 +0000
-@@ -68,8 +68,8 @@
- mandir = @mandir@
- idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-
--installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
--sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
-+installdir = $(libdir)/$(MOZ_APP_NAME)
-+sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel
-
- DIST = $(DEPTH)/dist
- LIBXUL_SDK = @LIBXUL_SDK@
-diff -Nur comm-beta.orig/mozilla/js/src/config/autoconf.mk.in comm-beta/mozilla/js/src/config/autoconf.mk.in
---- comm-beta.orig/mozilla/js/src/config/autoconf.mk.in 2011-11-06 14:39:48.014955070 +0000
-+++ comm-beta/mozilla/js/src/config/autoconf.mk.in 2011-11-06 14:44:32.977635875 +0000
-@@ -61,8 +61,8 @@
- datadir = @datadir@
- mandir = @mandir@
-
--installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
--sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
-+installdir = $(libdir)/$(MOZ_APP_NAME)
-+sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel
-
- TOP_DIST = @TOP_DIST@
- ifneq (,$(filter /%,$(TOP_DIST)))
diff --git a/libre/thunderbird-libre/thunderbird.desktop b/libre/thunderbird-libre/thunderbird.desktop
deleted file mode 100755
index a626e52ba..000000000
--- a/libre/thunderbird-libre/thunderbird.desktop
+++ /dev/null
@@ -1,13 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Name=Thunderbird
-Comment=Mail & News Reader
-GenericName=Mail Client & News Reader
-Exec=thunderbird %u
-TryExec=thunderbird
-Icon=thunderbird
-Terminal=false
-Type=Application
-Categories=Network;Email;
-MimeType=message/rfc822;x-scheme-handler/mailto;
-StartupNotify=true
diff --git a/libre/thunderbird-libre/thunderbird.install b/libre/thunderbird-libre/thunderbird.install
deleted file mode 100755
index 4d4a283db..000000000
--- a/libre/thunderbird-libre/thunderbird.install
+++ /dev/null
@@ -1,12 +0,0 @@
-post_install() {
- update-desktop-database -q
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
-}
-
-post_upgrade() {
- post_install
-}
-
-post_remove() {
- post_install
-}
diff --git a/libre/thunderbird-libre/vendor.js b/libre/thunderbird-libre/vendor.js
deleted file mode 100755
index 170b505a8..000000000
--- a/libre/thunderbird-libre/vendor.js
+++ /dev/null
@@ -1,9 +0,0 @@
-// Use LANG environment variable to choose locale
-pref("intl.locale.matchOS", true);
-
-// Disable default mailer checking.
-pref("mail.shell.checkDefaultMail", false);
-
-// Don't disable our bundled extensions in the application directory
-pref("extensions.autoDisableScopes", 11);
-pref("extensions.shownSelectionUI", true);
diff --git a/libre/unarchiver/PKGBUILD b/libre/unar/PKGBUILD
index 9921c6d9d..e1664e809 100755
--- a/libre/unarchiver/PKGBUILD
+++ b/libre/unar/PKGBUILD
@@ -1,27 +1,25 @@
# Maintainer: Cedric Girard <girard.cedric@gmail.com>
# Contributor: N30N <archlinux@alunamation.com>
-pkgname=unarchiver
-pkgver=3.2
+pkgname=unar
+pkgver=1.4
pkgrel=1
pkgdesc="An Objective-C application for uncompressing archive files"
-arch=('x86_64' 'i686')
+arch=('x86_64' 'i686' 'mips64el')
url="http://unarchiver.c3.cx/"
license=('LGPL2.1')
depends=('gnustep-base' 'openssl' 'bzip2' 'icu' 'gcc-libs' 'zlib')
makedepends=('gcc-objc')
-source=("http://theunarchiver.googlecode.com/files/TheUnarchiver${pkgver}_src.zip"
- "native_obj_exceptions.patch"
- "libz.patch")
-md5sums=('a23d7fbfe1f66b0950a359f206df5c8d'
- '4fa4ecc6e4ba14d3b6952d064e728511'
- '665d01bf93191cc6f57dc80d8c1d3d5a')
+replaces=("unarchiver")
+conflicts=("unarchiver")
+provides=("unarchiver")
+source=("http://theunarchiver.googlecode.com/files/${pkgname}${pkgver}_src.zip"
+ "native_obj_exceptions.patch")
build() {
cd "$srcdir/The Unarchiver"
patch -p1 < ../native_obj_exceptions.patch
- patch -p1 < ../libz.patch
cd XADMaster
. /usr/share/GNUstep/Makefiles/GNUstep.sh
@@ -40,3 +38,5 @@ package() {
}
# vim:set ts=2 sw=2 et:
+md5sums=('ae5233dd835229f867f0948d28dde0d6'
+ '4fa4ecc6e4ba14d3b6952d064e728511')
diff --git a/libre/unarchiver/libz.patch b/libre/unar/libz.patch
index acba51463..acba51463 100755
--- a/libre/unarchiver/libz.patch
+++ b/libre/unar/libz.patch
diff --git a/libre/unarchiver/native_obj_exceptions.patch b/libre/unar/native_obj_exceptions.patch
index 9c84918b2..9c84918b2 100755
--- a/libre/unarchiver/native_obj_exceptions.patch
+++ b/libre/unar/native_obj_exceptions.patch
diff --git a/libre/unrar-libre/PKGBUILD b/libre/unrar-libre/PKGBUILD
deleted file mode 100755
index e08e90220..000000000
--- a/libre/unrar-libre/PKGBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Maintainer: Joshua Ismael Haase Hernández <hahj87@gmail.com>
-_pkgbase=unrar
-pkgname=unrar-libre
-pkgver=0.0.1
-pkgrel=1
-pkgdesc="A free software library to decompress .rar files."
-arch=('i686' 'x86_64')
-url="http://gna.org/projects/unrar/"
-license=('GPL')
-provides=(unrar)
-conflicts=(unrar)
-replaces=(unrar)
-source=(http://download.gna.org/unrar/$_pkgbase-$pkgver.tar.gz)
-md5sums=('ac284a6739e3b8c794e7f9e8c20ed8f8') #generate with 'makepkg -g'
-
-build() {
- cd "$srcdir/$_pkgbase-$pkgver"
-
- ./configure --prefix=/usr
- make
-}
-
-package() {
- cd "$srcdir/$_pkgbase-$pkgver"
-
- make DESTDIR="$pkgdir/" install
-}
-
-# vim:set ts=2 sw=2 et:
diff --git a/libre/xulrunner-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch b/libre/xulrunner-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch
index a5fe02165..69fe5c072 100755
--- a/libre/xulrunner-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch
+++ b/libre/xulrunner-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch
@@ -267,10 +267,10 @@ index f35c227..7062886 100644
%{C++
diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp
-index 60348b5..c240c4f 100644
+index 68a52e6..02bb30e 100644
--- a/toolkit/xre/nsAppRunner.cpp
+++ b/toolkit/xre/nsAppRunner.cpp
-@@ -3651,7 +3651,7 @@ XREMain::XRE_mainRun()
+@@ -3669,7 +3669,7 @@ XREMain::XRE_mainRun()
if (gDoProfileReset) {
// Automatically migrate from the current application if we just
// reset the profile.
diff --git a/libre/xulrunner-libre/PKGBUILD b/libre/xulrunner-libre/PKGBUILD
index 745723604..e9cd2a447 100755
--- a/libre/xulrunner-libre/PKGBUILD
+++ b/libre/xulrunner-libre/PKGBUILD
@@ -6,7 +6,7 @@
# We're getting this from Debian Experimental
_debname=iceweasel
-_debver=16.0.2
+_debver=17.0
_debrel=1
_debrepo=http://ftp.debian.org/debian/pool/main/
debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; }
@@ -18,7 +18,7 @@ pkgrel=1
pkgdesc="Mozilla Runtime Environment"
arch=('i686' 'x86_64' 'mips64el')
license=('MPL' 'GPL' 'LGPL')
-depends=('gtk2' 'mozilla-common' 'nss>=3.13.1' 'libxt' 'libxrender' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib' 'alsa-lib' 'libevent' 'sqlite3>=3.7.4' 'libnotify' 'libvpx' 'python2')
+depends=('gtk2' 'mozilla-common' 'nss>=3.13.1' 'libxt' 'libxrender' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib' 'alsa-lib' 'libevent' 'sqlite3>=3.7.4' 'libvpx' 'python2')
makedepends=('zip' 'unzip' 'pkg-config' 'diffutils' 'wireless_tools' 'yasm' 'mesa' 'autoconf2.13' 'quilt')
url="http://wiki.mozilla.org/XUL:Xul_Runner"
source=("${_debrepo}/`debfile ${_debname}`_${_debver}.orig.tar.bz2"
@@ -30,11 +30,11 @@ options=('!emptydirs')
conflicts=('xulrunner')
provides=("xulrunner=${_debver}")
replaces=('xulrunner-oss' 'xulrunner')
-md5sums=('4a4f19048e34f7f0a2d28adc351df1ed'
- 'ee38477dd7ede1c32e559ee74139b5c9'
+md5sums=('3e555026478026987753b4859ec91d3b'
+ '9b07815d94b8190c780fac10009025b9'
'f2f4f4a573f549e8b494e33b3ad226bc'
'27271ce647a83906ef7a24605e840d61'
- '0a31239f1008038df5057982fe745dec')
+ '65f68090d2a69b467bd2707d0c4ea3bd')
build() {
export QUILT_PATCHES=debian/patches