diff options
61 files changed, 2560 insertions, 332 deletions
diff --git a/community/dictd/PKGBUILD b/community/dictd/PKGBUILD index 45d949f41..128ebd9e2 100644 --- a/community/dictd/PKGBUILD +++ b/community/dictd/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 77122 2012-10-05 10:53:56Z spupykin $ +# $Id: PKGBUILD 79187 2012-10-31 09:43:20Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: SmackleFunky <smacklefunky@optusnet.com.au> # Contributor: Enrico Morelli <morelli@cerm.unifi.it> pkgname=dictd -pkgver=1.12.0 -pkgrel=5 +pkgver=1.12.1 +pkgrel=1 pkgdesc="Online dictionary client and server" url="http://sourceforge.net/projects/dict/" license=('GPL') @@ -28,7 +28,7 @@ source=("http://downloads.sourceforge.net/dict/$pkgname-$pkgver.tar.gz" site.info dictd.xinetd colorit.conf) -md5sums=('71aaf3a697ea2e9409643f11ea85b53a' +md5sums=('62696491174c22079f664830d07c0623' '6542df4fc585773fc03f1a088730126b' 'fb72f7d8c55f84b1b37bbc8d33a8e55a' '64cd6ffdb40fb3367224f91ac44926ac' diff --git a/community/geany-plugins/PKGBUILD b/community/geany-plugins/PKGBUILD index dd349c8d6..e68cb6518 100644 --- a/community/geany-plugins/PKGBUILD +++ b/community/geany-plugins/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 73662 2012-07-12 20:54:20Z arodseth $ +# $Id: PKGBUILD 79206 2012-10-31 22:05:41Z arodseth $ # Maintainer: Alexander Rødseth <rodseth@gmail.com> # Contributor: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve> # Contributor: djgera @@ -6,14 +6,15 @@ pkgname=geany-plugins pkgver=1.22 -pkgrel=1 +pkgrel=2 pkgdesc="Combined plugins release for Geany" arch=('x86_64' 'i686') url="http://plugins.geany.org/" license=('GPL') depends=('geany=1.22' 'lua' 'gtkspell' 'libwebkit' 'hicolor-icon-theme' 'ctpl' 'gpgme') -makedepends=('intltool') +makedepends=('intltool' 'vala' 'gdb' 'cppcheck' 'vte') optdepends=('hspell: hebrew spell checker') +options=('!libtool') install=geany-plugins.install source=("http://plugins.geany.org/geany-plugins/$pkgname-$pkgver.tar.bz2") sha256sums=('a0dcf0cb00ac260670ef8fae682aade60c7c3075c88121fd21f3aecdff84e1ce') diff --git a/community/gkrellm/PKGBUILD b/community/gkrellm/PKGBUILD index 6adcdcf98..7feef83b4 100644 --- a/community/gkrellm/PKGBUILD +++ b/community/gkrellm/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 62784 2012-01-26 17:53:09Z arodseth $ +# $Id: PKGBUILD 79153 2012-10-31 05:24:09Z ebelanger $ # Maintainer: dorphell <dorphell@archlinux.org> # Contributor: Matt Smith (Majik) <darkknight@helpdesk.zaz.net> # Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> @@ -6,7 +6,7 @@ # Contributor: Alexander Rødseth <rodseth@gmail.com> pkgname=gkrellm pkgver=2.3.5 -pkgrel=2 +pkgrel=3 pkgdesc="System monitor package for GTK2" arch=('x86_64' 'i686') url="http://members.dslextreme.com/users/billw/gkrellm/gkrellm.html" @@ -15,14 +15,15 @@ depends=('gtk2' 'libsm' 'lm_sensors') makedepends=('gettext') backup=('etc/gkrellmd.conf') source=("http://members.dslextreme.com/users/billw/$pkgname/$pkgname-$pkgver.tar.bz2" - "gkrellmd") + "gkrellmd" "gkrellm.service") sha256sums=('702b5b0e9c040eb3af8e157453f38dd6f53e1dcd8b1272d20266cda3d4372c8b' - 'c6d532dd7a706891aed92d750bceda74d4618e86ad82feadc0503214de904360') + 'c6d532dd7a706891aed92d750bceda74d4618e86ad82feadc0503214de904360' + '2829931127632d0391f6749024809594b78c138fe4f03c98cd65fdbd47cea376') build() { cd "$srcdir/$pkgname-$pkgver" - make LOCALEDIR=/usr/share/locale + make LOCALEDIR=/usr/share/locale SYS_LIBS+=-lgmodule-2.0 } package() { @@ -31,6 +32,7 @@ package() { make DESTDIR="$pkgdir" PREFIX=/usr install install -Dm644 "server/gkrellmd.conf" "$pkgdir/etc/gkrellmd.conf" install -Dm755 "../gkrellmd" "$pkgdir/etc/rc.d/gkrellmd" + install -Dm644 "../gkrellm.service" "$pkgdir/usr/lib/systemd/system/gkrellm.service" install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING" } diff --git a/community/gkrellm/gkrellm.service b/community/gkrellm/gkrellm.service new file mode 100644 index 000000000..9234b8a79 --- /dev/null +++ b/community/gkrellm/gkrellm.service @@ -0,0 +1,11 @@ +[Unit] +Description=GNU Krell Monitors server +After=network.target +# If hddtemp is added to the dependencies in the PKGBUILD, then use +#After=network.target hddtemp.service + +[Service] +ExecStart=/usr/bin/gkrellmd + +[Install] +WantedBy=multi-user.target diff --git a/community/ibus-chewing/PKGBUILD b/community/ibus-chewing/PKGBUILD index ce7f6b9ab..ec7cdfe7b 100644 --- a/community/ibus-chewing/PKGBUILD +++ b/community/ibus-chewing/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 75677 2012-08-29 04:37:22Z ebelanger $ +# $Id: PKGBUILD 79173 2012-10-31 06:03:57Z ebelanger $ # Maintainer: Thomas Dziedzic < gostrc at gmail > # Contributor: Rainy <rainylau(at)gmail(dot)com> # Contributor: Lee.MaRS <leemars@gmail.com> @@ -6,13 +6,14 @@ pkgname=ibus-chewing pkgver=1.4.2 -pkgrel=1 +pkgrel=2 pkgdesc='Chinese Chewing Engine for IBus Framework' arch=('i686' 'x86_64') license=('GPL') url='http://ibus.googlecode.com' depends=('ibus' 'libchewing' 'libxtst') -makedepends=('swig' 'cmake' 'gob2') +makedepends=('swig' 'cmake' 'gob2' 'gconf') +options=('!makeflags') install=ibus-chewing.install source=(http://ibus.googlecode.com/files/${pkgname}-${pkgver}-Source.tar.gz) md5sums=('67d944ddfb7dd4eb325967ce43390092') diff --git a/community/ibus-hangul/PKGBUILD b/community/ibus-hangul/PKGBUILD index 1e175526f..925dc3ce1 100644 --- a/community/ibus-hangul/PKGBUILD +++ b/community/ibus-hangul/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 70167 2012-05-01 04:52:15Z ebelanger $ +# $Id: PKGBUILD 79159 2012-10-31 05:32:23Z ebelanger $ # Maintainer: Thomas Dziedzic < gostrc at gmail > # Contributor: Radim Hvizdák <hvizdakr at gmail dot com> pkgname=ibus-hangul pkgver=1.4.1 -pkgrel=1 +pkgrel=2 pkgdesc='Korean input engine for IBus' arch=('i686' 'x86_64') url='http://ibus.googlecode.com' diff --git a/community/ibus-m17n/PKGBUILD b/community/ibus-m17n/PKGBUILD index ecd53bc8e..534e2f4e1 100644 --- a/community/ibus-m17n/PKGBUILD +++ b/community/ibus-m17n/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 72692 2012-06-20 01:20:28Z ebelanger $ +# $Id: PKGBUILD 79165 2012-10-31 05:47:23Z ebelanger $ # Maintainer: Thomas Dziedzic < gostrc at gmail > # Contributor: Lonfucius <Lonfucius@gmail.com> # Contributor: Jesse Jaara <jesse.jaara@gmail.com> pkgname=ibus-m17n pkgver=1.3.4 -pkgrel=1 +pkgrel=2 pkgdesc='M17N engine for IBus' arch=('i686' 'x86_64') url='http://code.google.com/p/ibus/' diff --git a/community/ibus-pinyin/PKGBUILD b/community/ibus-pinyin/PKGBUILD index 132499abe..a77ac1da0 100644 --- a/community/ibus-pinyin/PKGBUILD +++ b/community/ibus-pinyin/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 61930 2012-01-11 03:50:39Z ebelanger $ +# $Id: PKGBUILD 79171 2012-10-31 05:59:19Z ebelanger $ # Contributor: Rainy <rainylau(at)gmail(dot)com> # Contributor: Lee.maRS<leemars at gmail.com> # Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=ibus-pinyin pkgver=1.4.0 -pkgrel=1 +pkgrel=2 pkgdesc='The PinYin Engine for IBus Input Framework.' arch=('i686' 'x86_64') license=('LGPL') diff --git a/community/ibus-sunpinyin/PKGBUILD b/community/ibus-sunpinyin/PKGBUILD index 2d46c7555..4d6333f3c 100644 --- a/community/ibus-sunpinyin/PKGBUILD +++ b/community/ibus-sunpinyin/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 56121 2011-10-02 03:13:11Z ebelanger $ +# $Id: PKGBUILD 79175 2012-10-31 06:11:42Z ebelanger $ # Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=ibus-sunpinyin pkgver=2.0.3 -pkgrel=2 +pkgrel=3 pkgdesc='The SunPinYin Engine for IBus Input Framework. SunPinYin is a Statistical Language Model based pinyin IME by Sun.' arch=('i686' 'x86_64') url='http://sunpinyin.googlecode.com' diff --git a/community/ibus-unikey/PKGBUILD b/community/ibus-unikey/PKGBUILD index 3415bd9dc..f1e78b64e 100644 --- a/community/ibus-unikey/PKGBUILD +++ b/community/ibus-unikey/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 68023 2012-03-17 01:19:28Z ebelanger $ +# $Id: PKGBUILD 79163 2012-10-31 05:41:19Z ebelanger $ # Maintainer: Thomas Dziedzic < gostrc at gmail > # Contributor: Trương Xuân Tính <xuantinh at gmail dot com> pkgname=ibus-unikey pkgver=0.6.1 -pkgrel=1 +pkgrel=2 pkgdesc='IBus module for Vietnamese Keyboard' arch=('i686' 'x86_64') license=('GPL') diff --git a/community/intellij-idea-libs/PKGBUILD b/community/intellij-idea-libs/PKGBUILD index 656d796a0..26414d48c 100644 --- a/community/intellij-idea-libs/PKGBUILD +++ b/community/intellij-idea-libs/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 74411 2012-07-27 08:27:33Z stativ $ +# $Id: PKGBUILD 79196 2012-10-31 12:36:36Z stativ $ # Maintainer: Lukas Jirkovsky <l.jirkovsky@gmail.com> pkgname=intellij-idea-libs -pkgver=11.1.3 -_pkgver=117.798 +pkgver=11.1.4 +_pkgver=117.963 pkgrel=1 pkgdesc="Architecture dependend libraries needed by the Intellij Idea IDE" arch=('i686' 'x86_64') @@ -10,7 +10,7 @@ url="http://www.jetbrains.org/" license=('apache') depends=('glibc') source=(http://download.jetbrains.com/idea/ideaIC-$pkgver.tar.gz) -md5sums=('b8ae865e3645cfd0a8d16dac481fd25c') +md5sums=('e4a8d95573c8b00e2f6722ac63efde0d') build() { cd "$srcdir" diff --git a/community/pdns-recursor/PKGBUILD b/community/pdns-recursor/PKGBUILD new file mode 100644 index 000000000..14b67ce63 --- /dev/null +++ b/community/pdns-recursor/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 79210 2012-10-31 22:50:00Z tomegun $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgname=pdns-recursor +pkgver=3.3 +pkgrel=2 +pkgdesc="PowerDNS recursor" +url="http://www.powerdns.com" +license=('GPL') +arch=('i686' 'x86_64') +depends=('gcc-libs' 'lua') +makedepends=('boost') +backup=('etc/powerdns/recursor.conf') +source=("http://downloads.powerdns.com/releases/${pkgname}-${pkgver}.tar.bz2" + 'pdns-recursor.rc') +md5sums=('87daeeebb6f7af9e07814ff6c43300dd' + '5b3aa3c8ed2edf55821af16cfb7ef252') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + LUA=1 LUA_CPPFLAGS_CONFIG= LUA_LIBS_CONFIG=-llua make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -d -m755 "${pkgdir}/etc/rc.d" + mv "${pkgdir}/etc/powerdns/recursor.conf-dist" "${pkgdir}/etc/powerdns/recursor.conf" + install -m755 "${srcdir}/pdns-recursor.rc" "${pkgdir}/etc/rc.d/pdns-recursor" + rm -rf "${pkgdir}/etc/init.d" +} diff --git a/community/pdns-recursor/pdns-recursor.rc b/community/pdns-recursor/pdns-recursor.rc new file mode 100644 index 000000000..992f0b086 --- /dev/null +++ b/community/pdns-recursor/pdns-recursor.rc @@ -0,0 +1,35 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +case "$1" in + start) + stat_busy "Starting PowerDNS recursor" + ! /usr/sbin/rec_control ping > /dev/null 2>&1 && /usr/sbin/pdns_recursor --daemon + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon pdns-recursor + stat_done + fi + ;; + stop) + stat_busy "Stopping PowerDNS recursor" + rec_control quit > /dev/null 2>&1 + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon pdns-recursor + stat_done + fi + ;; + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/community/pdns/2.9.18-default-mysql-options.patch b/community/pdns/2.9.18-default-mysql-options.patch new file mode 100755 index 000000000..a9048e13e --- /dev/null +++ b/community/pdns/2.9.18-default-mysql-options.patch @@ -0,0 +1,13 @@ +diff -Nur pdns-2.9.18.orig/modules/gmysqlbackend/smysql.cc pdns-2.9.18/modules/gmysqlbackend/smysql.cc +--- pdns-2.9.18.orig/modules/gmysqlbackend/smysql.cc 2005-04-23 23:40:15.000000000 +0200 ++++ pdns-2.9.18/modules/gmysqlbackend/smysql.cc 2005-07-17 10:38:35.363597586 +0200 +@@ -15,6 +15,9 @@ + const string &password) + { + mysql_init(&d_db); ++#if MYSQL_VERSION_ID > 32349 ++ mysql_options(&d_db, MYSQL_READ_DEFAULT_GROUP, "client"); ++#endif + if (!mysql_real_connect(&d_db, host.empty() ? 0 : host.c_str(), + user.empty() ? 0 : user.c_str(), + password.empty() ? 0 : password.c_str(), diff --git a/community/pdns/PKGBUILD b/community/pdns/PKGBUILD new file mode 100644 index 000000000..dc886cf3c --- /dev/null +++ b/community/pdns/PKGBUILD @@ -0,0 +1,58 @@ +# $Id: PKGBUILD 79208 2012-10-31 22:28:28Z tomegun $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgname=pdns +pkgver=2.9.22.6 +pkgrel=1 +pkgdesc="A modern, advanced and high performance authoritative-only nameserver" +arch=('i686' 'x86_64') +url="http://www.powerdns.com" +license=('GPL') +depends=('gcc-libs' 'zlib' 'postgresql-libs' 'libmysqlclient' 'sqlite' 'libldap') +makedepends=('boost') +provides=('pdns-ldap' 'pdns-mysql' 'pdns-sqlite' 'pdns-pgsql') +replaces=('pdns-ldap' 'pdns-mysql' 'pdns-sqlite' 'pdns-pgsql') +conflicts=('pdns-ldap' 'pdns-mysql' 'pdns-sqlite' 'pdns-pgsql') +install=pdns.install +options=('!makeflags' '!libtool') +backup=('etc/powerdns/pdns.conf') +source=("http://downloads.powerdns.com/releases/${pkgname}-${pkgver}.tar.gz" + '2.9.18-default-mysql-options.patch' + 'pdns-2.9.22-gcc44.patch' + 'pdns.rc' + 'pdns.conf') +md5sums=('ff97ba980b322adb61c3e9c9e9c4adef' + '90fb32e843326d14359c508cef855929' + '530642273005bdabae27792098834ea6' + '16e2d32e9781be7afa8f1700740bcdb0' + 'a390ab49c4fcde205629be33bddc2e6c') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i "${srcdir}/2.9.18-default-mysql-options.patch" + patch -p1 -i "${srcdir}/pdns-2.9.22-gcc44.patch" + touch AUTHORS NEWS + libtoolize --force --copy + aclocal + autoconf + automake --add-missing + ./configure --prefix=/usr \ + --sysconfdir=/etc/powerdns \ + --libexecdir=/usr/lib \ + --libdir=/usr/lib/powerdns \ + --mandir=/usr/share/man \ + --with-modules="" \ + --with-dynmodules="ldap pipe gmysql gpgsql gsqlite3 geo" \ + --disable-recursor \ + --disable-static + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/etc/rc.d" + rm "${pkgdir}/etc/powerdns/pdns.conf-dist" + install -m644 "${srcdir}/pdns.conf" "${pkgdir}/etc/powerdns/" + install -m755 "${srcdir}/pdns.rc" "${pkgdir}/etc/rc.d/pdns" +} diff --git a/community/pdns/pdns-2.9.22-gcc44.patch b/community/pdns/pdns-2.9.22-gcc44.patch new file mode 100644 index 000000000..35c1c7777 --- /dev/null +++ b/community/pdns/pdns-2.9.22-gcc44.patch @@ -0,0 +1,22 @@ +diff -ur pdns-2.9.22.orig/pdns/dnsparser.cc pdns-2.9.22/pdns/dnsparser.cc +--- pdns-2.9.22.orig/pdns/dnsparser.cc 2008-11-15 22:32:46.000000000 +0200 ++++ pdns-2.9.22/pdns/dnsparser.cc 2009-07-06 22:09:02.000000000 +0300 +@@ -16,6 +16,7 @@ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + ++#include <stdio.h> + #include "dnsparser.hh" + #include "dnswriter.hh" + #include <boost/lexical_cast.hpp> +diff -ur pdns-2.9.22.orig/pdns/rcpgenerator.cc pdns-2.9.22/pdns/rcpgenerator.cc +--- pdns-2.9.22.orig/pdns/rcpgenerator.cc 2008-11-15 23:20:27.000000000 +0200 ++++ pdns-2.9.22/pdns/rcpgenerator.cc 2009-07-06 22:07:26.000000000 +0300 +@@ -16,6 +16,7 @@ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + ++#include <stdio.h> + #include "rcpgenerator.hh" + #include "dnsparser.hh" + #include "misc.hh" diff --git a/community/pdns/pdns.conf b/community/pdns/pdns.conf new file mode 100644 index 000000000..1bf24e73f --- /dev/null +++ b/community/pdns/pdns.conf @@ -0,0 +1,290 @@ +# Autogenerated configuration file template +################################# +# allow-axfr-ips If disabled, DO allow zonetransfers from these IP addresses +# +# allow-axfr-ips= + +################################# +# allow-recursion List of netmasks that are allowed to recurse +# +allow-recursion=127.0.0.1 + +################################# +# allow-recursion-override Local data overrrides hosts on the internet +# +allow-recursion-override=yes + +################################# +# cache-ttl Seconds to store packets in the PacketCache +# +cache-ttl=60 + +################################# +# chroot If set, chroot to this directory for more security +# +chroot=/var/empty + +################################# +# config-dir Location of configuration directory (pdns.conf) +# +config-dir=/etc + +################################# +# config-name Name of this virtual configuration - will rename the binary image +# +# config-name= + +################################# +# control-console Debugging switch - don't use +# +# control-console=no + +################################# +# daemon Operate as a daemon +# +daemon=yes + +################################# +# default-soa-name name to insert in the SOA record if none set in the backend +# +# default-soa-name=a.misconfigured.powerdns.server + +################################# +# disable-axfr Disable zonetransfers but do allow TCP queries +# +# disable-axfr=no + +################################# +# disable-tcp Do not listen to TCP queries +# +# disable-tcp=no + +################################# +# distributor-threads Default number of Distributor (backend) threads to start +# +distributor-threads=3 + +################################# +# fancy-records Process URL and MBOXFW records +# +# fancy-records=no + +################################# +# guardian Run within a guardian process +# +guardian=yes + +################################# +# launch Which backends to launch and order to query them in +# +#launch= + +################################# +# lazy-recursion Only recurse if question cannot be answered locally +# +lazy-recursion=yes + +################################# +# load-modules Load this module - supply absolute or relative path +# +# load-modules= + +################################# +# local-address Local IP address to which we bind +# +local-address=127.0.0.1 + +################################# +# local-ipv6 Local IP address to which we bind +# +# local-ipv6= + +################################# +# local-port The port on which we listen +# +local-port=53 + +################################# +# log-dns-details If PDNS should log failed update requests +# +#log-dns-details=off + +################################# +# log-failed-updates If PDNS should log failed update requests +# +#log-failed-updates=off + +################################# +# logfile Logfile to use +# +# logfile=pdns.log + +################################# +# logging-facility Log under a specific facility +# +# logging-facility= + +################################# +# loglevel Amount of logging. Higher is more. Do not set below 3 +# +loglevel=3 + +################################# +# master Act as a master +# +# master=no + +################################# +# max-queue-length Maximum queuelength before considering situation lost +# +# max-queue-length=5000 + +################################# +# max-tcp-connections Maximum number of TCP connections +# +# max-tcp-connections=10 + +################################# +# module-dir Default directory for modules +# +module-dir=/usr/lib/powerdns + +################################# +# negquery-cache-ttl Seconds to store packets in the PacketCache +# +negquery-cache-ttl=60 + +################################# +# only-soa Make sure that no SOA serial is less than this number +# +# only-soa=org + +################################# +# out-of-zone-additional-processing Do out of zone additional processing +# +# out-of-zone-additional-processing=no + +################################# +# query-cache-ttl Seconds to store packets in the PacketCache +# +# query-cache-ttl=20 + +################################# +# query-logging Hint backends that queries should be logged +# +# query-logging=no + +################################# +# queue-limit Maximum number of milliseconds to queue a query +# +# queue-limit=1500 + +################################# +# receiver-threads Number of receiver threads to launch +# +# receiver-threads=1 + +################################# +# recursive-cache-ttl Seconds to store packets in the PacketCache +# +# recursive-cache-ttl=10 + +################################# +# recursor If recursion is desired, IP address of a recursing nameserver +# +#recursor= + +################################# +# setgid If set, change group id to this gid for more security +# +setgid=nobody + +################################# +# setuid If set, change user id to this uid for more security +# +setuid=nobody + +################################# +# skip-cname Do not perform CNAME indirection for each query +# +# skip-cname=no + +################################# +# slave Act as a slave +# +# slave=no + +################################# +# slave-cycle-interval Reschedule failed SOA serial checks once every .. seconds +# +# slave-cycle-interval=60 + +################################# +# smtpredirector Our smtpredir MX host +# +# smtpredirector=a.misconfigured.powerdns.smtp.server + +################################# +# soa-minimum-ttl Default SOA mininum ttl +# +# soa-minimum-ttl=3600 + +################################# +# soa-serial-offset Make sure that no SOA serial is less than this number +# +# soa-serial-offset=0 + +################################# +# socket-dir Where the controlsocket will live +# +socket-dir=/var/run + +################################# +# strict-rfc-axfrs Perform strictly rfc compliant axfrs (very slow) +# +# strict-rfc-axfrs=no + +################################# +# urlredirector Where we send hosts to that need to be url redirected +# +# urlredirector=127.0.0.1 + +################################# +# use-logfile Use a log file +# +use-logfile=no + +################################# +# webserver Start a webserver for monitoring +# +webserver=no + +################################# +# webserver-address IP Address of webserver to listen on +# +# webserver-address=127.0.0.1 + +################################# +# webserver-password Password required for accessing the webserver +# +# webserver-password= + +################################# +# webserver-port Port of webserver to listen on +# +# webserver-port=8081 + +################################# +# webserver-print-arguments If the webserver should print arguments +# +# webserver-print-arguments=no + +################################# +# wildcard-url Process URL and MBOXFW records +# +# wildcard-url=no + +################################# +# wildcards Honor wildcards in the database +# +wildcards=yes diff --git a/community/pdns/pdns.install b/community/pdns/pdns.install new file mode 100644 index 000000000..f41b36b20 --- /dev/null +++ b/community/pdns/pdns.install @@ -0,0 +1,11 @@ +post_install() { + cat << 'EOM' +==> PowerDNS is built without recursor now. To use the recursor, +==> please install the pdns-recursor package and update the +==> configuration in /etc/powerdns/recursor.conf +EOM +} + +post_upgrade() { + post_install $1 +} diff --git a/community/pdns/pdns.rc b/community/pdns/pdns.rc new file mode 100644 index 000000000..2f143ddae --- /dev/null +++ b/community/pdns/pdns.rc @@ -0,0 +1,35 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +case "$1" in + start) + stat_busy "Starting DNS" + ! /usr/sbin/pdns_control ping > /dev/null 2>&1 && /usr/sbin/pdns_server --daemon + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon pdns + stat_done + fi + ;; + stop) + stat_busy "Stopping DNS" + pdns_control quit > /dev/null 2>&1 + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon pdns + stat_done + fi + ;; + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/community/seahorse-nautilus/PKGBUILD b/community/seahorse-nautilus/PKGBUILD index 92f94c6dd..044ffa478 100644 --- a/community/seahorse-nautilus/PKGBUILD +++ b/community/seahorse-nautilus/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 77770 2012-10-14 16:18:22Z bgyorgy $ +# $Id: PKGBUILD 79156 2012-10-31 05:28:08Z bgyorgy $ # Maintainer: Balló György <ballogyor+arch at gmail dot com> pkgname=seahorse-nautilus -pkgver=3.6.0 +pkgver=3.6.1 pkgrel=1 pkgdesc="PGP encryption and signing for nautilus" arch=('i686' 'x86_64') @@ -13,14 +13,11 @@ makedepends=('intltool') replaces=('seahorse-plugins') options=('!libtool') install=$pkgname.install -source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz - fix-schema.patch) -sha256sums=('edae97cf7bab38ed928e25a7805913977f892ec9b9120783d874cda07912519d' - '3c5a3fe557fc56d5d5cda12d4b4909f513260da9b439d8bbaca2bf42b4fd114c') +source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('912d9c1e84ad1e24af6308b84d622a72d9e1bdae71284ddbd6277fdb459c31d2') build() { cd "$srcdir/$pkgname-$pkgver" - patch -Np1 -i "$srcdir/fix-schema.patch" ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ --disable-static --disable-schemas-compile diff --git a/community/simutrans/PKGBUILD b/community/simutrans/PKGBUILD index cabad01c4..6d26d9ece 100644 --- a/community/simutrans/PKGBUILD +++ b/community/simutrans/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 75106 2012-08-13 23:27:28Z bgyorgy $ +# $Id: PKGBUILD 79167 2012-10-31 05:50:02Z bgyorgy $ # Maintainer: Balló György <ballogyor+arch at gmail dot com> # Contributor: Anton Bazhenov <anton.bazhenov at gmail> # Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> @@ -6,8 +6,8 @@ # Contributor: JD Steffen <jd at steffennet dot org> pkgname=simutrans -pkgver=111.3.1 -_pkgver=111-3-1 +pkgver=112.0 +_pkgver=112-0 pkgrel=1 pkgdesc="An open source transportation simulation game" arch=('i686' 'x86_64') @@ -22,8 +22,8 @@ source=(http://downloads.sourceforge.net/$pkgname/$pkgname-src-$_pkgver.zip config.patch fix-build.patch simutrans.desktop) -md5sums=('efd18a25d30009d5421001c0d9fd7803' - '95b96826ff07b7da2cce33f38def6f4e' +md5sums=('d7d470b05cee33a31ad30252e53529d8' + '95d94d783864827f584d86fe5a57ba09' 'c87d9a9910bc371df5d50f7f1ec298bb' '4648680290b44775b9c47d3758d3bd6c' 'd11bc8ee33a34e33341f6ccd90a44dba' diff --git a/community/virtualbox-modules/PKGBUILD b/community/virtualbox-modules/PKGBUILD index 163b27a39..338b4763d 100644 --- a/community/virtualbox-modules/PKGBUILD +++ b/community/virtualbox-modules/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 78915 2012-10-27 18:36:55Z seblu $ +# $Id: PKGBUILD 79182 2012-10-31 07:25:55Z tpowa $ # Maintainer: Ionut Biru <ibiru@archlinux.org> # Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org> pkgbase=virtualbox-modules pkgname=('virtualbox-host-modules' 'virtualbox-guest-modules') pkgver=4.2.4 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') url='http://virtualbox.org' license=('GPL') diff --git a/community/webfs/PKGBUILD b/community/webfs/PKGBUILD index 3e7da95bb..4b2310ea9 100644 --- a/community/webfs/PKGBUILD +++ b/community/webfs/PKGBUILD @@ -1,34 +1,42 @@ -# $Id: PKGBUILD 73433 2012-07-07 15:26:00Z cbrannon $ +# $Id: PKGBUILD 79157 2012-10-31 05:28:18Z kkeen $ +# Maintainer: Kyle Keen <keenerd@gmail.com> # Contributor: Roman Kyrylych <Roman.Kyrylych@gmail.com> # Contributor: Mark Rosenstand <mark@archlinux.org> # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> -# Maintainer: Chris Brannon <chris@the-brannons.com> +# Contributor: Chris Brannon <chris@the-brannons.com> pkgname=webfs pkgver=1.21 -pkgrel=7 -pkgdesc="Simple http server for mostly static content." +pkgrel=8 +pkgdesc="Simple and instant http server for mostly static content." arch=(i686 x86_64) url="http://linux.bytesex.org/misc/webfs.html" license=("GPL") depends=('mime-types' 'openssl') backup=(etc/conf.d/webfsd) source=(http://dl.bytesex.org/releases/webfs/webfs-${pkgver}.tar.gz - webfsd.rc webfsd.conf webfs.patch) -md5sums=('6dc125fe160479404147e7bbfc781dbc' '3ae9fcdcf79b193aa88e386055e9ebd7' - 'b2c1ab041a82acd8391b06dc38d986be' '7294edcec2589df04bb775270d56536e') + webfsd.rc webfsd.conf webfs.patch + webfsd.launcher webfsd.service) +md5sums=('6dc125fe160479404147e7bbfc781dbc' + '3ae9fcdcf79b193aa88e386055e9ebd7' + 'b2c1ab041a82acd8391b06dc38d986be' + '7294edcec2589df04bb775270d56536e' + '256533a2fa5a293a55da1f32fab2cb28' + '7ee2bcd77e4113f5bfe7540844cbabd3') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "$srcdir/$pkgname-$pkgver" - patch -i ${srcdir}/webfs.patch + patch -i "$srcdir/webfs.patch" make } package() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "$srcdir/$pkgname-$pkgver" - make prefix=/usr DESTDIR=${pkgdir} install - install -Dm755 ${srcdir}/webfsd.rc ${pkgdir}/etc/rc.d/webfsd - install -Dm644 ${srcdir}/webfsd.conf ${pkgdir}/etc/conf.d/webfsd + make prefix=/usr DESTDIR="$pkgdir" install + install -Dm755 "$srcdir/webfsd.rc" "$pkgdir/etc/rc.d/webfsd" + install -Dm644 "$srcdir/webfsd.conf" "$pkgdir/etc/conf.d/webfsd" + install -Dm755 "$srcdir/webfsd.launcher" "$pkgdir/usr/lib/systemd/scripts/webfsd" + install -Dm755 "$srcdir/webfsd.service" "$pkgdir/usr/lib/systemd/system/webfsd.service" } diff --git a/community/webfs/webfsd.launcher b/community/webfs/webfsd.launcher new file mode 100644 index 000000000..fe2170617 --- /dev/null +++ b/community/webfs/webfsd.launcher @@ -0,0 +1,9 @@ +#! /bin/bash + +# wrapper script for systemd service + +[ -f /etc/conf.d/webfsd ] && . /etc/conf.d/webfsd + +# -F for simple target +exec /usr/bin/webfsd -F ${WEBFSD_ARGS} + diff --git a/community/webfs/webfsd.service b/community/webfs/webfsd.service new file mode 100644 index 000000000..18c07d7ce --- /dev/null +++ b/community/webfs/webfsd.service @@ -0,0 +1,9 @@ +[Unit] +Description=Simple and instant http server. +After=network.target + +[Service] +ExecStart=/usr/lib/systemd/scripts/webfsd + +[Install] +WantedBy=multi-user.target diff --git a/core/gpm/PKGBUILD b/core/gpm/PKGBUILD index eae4b2a23..d77f47151 100644 --- a/core/gpm/PKGBUILD +++ b/core/gpm/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 163618 2012-07-17 05:32:49Z eric $ +# $Id: PKGBUILD 170033 2012-10-31 05:23:26Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=gpm -pkgver=1.20.6 -pkgrel=10 +pkgver=1.20.7 +pkgrel=1 pkgdesc="A mouse server for the console and xterm" arch=('i686' 'x86_64') url="http://www.nico.schottelius.org/software/gpm/" @@ -14,7 +14,7 @@ options=('!makeflags') install=gpm.install source=(http://www.nico.schottelius.org/software/gpm/archives/${pkgname}-${pkgver}.tar.lzma \ gpm gpm.conf.d gpm.sh gpm.service) -sha1sums=('4677da0eb2f1910a5a744bbefa08fea82e0dca0c' +sha1sums=('8d9f3655c80ce7667d31ede2a100b44986480369' '19e1feb1493373512a77801699df012d186336ea' '4c31cb7dd51cee4d16d3f7a8956e6d87fac1ad86' '88fe5ff10916c68a87abc8418a56eb0073f69fa9' @@ -22,6 +22,7 @@ sha1sums=('4677da0eb2f1910a5a744bbefa08fea82e0dca0c' build() { cd "${srcdir}/${pkgname}-${pkgver}" + ./autogen.sh ./configure --prefix=/usr --sysconfdir=/etc make } diff --git a/core/mdadm/PKGBUILD b/core/mdadm/PKGBUILD index 3c905ace6..f00b8d0fa 100644 --- a/core/mdadm/PKGBUILD +++ b/core/mdadm/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 160025 2012-05-28 10:25:39Z tpowa $ +# $Id: PKGBUILD 170043 2012-10-31 07:26:06Z tpowa $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Contributor: Judd Vinet <jvinet@zeroflux.org> pkgname=mdadm -pkgver=3.2.5 -pkgrel=2 +pkgver=3.2.6 +pkgrel=1 pkgdesc="A tool for managing/monitoring Linux md device arrays, also known as Software RAID" arch=(i686 x86_64) license=('GPL') @@ -21,14 +21,6 @@ source=(ftp://ftp.kernel.org/pub/linux/utils/raid/mdadm/mdadm-$pkgver.tar.bz2 mdadm.service disable-werror.patch) replaces=('raidtools') -md5sums=('83ba4a6249ae24677e915e44c9cfcc58' - '8333d405f550317c2bacd5510bf1cb60' - '00cbed931db4f15b6ce49e3e7d433966' - '609d10888727710cb20db7ac3e096116' - 'fbb5542d9bdf87441a11dd7e7a0a17f8' - 'd1d8e9eb81ce9347de74f3c84a9db09e' - 'aafb5f9ac8437a284cbf948b9b13b179' - '4ad87b74a4bc9a34621280abe0e0c3e4') build() { cd $srcdir/$pkgname-$pkgver @@ -56,3 +48,11 @@ package() { # systemd service file install -D -m644 $srcdir/mdadm.service $pkgdir/usr/lib/systemd/system/mdadm.service } +md5sums=('3e255dc71e5144bbcb872788ca647267' + '8333d405f550317c2bacd5510bf1cb60' + '00cbed931db4f15b6ce49e3e7d433966' + '609d10888727710cb20db7ac3e096116' + 'fbb5542d9bdf87441a11dd7e7a0a17f8' + 'd1d8e9eb81ce9347de74f3c84a9db09e' + 'aafb5f9ac8437a284cbf948b9b13b179' + '4ad87b74a4bc9a34621280abe0e0c3e4') diff --git a/extra/cairo/PKGBUILD b/extra/cairo/PKGBUILD index ee34626b9..9f275feb5 100644 --- a/extra/cairo/PKGBUILD +++ b/extra/cairo/PKGBUILD @@ -1,46 +1,37 @@ -# $Id: PKGBUILD 167546 2012-10-02 15:03:57Z foutrelis $ +# $Id: PKGBUILD 170057 2012-10-31 10:24:44Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Brice Carpentier <brice@daknet.org> pkgname=cairo -#_gitdate=20120426 -#_gitver=957a9cc619965178a8927d114fe852034fc2385c -pkgver=1.12.2 -pkgrel=3 +pkgver=1.12.6 +pkgrel=2 pkgdesc="Cairo vector graphics library" arch=(i686 x86_64) license=('LGPL' 'MPL') url="http://cairographics.org/" -depends=('libpng' 'libxrender' 'fontconfig' 'pixman' 'glib2' 'sh') +depends=('libpng' 'libxrender' 'libxext' 'fontconfig' 'pixman' 'glib2' 'sh') makedepends=('librsvg' 'poppler-glib' 'libspectre' 'gtk-doc') # 'libdrm') optdepends=('xcb-util: for XCB backend') # really needed? provides=('cairo-xcb') replaces=('cairo-xcb') options=('!libtool') source=(http://cairographics.org/releases/$pkgname-$pkgver.tar.xz - #$pkgname-$pkgver.tar.gz::http://cgit.freedesktop.org/cairo/snapshot/cairo-${_gitver}.tar.gz cairo-1.10.0-buggy_gradients.patch - cairo-1.12.2-reduce-broken-stopped-edge-continuation.patch - cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch - #git_fixes.patch -) -md5sums=('87649eb75789739d517c743e94879e51' - '9b323790dab003e228c6955633cb888e' - '75ec73746cfaefcbed0e9b2a9f76bf00' - '56f64466fd70ead732b00691464144f2') + git_fixes.diff) +sha1sums=('a383c6cb4495e18848ea43e1031c294aa9417a43' + '8b843a9934e5112b6188e5bcf4adfc1fdaf9fa04' + '31b3179cda0afa2e2f037d6850fd8607383cb95a') build() { cd "$srcdir/$pkgname-$pkgver" - #cd ${srcdir}/${pkgname}-${_gitver} - patch -Np1 -i ${srcdir}/cairo-1.10.0-buggy_gradients.patch - # https://bugs.freedesktop.org/show_bug.cgi?id=50852 - patch -Np1 -i ${srcdir}/cairo-1.12.2-reduce-broken-stopped-edge-continuation.patch - # https://bugs.freedesktop.org/show_bug.cgi?id=51443 - patch -Np1 -i ${srcdir}/cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch - # status is 2012-04-26 last commit: image: Fix typo in _blit_spans() - #patch -Np1 -i ${srcdir}/git_fixes.patch - autoreconf -vfi - #./autogen.sh --prefix=/usr \ +# patch -Np1 -i ${srcdir}/cairo-1.10.0-buggy_gradients.patch + + # status: http://cgit.freedesktop.org/cairo/commit/?id=66625cb46c985321c46b79d2163a4d676d6700ba + # 2012-10-30 12:40:41 (GMT) + # xlib: Apply the image offsets to the destination rather the source + patch -Np1 -i ${srcdir}/git_fixes.diff + +# autoreconf -vfi ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ @@ -53,13 +44,11 @@ build() { } #check() { -# #cd "$srcdir/$pkgname-$pkgver" -# cd $srcdir/$pkgname-${_gitver} -# make -k check || /bin/true # 165 Passed, 316 Failed [3 crashed, 10 expected], 23 Skipped +# cd "$srcdir/$pkgname-$pkgver" +# make -k check || /bin/true # 161 Passed, 328 Failed [8 crashed, 10 expected], 26 Skipped #} package() { cd "$srcdir/$pkgname-$pkgver" - #cd $srcdir/$pkgname-${_gitver} make DESTDIR="$pkgdir" install } diff --git a/extra/cairo/git_fixes.diff b/extra/cairo/git_fixes.diff new file mode 100644 index 000000000..3fc7ff659 --- /dev/null +++ b/extra/cairo/git_fixes.diff @@ -0,0 +1,934 @@ +From e43f53bf7f3d371116f31f22ab9754b08b5abe7f Mon Sep 17 00:00:00 2001 +From: Chris Wilson <chris@chris-wilson.co.uk> +Date: Mon, 22 Oct 2012 12:47:11 +0000 +Subject: version: Post release bump to 1.12.7 + +--- +diff --git a/cairo-version.h b/cairo-version.h +index dc89a19..c685909 100644 +--- a/cairo-version.h ++++ b/cairo-version.h +@@ -3,6 +3,6 @@ + + #define CAIRO_VERSION_MAJOR 1 + #define CAIRO_VERSION_MINOR 12 +-#define CAIRO_VERSION_MICRO 6 ++#define CAIRO_VERSION_MICRO 7 + + #endif +-- +cgit v0.9.0.2-2-gbebe +From 00feb8ce530a472abbde445b52d9ae8c99ec97f0 Mon Sep 17 00:00:00 2001 +From: Chris Wilson <chris@chris-wilson.co.uk> +Date: Fri, 26 Oct 2012 09:51:31 +0000 +Subject: xlib/shm: Sanity check that the server handles XSendEvent with ShmCompletion + +Uli Schlachter suggested it would be wiser to complement our blacklist +of known broken X/libXext with an explicit roundtrip to check for a +BadValue error return when we try to use XSendEvent. + +Suggested-by: Uli Schlachter <psychon@znc.in> +Reported-by: Martin Husemann <martin@duskware.de> +Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> +--- +diff --git a/src/cairo-xlib-surface-shm.c b/src/cairo-xlib-surface-shm.c +index ec0d334..17594b1 100644 +--- a/src/cairo-xlib-surface-shm.c ++++ b/src/cairo-xlib-surface-shm.c +@@ -1128,8 +1128,60 @@ _cairo_xlib_shm_surface_is_idle (cairo_surface_t *surface) + (((major) * 10000000) + ((minor) * 100000) + ((patch) * 1000) + snap) + + static cairo_bool_t +-xorg_has_buggy_send_shm_completion_event(Display *dpy) ++has_broken_send_shm_event (cairo_xlib_display_t *display, ++ cairo_xlib_shm_display_t *shm) + { ++ Display *dpy = display->display; ++ int (*old_handler) (Display *display, XErrorEvent *event); ++ XShmCompletionEvent ev; ++ XShmSegmentInfo info; ++ ++ info.shmid = shmget (IPC_PRIVATE, 0x1000, IPC_CREAT | 0600); ++ if (info.shmid == -1) ++ return TRUE; ++ ++ info.readOnly = FALSE; ++ info.shmaddr = shmat (info.shmid, NULL, 0); ++ if (info.shmaddr == (char *) -1) { ++ shmctl (info.shmid, IPC_RMID, NULL); ++ return TRUE; ++ } ++ ++ ev.type = shm->event; ++ ev.drawable = shm->window; ++ ev.major_code = shm->opcode; ++ ev.minor_code = X_ShmPutImage; ++ ++ ev.shmseg = info.shmid; ++ ev.offset = 0; ++ ++ assert (CAIRO_MUTEX_IS_LOCKED (_cairo_xlib_display_mutex)); ++ _x_error_occurred = FALSE; ++ ++ XLockDisplay (dpy); ++ XSync (dpy, False); ++ old_handler = XSetErrorHandler (_check_error_handler); ++ ++ XShmAttach (dpy, &info); ++ XSendEvent (dpy, ev.drawable, False, 0, (XEvent *)&ev); ++ XShmDetach (dpy, &info); ++ ++ XSync (dpy, False); ++ XSetErrorHandler (old_handler); ++ XUnlockDisplay (dpy); ++ ++ shmctl (info.shmid, IPC_RMID, NULL); ++ shmdt (info.shmaddr); ++ ++ return _x_error_occurred; ++} ++ ++static cairo_bool_t ++xorg_has_buggy_send_shm_completion_event(cairo_xlib_display_t *display, ++ cairo_xlib_shm_display_t *shm) ++{ ++ Display *dpy = display->display; ++ + /* As libXext sets the SEND_EVENT bit in the ShmCompletionEvent, + * the Xserver may crash if it does not take care when processing + * the event type. For instance versions of Xorg prior to 1.11.1 +@@ -1141,8 +1193,12 @@ xorg_has_buggy_send_shm_completion_event(Display *dpy) + * + * Remove the SendEvent bit (0x80) before doing range checks on event type. + */ +- return (strstr (ServerVendor (dpy), "X.Org") != NULL && +- VendorRelease (dpy) < XORG_VERSION_ENCODE(1,11,0,1)); ++ if (strstr (ServerVendor (dpy), "X.Org") != NULL && ++ VendorRelease (dpy) < XORG_VERSION_ENCODE(1,11,0,1)) ++ return TRUE; ++ ++ /* For everyone else check that no error is generated */ ++ return has_broken_send_shm_event (display, shm); + } + + void +@@ -1162,6 +1218,15 @@ _cairo_xlib_display_init_shm (cairo_xlib_display_t *display) + if (unlikely (shm == NULL)) + return; + ++ codes = XInitExtension (display->display, SHMNAME); ++ if (codes == NULL) { ++ free (shm); ++ return; ++ } ++ ++ shm->opcode = codes ->major_opcode; ++ shm->event = codes->first_event; ++ + if (unlikely (_pqueue_init (&shm->info))) { + free (shm); + return; +@@ -1177,16 +1242,12 @@ _cairo_xlib_display_init_shm (cairo_xlib_display_t *display) + DefaultVisual (display->display, scr), + CWOverrideRedirect, &attr); + +- if (xorg_has_buggy_send_shm_completion_event(display->display)) ++ if (xorg_has_buggy_send_shm_completion_event(display, shm)) + has_pixmap = 0; + + shm->has_pixmaps = has_pixmap ? MIN_PIXMAP_SIZE : 0; + cairo_list_init (&shm->pool); + +- codes = XInitExtension (display->display, SHMNAME); +- shm->opcode = codes ->major_opcode; +- shm->event = codes->first_event; +- + cairo_list_init (&shm->surfaces); + + display->shm = shm; +-- +cgit v0.9.0.2-2-gbebe +From fdd2082f923012a1354be7086d03f78fb166695b Mon Sep 17 00:00:00 2001 +From: Chris Wilson <chris@chris-wilson.co.uk> +Date: Fri, 26 Oct 2012 09:51:31 +0000 +Subject: xlib: Check for both X.org and Xorg ServerVendors + +Martin Husemann reported that on his NetBSD machine the vendor was being +reported as "The Xorg Foundation", a non-conformist separatist split of +the Peoples' Liberation Army^W^W^W "The X.Org Foundation". Simply check +for both during initialisation. + +Reported-by: Martin Husemann <martin@duskware.de> +Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> +--- +diff --git a/src/cairo-xlib-display.c b/src/cairo-xlib-display.c +index 67c0673..04c89b2 100644 +--- a/src/cairo-xlib-display.c ++++ b/src/cairo-xlib-display.c +@@ -315,7 +315,7 @@ _cairo_xlib_device_create (Display *dpy) + * safest to just blacklist all old-versioning-scheme X servers, + * (just using VendorRelease < 70000000), as buggy_repeat=TRUE. + */ +- if (strstr (ServerVendor (dpy), "X.Org") != NULL) { ++ if (_cairo_xlib_vendor_is_xorg (dpy)) { + if (VendorRelease (dpy) >= 60700000) { + if (VendorRelease (dpy) < 70000000) + display->buggy_repeat = TRUE; +diff --git a/src/cairo-xlib-private.h b/src/cairo-xlib-private.h +index d2bd588..c328302 100644 +--- a/src/cairo-xlib-private.h ++++ b/src/cairo-xlib-private.h +@@ -216,6 +216,13 @@ struct _cairo_xlib_proxy { + cairo_surface_t *owner; + }; + ++inline static cairo_bool_t ++_cairo_xlib_vendor_is_xorg (Display *dpy) ++{ ++ const char *const vendor = ServerVendor (dpy); ++ return strstr (vendor, "X.Org") || strstr (vendor, "Xorg"); ++} ++ + cairo_private cairo_status_t + _cairo_xlib_surface_get_gc (cairo_xlib_display_t *display, + cairo_xlib_surface_t *surface, +diff --git a/src/cairo-xlib-surface-shm.c b/src/cairo-xlib-surface-shm.c +index 17594b1..89f51a9 100644 +--- a/src/cairo-xlib-surface-shm.c ++++ b/src/cairo-xlib-surface-shm.c +@@ -1193,7 +1193,7 @@ xorg_has_buggy_send_shm_completion_event(cairo_xlib_display_t *display, + * + * Remove the SendEvent bit (0x80) before doing range checks on event type. + */ +- if (strstr (ServerVendor (dpy), "X.Org") != NULL && ++ if (_cairo_xlib_vendor_is_xorg (dpy) && + VendorRelease (dpy) < XORG_VERSION_ENCODE(1,11,0,1)) + return TRUE; + +-- +cgit v0.9.0.2-2-gbebe +From d57e652f08f5ff7c334d01bc071962e6a131928f Mon Sep 17 00:00:00 2001 +From: Adrian Johnson <ajohnson@redneon.com> +Date: Fri, 26 Oct 2012 12:30:01 +0000 +Subject: type1-subset: parse all operators + +The PDF at bug 56265 contained a Type 1 font that used the "div" +operator to compute the glyph width. As the "div" operator was +not handled by the charstring parser this resulted in an incorrect +glyph width in the PDF output. + +Fix this by upgrading the charstring parsing to handle all Type 1 +operators. +--- +diff --git a/src/cairo-type1-subset.c b/src/cairo-type1-subset.c +index 1bdb12b..c7f613a 100644 +--- a/src/cairo-type1-subset.c ++++ b/src/cairo-type1-subset.c +@@ -137,13 +137,10 @@ typedef struct _cairo_type1_font_subset { + int hex_column; + + struct { +- int stack[TYPE1_STACKSIZE], sp, top_value; ++ double stack[TYPE1_STACKSIZE]; ++ int sp; + } build_stack; + +- struct { +- int other_subr_args[TYPE1_STACKSIZE], num_other_subr_args, cur_other_subr_arg; +- } ps_stack; +- + + } cairo_type1_font_subset_t; + +@@ -742,15 +739,33 @@ use_standard_encoding_glyph (cairo_type1_font_subset_t *font, int index) + return CAIRO_INT_STATUS_UNSUPPORTED; + } + +-#define TYPE1_CHARSTRING_COMMAND_ESCAPE 0x0c +-#define TYPE1_CHARSTRING_COMMAND_SEAC 0x0c06 +-#define TYPE1_CHARSTRING_COMMAND_SBW 0x0c07 +-#define TYPE1_CHARSTRING_COMMAND_HSBW 0x0d +-#define TYPE1_CHARSTRING_COMMAND_CALLSUBR 0x0a +-#define TYPE1_CHARSTRING_COMMAND_CALLOTHERSUBR 0x0c10 +-#define TYPE1_CHARSTRING_COMMAND_POP 0x0c11 +- + ++#define TYPE1_CHARSTRING_COMMAND_HSTEM 0x01 ++#define TYPE1_CHARSTRING_COMMAND_VSTEM 0x03 ++#define TYPE1_CHARSTRING_COMMAND_VMOVETO 0x04 ++#define TYPE1_CHARSTRING_COMMAND_RLINETO 0x05 ++#define TYPE1_CHARSTRING_COMMAND_HLINETO 0x06 ++#define TYPE1_CHARSTRING_COMMAND_VLINETO 0x07 ++#define TYPE1_CHARSTRING_COMMAND_RRCURVETO 0x08 ++#define TYPE1_CHARSTRING_COMMAND_CLOSEPATH 0x09 ++#define TYPE1_CHARSTRING_COMMAND_CALLSUBR 0x0a ++#define TYPE1_CHARSTRING_COMMAND_RETURN 0x0b ++#define TYPE1_CHARSTRING_COMMAND_ESCAPE 0x0c ++#define TYPE1_CHARSTRING_COMMAND_HSBW 0x0d ++#define TYPE1_CHARSTRING_COMMAND_ENDCHAR 0x0e ++#define TYPE1_CHARSTRING_COMMAND_RMOVETO 0x15 ++#define TYPE1_CHARSTRING_COMMAND_HMOVETO 0x16 ++#define TYPE1_CHARSTRING_COMMAND_VHCURVETO 0x1e ++#define TYPE1_CHARSTRING_COMMAND_HVCURVETO 0x1f ++#define TYPE1_CHARSTRING_COMMAND_DOTSECTION 0x0c00 ++#define TYPE1_CHARSTRING_COMMAND_VSTEM3 0x0c01 ++#define TYPE1_CHARSTRING_COMMAND_HSTEM3 0x0c02 ++#define TYPE1_CHARSTRING_COMMAND_SEAC 0x0c06 ++#define TYPE1_CHARSTRING_COMMAND_SBW 0x0c07 ++#define TYPE1_CHARSTRING_COMMAND_DIV 0x0c0c ++#define TYPE1_CHARSTRING_COMMAND_CALLOTHERSUBR 0x0c10 ++#define TYPE1_CHARSTRING_COMMAND_POP 0x0c11 ++#define TYPE1_CHARSTRING_COMMAND_SETCURRENTPOINT 0x0c21 + + /* Get glyph width and look for seac operatorParse charstring */ + static cairo_status_t +@@ -765,7 +780,6 @@ cairo_type1_font_subset_parse_charstring (cairo_type1_font_subset_t *font, + const unsigned char *p; + cairo_bool_t last_op_was_integer; + int command; +- int subr_num, i; + + charstring = malloc (encrypted_charstring_length); + if (unlikely (charstring == NULL)) +@@ -785,37 +799,60 @@ cairo_type1_font_subset_parse_charstring (cairo_type1_font_subset_t *font, + if (*p < 32) { + command = *p++; + switch (command) { +- case TYPE1_CHARSTRING_COMMAND_HSBW: +- if (! last_op_was_integer) +- return CAIRO_INT_STATUS_UNSUPPORTED; +- +- font->glyphs[glyph].width = font->build_stack.stack[1]/font->base.units_per_em; ++ case TYPE1_CHARSTRING_COMMAND_HSTEM: ++ case TYPE1_CHARSTRING_COMMAND_VSTEM: ++ case TYPE1_CHARSTRING_COMMAND_VMOVETO: ++ case TYPE1_CHARSTRING_COMMAND_RLINETO: ++ case TYPE1_CHARSTRING_COMMAND_HLINETO: ++ case TYPE1_CHARSTRING_COMMAND_VLINETO: ++ case TYPE1_CHARSTRING_COMMAND_RRCURVETO: ++ case TYPE1_CHARSTRING_COMMAND_CLOSEPATH: ++ case TYPE1_CHARSTRING_COMMAND_RMOVETO: ++ case TYPE1_CHARSTRING_COMMAND_HMOVETO: ++ case TYPE1_CHARSTRING_COMMAND_VHCURVETO: ++ case TYPE1_CHARSTRING_COMMAND_HVCURVETO: ++ case TYPE1_CHARSTRING_COMMAND_RETURN: ++ case TYPE1_CHARSTRING_COMMAND_ENDCHAR: ++ default: + font->build_stack.sp = 0; +- last_op_was_integer = FALSE; + break; + + case TYPE1_CHARSTRING_COMMAND_CALLSUBR: +- if (font->subset_subrs && +- last_op_was_integer && +- font->build_stack.top_value >= 0 && +- font->build_stack.top_value < font->num_subrs) +- { +- subr_num = font->build_stack.top_value; +- font->build_stack.sp--; +- font->subrs[subr_num].used = TRUE; +- last_op_was_integer = FALSE; +- status = cairo_type1_font_subset_parse_charstring (font, +- glyph, +- font->subrs[subr_num].subr_string, +- font->subrs[subr_num].subr_length); +- } else { +- font->subset_subrs = FALSE; ++ if (font->subset_subrs && font->build_stack.sp > 0) { ++ int subr_num = font->build_stack.stack[--font->build_stack.sp]; ++ if (subr_num >= 0 && subr_num < font->num_subrs) { ++ font->subrs[subr_num].used = TRUE; ++ status = cairo_type1_font_subset_parse_charstring ( ++ font, ++ glyph, ++ font->subrs[subr_num].subr_string, ++ font->subrs[subr_num].subr_length); ++ break; ++ } + } ++ font->subset_subrs = FALSE; ++ break; ++ ++ case TYPE1_CHARSTRING_COMMAND_HSBW: ++ if (font->build_stack.sp < 2) ++ return CAIRO_INT_STATUS_UNSUPPORTED; ++ ++ font->glyphs[glyph].width = font->build_stack.stack[1]/font->base.units_per_em; ++ font->build_stack.sp = 0; + break; + + case TYPE1_CHARSTRING_COMMAND_ESCAPE: + command = command << 8 | *p++; + switch (command) { ++ case TYPE1_CHARSTRING_COMMAND_DOTSECTION: ++ case TYPE1_CHARSTRING_COMMAND_VSTEM3: ++ case TYPE1_CHARSTRING_COMMAND_HSTEM3: ++ case TYPE1_CHARSTRING_COMMAND_SETCURRENTPOINT: ++ case TYPE1_CHARSTRING_COMMAND_CALLOTHERSUBR: ++ default: ++ font->build_stack.sp = 0; ++ break; ++ + case TYPE1_CHARSTRING_COMMAND_SEAC: + /* The seac command takes five integer arguments. The + * last two are glyph indices into the PS standard +@@ -823,6 +860,9 @@ cairo_type1_font_subset_parse_charstring (cairo_type1_font_subset_t *font, + * glyph is composed from. All we need to do is to + * make sure those glyphs are present in the subset + * under their standard names. */ ++ if (font->build_stack.sp < 5) ++ return CAIRO_INT_STATUS_UNSUPPORTED; ++ + status = use_standard_encoding_glyph (font, font->build_stack.stack[3]); + if (unlikely (status)) + return status; +@@ -832,55 +872,49 @@ cairo_type1_font_subset_parse_charstring (cairo_type1_font_subset_t *font, + return status; + + font->build_stack.sp = 0; +- last_op_was_integer = FALSE; + break; + + case TYPE1_CHARSTRING_COMMAND_SBW: +- if (! last_op_was_integer) ++ if (font->build_stack.sp < 4) + return CAIRO_INT_STATUS_UNSUPPORTED; + + font->glyphs[glyph].width = font->build_stack.stack[2]/font->base.units_per_em; + font->build_stack.sp = 0; +- last_op_was_integer = FALSE; +- break; +- +- case TYPE1_CHARSTRING_COMMAND_CALLOTHERSUBR: +- for (i = 0; i < font->build_stack.sp; i++) +- font->ps_stack.other_subr_args[i] = font->build_stack.stack[i]; +- font->ps_stack.num_other_subr_args = font->build_stack.sp; +- font->ps_stack.cur_other_subr_arg = 0; +- font->build_stack.sp = 0; +- last_op_was_integer = FALSE; + break; + +- case TYPE1_CHARSTRING_COMMAND_POP: +- if (font->ps_stack.num_other_subr_args > font->ps_stack.cur_other_subr_arg) { +- font->build_stack.top_value = font->ps_stack.other_subr_args[font->ps_stack.cur_other_subr_arg++]; +- last_op_was_integer = TRUE; ++ case TYPE1_CHARSTRING_COMMAND_DIV: ++ if (font->build_stack.sp < 2) { ++ return CAIRO_INT_STATUS_UNSUPPORTED; + } else { +- font->subset_subrs = FALSE; ++ double num1 = font->build_stack.stack[font->build_stack.sp - 2]; ++ double num2 = font->build_stack.stack[font->build_stack.sp - 1]; ++ font->build_stack.sp--; ++ if (num2 == 0.0) ++ return CAIRO_INT_STATUS_UNSUPPORTED; ++ ++ font->build_stack.stack[font->build_stack.sp - 1] = num1/num2; + } + break; + +- default: +- font->build_stack.sp = 0; +- last_op_was_integer = FALSE; ++ case TYPE1_CHARSTRING_COMMAND_POP: ++ if (font->build_stack.sp < TYPE1_STACKSIZE) { ++ /* use negative number to prevent it being used as a subr_num */ ++ font->build_stack.stack[font->build_stack.sp++] = -1.0; ++ } + break; + } + break; +- +- default: +- font->build_stack.sp = 0; +- last_op_was_integer = FALSE; +- break; + } +- } else { ++ } else { + /* integer argument */ +- p = cairo_type1_font_subset_decode_integer (p, &font->build_stack.top_value); +- last_op_was_integer = TRUE; +- if (font->build_stack.sp < TYPE1_STACKSIZE) +- font->build_stack.stack[font->build_stack.sp++] = font->build_stack.top_value; +- } ++ if (font->build_stack.sp < TYPE1_STACKSIZE) { ++ int val; ++ p = cairo_type1_font_subset_decode_integer (p, &val); ++ font->build_stack.stack[font->build_stack.sp++] = val; ++ } else { ++ return CAIRO_INT_STATUS_UNSUPPORTED; ++ } ++ } + } + + free (charstring); +@@ -1321,7 +1355,6 @@ skip_subrs: + for (j = 0; j < font->num_glyphs; j++) { + glyph = font->subset_index_to_glyphs[j]; + font->build_stack.sp = 0; +- font->ps_stack.num_other_subr_args = 0; + status = cairo_type1_font_subset_parse_charstring (font, + glyph, + font->glyphs[glyph].encrypted_charstring, +-- +cgit v0.9.0.2-2-gbebe +From f18199fcfb3b052c198041fc05156ae3d9e6aee7 Mon Sep 17 00:00:00 2001 +From: Chris Wilson <chris@chris-wilson.co.uk> +Date: Sun, 28 Oct 2012 10:04:12 +0000 +Subject: xlib/shm: Check for XShm headers + +Not all version of libXext ship the same set of headers, so play safe +and check during configure that we have the headers we depend upon in +the code. + +Reported-by: Sebastian Haas <sehaas@gmail.com> +Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> +--- +diff --git a/configure.ac b/configure.ac +index 7adbeb1..021ec8e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -105,6 +105,10 @@ CAIRO_ENABLE_SURFACE_BACKEND(xlib, Xlib, auto, [ + AC_MSG_RESULT(no), + AC_MSG_RESULT(assuming no)) + fi ++ ++ AC_CHECK_HEADERS([X11/extensions/XShm.h X11/extensions/shmproto.h], [], [], ++ [#include <X11/Xlibint.h> ++ #include <X11/Xproto.h>]) + ]) + + CAIRO_ENABLE_SURFACE_BACKEND(xlib_xrender, Xlib Xrender, auto, [ +diff --git a/src/cairo-xlib-surface-shm.c b/src/cairo-xlib-surface-shm.c +index 89f51a9..a3d4385 100644 +--- a/src/cairo-xlib-surface-shm.c ++++ b/src/cairo-xlib-surface-shm.c +@@ -41,12 +41,105 @@ + + #include "cairo-xlib-private.h" + #include "cairo-xlib-surface-private.h" +-#include "cairo-image-surface-private.h" +-#include "cairo-mempool-private.h" ++ ++#if !HAVE_X11_EXTENSIONS_XSHM_H || !HAVE_X11_EXTENSIONS_SHMPROTO_H ++void _cairo_xlib_display_init_shm (cairo_xlib_display_t *display) {} ++ ++cairo_surface_t * ++_cairo_xlib_surface_get_shm (cairo_xlib_surface_t *surface, ++ cairo_bool_t overwrite) ++{ ++ return NULL; ++} ++ ++cairo_int_status_t ++_cairo_xlib_surface_put_shm (cairo_xlib_surface_t *surface) ++{ ++ ASSERT_NOT_REACHED; ++ return CAIRO_INT_STATUS_SUCCESS; ++} ++ ++cairo_surface_t * ++_cairo_xlib_surface_create_shm (cairo_xlib_surface_t *other, ++ pixman_format_code_t format, ++ int width, int height) ++{ ++ return NULL; ++} ++ ++cairo_surface_t * ++_cairo_xlib_surface_create_shm__image (cairo_xlib_surface_t *surface, ++ pixman_format_code_t format, ++ int width, int height) ++{ ++ return NULL; ++} ++ ++cairo_surface_t * ++_cairo_xlib_surface_create_similar_shm (void *other, ++ cairo_format_t format, ++ int width, int height) ++{ ++ return cairo_image_surface_create (format, width, height); ++} ++ ++void ++_cairo_xlib_shm_surface_mark_active (cairo_surface_t *_shm) ++{ ++ ASSERT_NOT_REACHED; ++} ++ ++void ++_cairo_xlib_shm_surface_get_ximage (cairo_surface_t *surface, ++ XImage *ximage) ++{ ++ ASSERT_NOT_REACHED; ++} ++ ++void * ++_cairo_xlib_shm_surface_get_obdata (cairo_surface_t *surface) ++{ ++ ASSERT_NOT_REACHED; ++ return NULL; ++} ++ ++Pixmap ++_cairo_xlib_shm_surface_get_pixmap (cairo_surface_t *surface) ++{ ++ ASSERT_NOT_REACHED; ++ return 0; ++} ++ ++XRenderPictFormat * ++_cairo_xlib_shm_surface_get_xrender_format (cairo_surface_t *surface) ++{ ++ ASSERT_NOT_REACHED; ++ return NULL; ++} ++ ++cairo_bool_t ++_cairo_xlib_shm_surface_is_active (cairo_surface_t *surface) ++{ ++ ASSERT_NOT_REACHED; ++ return FALSE; ++} ++ ++cairo_bool_t ++_cairo_xlib_shm_surface_is_idle (cairo_surface_t *surface) ++{ ++ ASSERT_NOT_REACHED; ++ return TRUE; ++} ++ ++void _cairo_xlib_display_fini_shm (cairo_xlib_display_t *display) {} ++ ++#else + + #include "cairo-damage-private.h" + #include "cairo-default-context-private.h" ++#include "cairo-image-surface-private.h" + #include "cairo-list-inline.h" ++#include "cairo-mempool-private.h" + + #include <X11/Xlibint.h> + #include <X11/Xproto.h> +@@ -1281,5 +1374,5 @@ _cairo_xlib_display_fini_shm (cairo_xlib_display_t *display) + free (shm); + display->shm = NULL; + } +- ++#endif + #endif +-- +cgit v0.9.0.2-2-gbebe +From 0e2458697848cf8c89c9d57fa9b64f0ea7bd0877 Mon Sep 17 00:00:00 2001 +From: Chris Wilson <chris@chris-wilson.co.uk> +Date: Sun, 28 Oct 2012 10:08:39 +0000 +Subject: xlib/shm: Use shmstr.h instead of shmproto.h if available + +Before it was known as shmproto.h, the wire protocol definition was to +be found in shmstr.h, so if we don't have the current version of libXext +try to use the older includes. + +Reported-by: Sebastian Haas <sehaas@gmail.com> +Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> +--- +diff --git a/configure.ac b/configure.ac +index 021ec8e..f523284 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -106,7 +106,7 @@ CAIRO_ENABLE_SURFACE_BACKEND(xlib, Xlib, auto, [ + AC_MSG_RESULT(assuming no)) + fi + +- AC_CHECK_HEADERS([X11/extensions/XShm.h X11/extensions/shmproto.h], [], [], ++ AC_CHECK_HEADERS([X11/extensions/XShm.h X11/extensions/shmproto.h X11/extensions/shmstr.h], [], [], + [#include <X11/Xlibint.h> + #include <X11/Xproto.h>]) + ]) +diff --git a/src/cairo-xlib-surface-shm.c b/src/cairo-xlib-surface-shm.c +index a3d4385..44e6284 100644 +--- a/src/cairo-xlib-surface-shm.c ++++ b/src/cairo-xlib-surface-shm.c +@@ -42,7 +42,7 @@ + #include "cairo-xlib-private.h" + #include "cairo-xlib-surface-private.h" + +-#if !HAVE_X11_EXTENSIONS_XSHM_H || !HAVE_X11_EXTENSIONS_SHMPROTO_H ++#if !HAVE_X11_EXTENSIONS_XSHM_H || !(HAVE_X11_EXTENSIONS_SHMPROTO_H || HAVE_X11_EXTENSIONS_SHMSTR_H) + void _cairo_xlib_display_init_shm (cairo_xlib_display_t *display) {} + + cairo_surface_t * +@@ -144,7 +144,11 @@ void _cairo_xlib_display_fini_shm (cairo_xlib_display_t *display) {} + #include <X11/Xlibint.h> + #include <X11/Xproto.h> + #include <X11/extensions/XShm.h> ++#if HAVE_X11_EXTENSIONS_SHMPROTO_H + #include <X11/extensions/shmproto.h> ++#elif HAVE_X11_EXTENSIONS_SHMSTR_H ++#include <X11/extensions/shmstr.h> ++#endif + #include <sys/ipc.h> + #include <sys/shm.h> + +-- +cgit v0.9.0.2-2-gbebe +From 5a6e1d680a5bf1c4091e74f999abd611abd92334 Mon Sep 17 00:00:00 2001 +From: Adrian Johnson <ajohnson@redneon.com> +Date: Sun, 28 Oct 2012 10:28:52 +0000 +Subject: type1-subset: restore correct callothersub behavior + +that was removed in d57e652f. Without this subsetting of subroutines +won't work for some fonts. +--- +diff --git a/src/cairo-type1-subset.c b/src/cairo-type1-subset.c +index c7f613a..786055a 100644 +--- a/src/cairo-type1-subset.c ++++ b/src/cairo-type1-subset.c +@@ -141,6 +141,11 @@ typedef struct _cairo_type1_font_subset { + int sp; + } build_stack; + ++ struct { ++ int stack[TYPE1_STACKSIZE]; ++ int sp; ++ } ps_stack; ++ + + } cairo_type1_font_subset_t; + +@@ -767,7 +772,9 @@ use_standard_encoding_glyph (cairo_type1_font_subset_t *font, int index) + #define TYPE1_CHARSTRING_COMMAND_POP 0x0c11 + #define TYPE1_CHARSTRING_COMMAND_SETCURRENTPOINT 0x0c21 + +-/* Get glyph width and look for seac operatorParse charstring */ ++/* Parse the charstring, including recursing into subroutines. Find ++ * the glyph width, subroutines called, and glyphs required by the ++ * SEAC operator. */ + static cairo_status_t + cairo_type1_font_subset_parse_charstring (cairo_type1_font_subset_t *font, + int glyph, +@@ -814,6 +821,7 @@ cairo_type1_font_subset_parse_charstring (cairo_type1_font_subset_t *font, + case TYPE1_CHARSTRING_COMMAND_RETURN: + case TYPE1_CHARSTRING_COMMAND_ENDCHAR: + default: ++ /* stack clearing operator */ + font->build_stack.sp = 0; + break; + +@@ -848,8 +856,8 @@ cairo_type1_font_subset_parse_charstring (cairo_type1_font_subset_t *font, + case TYPE1_CHARSTRING_COMMAND_VSTEM3: + case TYPE1_CHARSTRING_COMMAND_HSTEM3: + case TYPE1_CHARSTRING_COMMAND_SETCURRENTPOINT: +- case TYPE1_CHARSTRING_COMMAND_CALLOTHERSUBR: + default: ++ /* stack clearing operator */ + font->build_stack.sp = 0; + break; + +@@ -896,11 +904,25 @@ cairo_type1_font_subset_parse_charstring (cairo_type1_font_subset_t *font, + } + break; + ++ case TYPE1_CHARSTRING_COMMAND_CALLOTHERSUBR: ++ if (font->build_stack.sp < 1) ++ return CAIRO_INT_STATUS_UNSUPPORTED; ++ ++ font->build_stack.sp--; ++ font->ps_stack.sp = 0; ++ while (font->build_stack.sp) ++ font->ps_stack.stack[font->ps_stack.sp++] = font->build_stack.stack[--font->build_stack.sp]; ++ ++ break; ++ + case TYPE1_CHARSTRING_COMMAND_POP: +- if (font->build_stack.sp < TYPE1_STACKSIZE) { +- /* use negative number to prevent it being used as a subr_num */ +- font->build_stack.stack[font->build_stack.sp++] = -1.0; +- } ++ if (font->ps_stack.sp < 1) ++ return CAIRO_INT_STATUS_UNSUPPORTED; ++ ++ /* T1 spec states that if the interpreter does not ++ * support executing the callothersub, the results ++ * must be taken from the callothersub arguments. */ ++ font->build_stack.stack[font->build_stack.sp++] = font->ps_stack.stack[--font->ps_stack.sp]; + break; + } + break; +@@ -1355,6 +1377,7 @@ skip_subrs: + for (j = 0; j < font->num_glyphs; j++) { + glyph = font->subset_index_to_glyphs[j]; + font->build_stack.sp = 0; ++ font->ps_stack.sp = 0; + status = cairo_type1_font_subset_parse_charstring (font, + glyph, + font->glyphs[glyph].encrypted_charstring, +-- +cgit v0.9.0.2-2-gbebe +From 0c800dc3f64ee030df1cd0a6a1dcd6df71502dea Mon Sep 17 00:00:00 2001 +From: Adrian Johnson <ajohnson@redneon.com> +Date: Tue, 30 Oct 2012 08:53:30 +0000 +Subject: type1-subset: ensure subroutine numnber is an integer + +--- +diff --git a/src/cairo-type1-subset.c b/src/cairo-type1-subset.c +index 786055a..dff4a95 100644 +--- a/src/cairo-type1-subset.c ++++ b/src/cairo-type1-subset.c +@@ -827,15 +827,18 @@ cairo_type1_font_subset_parse_charstring (cairo_type1_font_subset_t *font, + + case TYPE1_CHARSTRING_COMMAND_CALLSUBR: + if (font->subset_subrs && font->build_stack.sp > 0) { +- int subr_num = font->build_stack.stack[--font->build_stack.sp]; +- if (subr_num >= 0 && subr_num < font->num_subrs) { +- font->subrs[subr_num].used = TRUE; +- status = cairo_type1_font_subset_parse_charstring ( +- font, +- glyph, +- font->subrs[subr_num].subr_string, +- font->subrs[subr_num].subr_length); +- break; ++ double int_val; ++ if (modf(font->build_stack.stack[--font->build_stack.sp], &int_val) == 0.0) { ++ int subr_num = int_val; ++ if (subr_num >= 0 && subr_num < font->num_subrs) { ++ font->subrs[subr_num].used = TRUE; ++ status = cairo_type1_font_subset_parse_charstring ( ++ font, ++ glyph, ++ font->subrs[subr_num].subr_string, ++ font->subrs[subr_num].subr_length); ++ break; ++ } + } + } + font->subset_subrs = FALSE; +-- +cgit v0.9.0.2-2-gbebe +From 65176b7380f0d633da514be1febe16f17b99d876 Mon Sep 17 00:00:00 2001 +From: Kevin Tardif <kiyoka@gmail.com> +Date: Tue, 30 Oct 2012 04:27:27 +0000 +Subject: type1-subset, cff-subset: Plugged 2 memory leaks + +- _cairo_type1_font_subset_fini doesn't free font->cleartext +- _cairo_cff_font_create can exit without freeing font->font_name and/or + font->data; _cairo_cff_font_load_opentype_cff is called to allocate + font_name, then _cairo_cff_font_load_cff is called to allocate + font->data, then _cairo_cff_font_load_cff's return status is checked + and if it failed, it jumps to fail1. This can cause font_name to leak + since the fail1 target only frees the font variable. In addition, + _cairo_cff_font_load_cff can fail -after- allocating data, and then + data won't be freed either. + +Bug 56566 +--- +diff --git a/src/cairo-cff-subset.c b/src/cairo-cff-subset.c +index e3040fc..bd8d5b5 100644 +--- a/src/cairo-cff-subset.c ++++ b/src/cairo-cff-subset.c +@@ -2787,7 +2787,7 @@ _cairo_cff_font_create (cairo_scaled_font_subset_t *scaled_font_subset, + if (backend->is_synthetic && backend->is_synthetic (scaled_font_subset->scaled_font)) + return CAIRO_INT_STATUS_UNSUPPORTED; + +- font = malloc (sizeof (cairo_cff_font_t)); ++ font = calloc (1, sizeof (cairo_cff_font_t)); + if (unlikely (font == NULL)) + return _cairo_error (CAIRO_STATUS_NO_MEMORY); + +@@ -2862,11 +2862,11 @@ fail4: + fail3: + free (font->subset_font_name); + fail2: +- free (font->data); +- free (font->font_name); + free (font->ps_name); + _cairo_array_fini (&font->output); + fail1: ++ free (font->data); ++ free (font->font_name); + free (font); + + return status; +diff --git a/src/cairo-type1-subset.c b/src/cairo-type1-subset.c +index dff4a95..2ec56f1 100644 +--- a/src/cairo-type1-subset.c ++++ b/src/cairo-type1-subset.c +@@ -1670,6 +1670,8 @@ _cairo_type1_font_subset_fini (cairo_type1_font_subset_t *font) + + free (font->subset_index_to_glyphs); + ++ free (font->cleartext); ++ + return status; + } + +-- +cgit v0.9.0.2-2-gbebe +From 66625cb46c985321c46b79d2163a4d676d6700ba Mon Sep 17 00:00:00 2001 +From: Chris Wilson <chris@chris-wilson.co.uk> +Date: Tue, 30 Oct 2012 12:40:41 +0000 +Subject: xlib: Apply the image offsets to the destination rather the source + +So that we can specify the entire source surface as the region to copy +and not introduce clipping errors. + +Fixes regression from +commit c068691ff57c2f6cd750a54db17393c0e132cb00 +Author: Chris Wilson <chris@chris-wilson.co.uk> +Date: Fri Aug 17 21:33:54 2012 +0100 + + xlib/shm: Use an impromptu upload ShmSegment + +Reported-by: John Lindgren <john.lindgren@aol.com> +Reported-by: Kalev Lember <kalevlember@gmail.com> +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56547 +Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> +--- +diff --git a/src/cairo-xlib-render-compositor.c b/src/cairo-xlib-render-compositor.c +index e325382..74c43e9 100644 +--- a/src/cairo-xlib-render-compositor.c ++++ b/src/cairo-xlib-render-compositor.c +@@ -179,22 +179,19 @@ copy_image_boxes (void *_dst, + int x2 = _cairo_fixed_integer_part (chunk->base[i].p2.x); + int y2 = _cairo_fixed_integer_part (chunk->base[i].p2.y); + +- rects[j].x = x1; +- rects[j].y = y1; +- rects[j].width = x2 - x1; +- rects[j].height = y2 - y1; +- j++; ++ if (x2 > x1 && y2 > y1) { ++ rects[j].x = x1; ++ rects[j].y = y1; ++ rects[j].width = x2 - x1; ++ rects[j].height = y2 - y1; ++ j++; ++ } + } + } +- assert (j == boxes->num_boxes); + + XSetClipRectangles (dst->dpy, gc, 0, 0, rects, j, Unsorted); +- + XCopyArea (dst->dpy, src, dst->drawable, gc, +- dx, dy, +- image->width, image->height, +- 0, 0); +- ++ 0, 0, image->width, image->height, -dx, -dy); + XSetClipMask (dst->dpy, gc, None); + + if (rects != stack_rects) +@@ -337,7 +334,8 @@ draw_image_boxes (void *_dst, + + if (_cairo_xlib_shm_surface_get_pixmap (&image->base)) { + status = copy_image_boxes (dst, image, boxes, dx, dy); +- goto out; ++ if (status != CAIRO_INT_STATUS_UNSUPPORTED) ++ goto out; + } + } + } +-- +cgit v0.9.0.2-2-gbebe diff --git a/extra/empathy/PKGBUILD b/extra/empathy/PKGBUILD index e55f080bb..f84f8d8ce 100644 --- a/extra/empathy/PKGBUILD +++ b/extra/empathy/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 169862 2012-10-30 22:24:57Z heftig $ +# $Id: PKGBUILD 170065 2012-10-31 13:32:53Z ibiru $ # Maintainer: Ionut Biru <ibiru@archlinux.org> pkgname=empathy pkgver=3.6.1 -pkgrel=1 +pkgrel=2 pkgdesc="A GNOME instant messaging client using the Telepathy framework." arch=('i686' 'x86_64') url="http://live.gnome.org/Empathy" @@ -16,7 +16,7 @@ optdepends=('telepathy-gabble: XMPP/Jabber support' 'telepathy-rakia: SIP support' 'telepathy-haze: libpurple support' 'nautilus-sendto: Send files from nautilus') -options=('!libtool') +options=('!libtool' '!makeflags') groups=('gnome-extra') install=empathy.install source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver:0:3}/$pkgname-$pkgver.tar.xz) diff --git a/extra/gconf-editor/PKGBUILD b/extra/gconf-editor/PKGBUILD index 94ade7b75..43e03ae09 100644 --- a/extra/gconf-editor/PKGBUILD +++ b/extra/gconf-editor/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 150859 2012-02-23 13:04:28Z ibiru $ +# $Id: PKGBUILD 170049 2012-10-31 09:09:59Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gconf-editor -pkgver=3.0.0 -pkgrel=2 +pkgver=3.0.1 +pkgrel=1 pkgdesc="Graphical gconf registry editor" arch=(i686 x86_64) license=('GPL') @@ -13,11 +13,14 @@ url="http://www.gnome.org" groups=('gnome-extra') options=(!emptydirs) install=gconf-editor.install -source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2) -sha256sums=('184e17416c2dd927ccb3a9b435d86fbe4b654316b91a6db724a3fd447a9fae60') +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2 + fix-assertion-failed-crash.patch) +sha256sums=('9afc4fc0d0afe019998736f06c04cbfa0393c813e2aa755133d95e83835f8869' + '6550714ee06d09632244d0f4f41402224599f5230ef71376ea34291ce0d651bc') build() { cd "$srcdir/$pkgname-$pkgver" + patch -Np1 -i "${srcdir}/fix-assertion-failed-crash.patch" ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-scrollkeeper make diff --git a/extra/gconf-editor/fix-assertion-failed-crash.patch b/extra/gconf-editor/fix-assertion-failed-crash.patch new file mode 100644 index 000000000..c9162f7f6 --- /dev/null +++ b/extra/gconf-editor/fix-assertion-failed-crash.patch @@ -0,0 +1,34 @@ +From 25d823099337f7ede4782f46fea46f251646dc3e Mon Sep 17 00:00:00 2001 +From: Edward Sheldrake <ejsheldrake@gmail.com> +Date: Wed, 11 Apr 2012 07:27:16 +0000 +Subject: Fix assertion failed crash + +Fix "assertion failed: (last_slash != NULL)" crash while navigating the +left tree view, fixed by having the model for the right list view emit +all the row deleted signals before deleting any of its data. + +Fixes https://bugzilla.gnome.org/show_bug.cgi?id=670586 +--- +diff --git a/src/gconf-list-model.c b/src/gconf-list-model.c +index 27e1af6..4fc60f8 100644 +--- a/src/gconf-list-model.c ++++ b/src/gconf-list-model.c +@@ -133,11 +133,14 @@ gconf_list_model_set_root_path (GConfListModel *model, const gchar *root_path) + + if (model->root_path != NULL) { + for (list = model->values; list; list = list->next) { ++ model->stamp++; ++ gtk_tree_model_row_deleted (GTK_TREE_MODEL (model), path); ++ } ++ ++ for (list = model->values; list; list = list->next) { + GConfEntry *entry = list->data; + + g_hash_table_remove (model->key_hash, gconf_entry_get_key (entry)); +- model->stamp++; +- gtk_tree_model_row_deleted (GTK_TREE_MODEL (model), path); + + gconf_entry_unref (entry); + } +-- +cgit v0.9.0.2 diff --git a/extra/gconf/PKGBUILD b/extra/gconf/PKGBUILD index 9a4d1f6b5..31e7a370f 100644 --- a/extra/gconf/PKGBUILD +++ b/extra/gconf/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 156770 2012-04-23 09:05:12Z ibiru $ +# $Id: PKGBUILD 170051 2012-10-31 09:24:25Z jgc $ # Maintainer: Jan de Groot <jan@archlinux.org> pkgname=gconf pkgver=3.2.5 -pkgrel=2 +pkgrel=3 pkgdesc="A configuration database system" arch=(i686 x86_64) license=('LGPL') @@ -13,11 +13,17 @@ options=('!libtool') install=gconf.install url="http://www.gnome.org" source=(http://ftp.gnome.org/pub/gnome/sources/GConf/3.2/GConf-$pkgver.tar.xz + gconf-dbus-fix-use-after-free.patch + gconf-dbus-fix-shutdown.patch + gsettings-schema-convert-dont-fail.patch gconf-merge-schema gconfpkg gconf-reload.patch 01_xml-gettext-domain.patch) sha256sums=('4ddea9503a212ee126c5b46a0a958fd5484574c3cb6ef2baf38db02e819e58c6' + '76c078218e7c3e93691ddd4d7fd9f5c83d4862d0a0406d17b805f3106b50375d' + 'ddf55a40a260dd00364b32b3200bd8a76e890070ea6267fbfb322907c0946ab2' + 'be6f084a31229e8edfd6936005c6bb4f2d1548b777df5937923b4702f7a9ac19' 'ee6b6e6f4975dad13a8c45f1c1f0547a99373bdecdcd6604bfc12965c328a028' 'bf1928718caa5df2b9e54a13cfd0f15a8fe0e09e86b84385ce023616a114e898' '567b78d8b4b4bbcb77c5f134d57bc503c34867fcc6341c0b01716bcaa4a21694' @@ -25,6 +31,11 @@ sha256sums=('4ddea9503a212ee126c5b46a0a958fd5484574c3cb6ef2baf38db02e819e58c6' build() { cd "GConf-$pkgver" + # Upstream fixes from git + patch -Np1 -i "$srcdir/gconf-dbus-fix-shutdown.patch" + patch -Np1 -i "$srcdir/gsettings-schema-convert-dont-fail.patch" + patch -Np1 -i "$srcdir/gconf-dbus-fix-use-after-free.patch" + # Patch from fedora - reloads gconf after installing schemas patch -Np1 -i "$srcdir/gconf-reload.patch" # http://bugzilla.gnome.org/show_bug.cgi?id=568845 diff --git a/extra/gconf/gconf-dbus-fix-shutdown.patch b/extra/gconf/gconf-dbus-fix-shutdown.patch new file mode 100644 index 000000000..b294284b2 --- /dev/null +++ b/extra/gconf/gconf-dbus-fix-shutdown.patch @@ -0,0 +1,34 @@ +From 39299610083e0e7f9b44e62b7f4e51e89693cf89 Mon Sep 17 00:00:00 2001 +From: Ray Strode <rstrode@redhat.com> +Date: Tue, 06 Mar 2012 19:39:06 +0000 +Subject: dbus: fix shutdown + +gconftool-2 wasn't properly shutting down gconfd, because +it was trying to do it before connecting to the daemon. + +This commit makes sure that we always first try to connect to +the daemon before asking it to shutdown. + +https://bugzilla.gnome.org/show_bug.cgi?id=671490 +--- +diff --git a/gconf/gconf-dbus.c b/gconf/gconf-dbus.c +index 442a94b..f167fc5 100644 +--- a/gconf/gconf-dbus.c ++++ b/gconf/gconf-dbus.c +@@ -2483,7 +2483,13 @@ gconf_shutdown_daemon (GError** err) + { + DBusMessage *message; + +- /* Don't want to spawn it if it's already down */ ++ /* If we haven't reached out to it yet, ++ * reach out now. ++ */ ++ if (global_conn == NULL) ++ gconf_ping_daemon(); ++ ++ /* But we don't want to spawn it if it's already down */ + if (global_conn == NULL || !service_running) + return; + +-- +cgit v0.9.0.2 diff --git a/extra/gconf/gconf-dbus-fix-use-after-free.patch b/extra/gconf/gconf-dbus-fix-use-after-free.patch new file mode 100644 index 000000000..d99b222cc --- /dev/null +++ b/extra/gconf/gconf-dbus-fix-use-after-free.patch @@ -0,0 +1,99 @@ +From 84884e9df7ce8c081a1c223c66a799b82545ff1e Mon Sep 17 00:00:00 2001 +From: Milan Crha <mcrha@redhat.com> +Date: Thu, 18 Oct 2012 20:08:02 +0000 +Subject: gconf-dbus: fix use after free + +gconf_engine_get_fuller is accessing freed memory. +The problem is that it's referencing strings that are owned +by a D-Bus message, and they go away when the D-Bus message is freed. + +This commit addresses the problem by duplicating the strings and +freeing them later. + +https://bugzilla.gnome.org/show_bug.cgi?id=667167 +--- +diff --git a/gconf/gconf-dbus-utils.c b/gconf/gconf-dbus-utils.c +index 6fd5bfa..92f5980 100644 +--- a/gconf/gconf-dbus-utils.c ++++ b/gconf/gconf-dbus-utils.c +@@ -569,11 +569,11 @@ gconf_dbus_utils_get_entry_values (DBusMessageIter *main_iter, + gchar **schema_name_p) + { + DBusMessageIter struct_iter; +- gchar *key; ++ const gchar *key; + GConfValue *value; + gboolean is_default; + gboolean is_writable; +- gchar *schema_name; ++ const gchar *schema_name; + + g_return_val_if_fail (dbus_message_iter_get_arg_type (main_iter) == DBUS_TYPE_STRUCT, + FALSE); +@@ -587,7 +587,7 @@ gconf_dbus_utils_get_entry_values (DBusMessageIter *main_iter, + value = utils_get_value (&struct_iter); + + dbus_message_iter_next (&struct_iter); +- schema_name = (gchar *) utils_get_optional_string (&struct_iter); ++ schema_name = utils_get_optional_string (&struct_iter); + + dbus_message_iter_next (&struct_iter); + dbus_message_iter_get_basic (&struct_iter, &is_default); +@@ -596,7 +596,7 @@ gconf_dbus_utils_get_entry_values (DBusMessageIter *main_iter, + dbus_message_iter_get_basic (&struct_iter, &is_writable); + + if (key_p) +- *key_p = key; ++ *key_p = g_strdup (key); + + if (value_p) + *value_p = value; +@@ -604,7 +604,7 @@ gconf_dbus_utils_get_entry_values (DBusMessageIter *main_iter, + gconf_value_free (value); + + if (schema_name_p) +- *schema_name_p = schema_name; ++ *schema_name_p = g_strdup (schema_name); + + if (is_default_p) + *is_default_p = is_default; +diff --git a/gconf/gconf-dbus.c b/gconf/gconf-dbus.c +index f167fc5..5610fcf 100644 +--- a/gconf/gconf-dbus.c ++++ b/gconf/gconf-dbus.c +@@ -1252,12 +1252,13 @@ gconf_engine_get_fuller (GConfEngine *conf, + + if (schema_name && schema_name[0] != '/') + { ++ g_free (schema_name); + schema_name = NULL; + } + + if (schema_name_p) +- *schema_name_p = g_strdup (schema_name); +- ++ *schema_name_p = schema_name; ++ + return val; + } + +@@ -2402,7 +2403,7 @@ handle_notify (DBusConnection *connection, + GConfEngine *conf2) + { + GConfEngine *conf; +- gchar *key, *schema_name; ++ gchar *key = NULL, *schema_name = NULL; + gboolean is_default, is_writable; + DBusMessageIter iter; + GConfValue *value; +@@ -2466,6 +2467,8 @@ handle_notify (DBusConnection *connection, + + if (value) + gconf_value_free (value); ++ g_free (key); ++ g_free (schema_name); + + if (!match) + return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; +-- +cgit v0.9.0.2 diff --git a/extra/gconf/gsettings-schema-convert-dont-fail.patch b/extra/gconf/gsettings-schema-convert-dont-fail.patch new file mode 100644 index 000000000..92040b343 --- /dev/null +++ b/extra/gconf/gsettings-schema-convert-dont-fail.patch @@ -0,0 +1,28 @@ +From 02f12f41b031a1c2672e7cf1cb8ebde58288c547 Mon Sep 17 00:00:00 2001 +From: Guido Günther <agx@sigxcpu.org> +Date: Thu, 23 Feb 2012 20:14:18 +0000 +Subject: gsettings-schema-convert: Don't fail to convert lists without default element + +--- +diff --git a/gsettings/gsettings-schema-convert b/gsettings/gsettings-schema-convert +index a60dc35..913cc83 100755 +--- a/gsettings/gsettings-schema-convert ++++ b/gsettings/gsettings-schema-convert +@@ -854,11 +854,10 @@ class GConfSchema: + # Fix the default value to be parsable by GVariant + if self.type == 'list': + l = self.default.strip() +- if not (l[0] == '[' and l[-1] == ']'): +- if not l: +- l = '[]' +- else: +- raise GSettingsSchemaConvertException('Cannot parse default list value \'%s\' for key \'%s\'.' % (self.default, self.applyto or self.key)) ++ if not l: ++ l = '[]' ++ elif not (l[0] == '[' and l[-1] == ']'): ++ raise GSettingsSchemaConvertException('Cannot parse default list value \'%s\' for key \'%s\'.' % (self.default, self.applyto or self.key)) + values = l[1:-1].strip() + if not values: + self.default = '[]' +-- +cgit v0.9.0.2 diff --git a/extra/gnome-shell/PKGBUILD b/extra/gnome-shell/PKGBUILD index 894a0e978..506592963 100644 --- a/extra/gnome-shell/PKGBUILD +++ b/extra/gnome-shell/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 169913 2012-10-30 22:34:45Z heftig $ +# $Id: PKGBUILD 170067 2012-10-31 13:36:50Z ibiru $ # Maintainer: Ionut Biru <ibiru@archlinux.org> # Contributor: Flamelab <panosfilip@gmail.com pkgname=gnome-shell pkgver=3.6.1 -pkgrel=1 +pkgrel=2 pkgdesc="The next generation GNOME Shell" arch=('i686' 'x86_64') url="http://live.gnome.org/GnomeShell" diff --git a/extra/gnutls/PKGBUILD b/extra/gnutls/PKGBUILD index b4e24f364..b85e0fac8 100644 --- a/extra/gnutls/PKGBUILD +++ b/extra/gnutls/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 168527 2012-10-13 06:38:44Z andyrtr $ +# $Id: PKGBUILD 170032 2012-10-31 05:16:00Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gnutls pkgver=3.1.3 -pkgrel=1 +pkgrel=2 pkgdesc="A library which provides a secure layer over a reliable transport layer" arch=('i686' 'x86_64') license=('GPL3' 'LGPL') url="http://www.gnu.org/software/gnutls/" install=gnutls.install options=('!libtool' '!zipman') -depends=('gcc-libs>=4.7.1-5' 'libtasn1' 'readline' 'zlib' 'nettle>=2.4' 'p11-kit>=0.12') +depends=('gcc-libs>=4.7.1-5' 'libtasn1>=3.0' 'readline' 'zlib' 'nettle>=2.4' 'p11-kit>=0.12') makedepends=('valgrind' 'strace') source=(http://ftp.gnu.org/gnu/gnutls/${pkgname}-${pkgver}.tar.xz{,.sig}) md5sums=('8a7b47456f65ffa8c01c58461fed1388' diff --git a/extra/kdebase-workspace/PKGBUILD b/extra/kdebase-workspace/PKGBUILD index ed6d4d6ad..bc329f0e5 100644 --- a/extra/kdebase-workspace/PKGBUILD +++ b/extra/kdebase-workspace/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 169946 2012-10-30 22:46:25Z heftig $ +# $Id: PKGBUILD 170060 2012-10-31 10:38:11Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> pkgname=kdebase-workspace _pkgname=kde-workspace pkgver=4.9.2 -pkgrel=5 +pkgrel=6 pkgdesc="Provides the interface and basic tools for the KDE workspace" arch=('i686' 'x86_64') url='https://projects.kde.org/projects/kde/kde-workspace' @@ -26,18 +26,22 @@ backup=('usr/share/config/kdm/kdmrc') source=("http://download.kde.org/stable/${pkgver}/src/${_pkgname}-${pkgver}.tar.xz" 'kdm' 'kde.pam' 'kde-np.pam' 'kscreensaver.pam' 'kdm.service' 'kdm.logrotate' 'etc-scripts.patch' 'terminate-server.patch' 'kdm-xinitrd.patch' - 'logind-support.patch') + 'logind-support.patch' + 'logind-support2.patch' + 'fix-mesa9.patch') sha1sums=('091bec159d85db2a9a6d6b1b43a53183c23de488' '5db3a245201bd4a50e65aa2ef583cf5490e4f646' '660eae40a707d2711d8d7f32a93214865506b795' - 'b7980f2e199963caf8e92b499042d244ece2fca0' + '6aeecc9e0e221f0515c6bf544f9a3c11cb6961fe' '106635aa1aae51d6f0668b1853f6c49a4fe9d3d8' 'b6f8e8692737b11eec1f8022ce74b5b23e247b1b' 'bbe55f2000217474ce7246f12ee437ceaaf7e9ae' 'c079ebd157c836ba996190f0d2bcea1a7828d02c' 'ac7bc292c865bc1ab8c02e6341aa7aeaf1a3eeee' 'd509dac592bd8b310df27991b208c95b6d907514' - 'ccde71c42e19feaf40d3bd76e7396a0cb6df012f') + 'ccde71c42e19feaf40d3bd76e7396a0cb6df012f' + '8f27ebd4bcc2f833a73d453837f4522b2be0aa1f' + 'c57583555bf8acd213295316512b92b6dc07703e') build() { cd ${_pkgname}-${pkgver} @@ -51,6 +55,9 @@ build() { patch -p0 -i "${srcdir}"/terminate-server.patch # KDEBUG#307412 (fixed upstream) patch -p1 -i "${srcdir}"/logind-support.patch + patch -p1 -i "${srcdir}"/logind-support2.patch + # KDEBUG#308385 (fixed upstream) + patch -p1 -i "${srcdir}"/fix-mesa9.patch cd ../ diff --git a/extra/kdebase-workspace/fix-mesa9.patch b/extra/kdebase-workspace/fix-mesa9.patch new file mode 100644 index 000000000..4c5fca408 --- /dev/null +++ b/extra/kdebase-workspace/fix-mesa9.patch @@ -0,0 +1,60 @@ +commit 6cf057777555a5d0c834de3a0165a62916cf3b40 +Author: Fredrik Höglund <fredrik@kde.org> +Date: Tue Oct 30 18:20:00 2012 +0100 + + kwin/glx: Avoid MSAA configs in initBufferConfigs() + + It appears that we're accidentally choosing an MSAA config with the + Intel driver in Mesa 9.0. So change the algorithm to take the values + of GLX_SAMPLES and GLX_SAMPLE_BUFFERS into account. + + Found by Kenneth Graunke. + +diff --git a/kwin/scene_opengl_glx.cpp b/kwin/scene_opengl_glx.cpp +index 1fe2f18..cf7933b 100644 +--- a/kwin/scene_opengl_glx.cpp ++++ b/kwin/scene_opengl_glx.cpp +@@ -270,12 +270,15 @@ bool SceneOpenGL::initBufferConfigs() + fbcbuffer_nondb = NULL; + + for (int i = 0; i < 2; i++) { +- int back, stencil, depth, caveat, alpha; ++ int back, stencil, depth, caveat, msaa_buffers, msaa_samples, alpha; + back = i > 0 ? INT_MAX : 1; + stencil = INT_MAX; + depth = INT_MAX; + caveat = INT_MAX; ++ msaa_buffers = INT_MAX; ++ msaa_samples = INT_MAX; + alpha = 0; ++ + for (int j = 0; j < cnt; j++) { + XVisualInfo *vi; + int visual_depth; +@@ -322,10 +325,26 @@ bool SceneOpenGL::initBufferConfigs() + GLX_CONFIG_CAVEAT, &caveat_value); + if (caveat_value > caveat) + continue; ++ ++ int msaa_buffers_value; ++ glXGetFBConfigAttrib(display(), fbconfigs[j], GLX_SAMPLE_BUFFERS, ++ &msaa_buffers_value); ++ if (msaa_buffers_value > msaa_buffers) ++ continue; ++ ++ int msaa_samples_value; ++ glXGetFBConfigAttrib(display(), fbconfigs[j], GLX_SAMPLES, ++ &msaa_samples_value); ++ if (msaa_samples_value > msaa_samples) ++ continue; ++ + back = back_value; + stencil = stencil_value; + depth = depth_value; + caveat = caveat_value; ++ msaa_buffers = msaa_buffers_value; ++ msaa_samples = msaa_samples_value; ++ + if (i > 0) + fbcbuffer_nondb = fbconfigs[ j ]; + else diff --git a/extra/kdebase-workspace/kde-np.pam b/extra/kdebase-workspace/kde-np.pam index eccaa08f4..2a4a940c7 100644 --- a/extra/kdebase-workspace/kde-np.pam +++ b/extra/kdebase-workspace/kde-np.pam @@ -3,7 +3,7 @@ auth required pam_tally.so onerr=succeed file=/var/log/faillog auth required pam_shells.so auth requisite pam_nologin.so auth required pam_env.so -auth optional pam_permit.s +auth optional pam_permit.so account include system-login diff --git a/extra/kdebase-workspace/kdebase-workspace.install b/extra/kdebase-workspace/kdebase-workspace.install index f7d6d305b..c52c06417 100644 --- a/extra/kdebase-workspace/kdebase-workspace.install +++ b/extra/kdebase-workspace/kdebase-workspace.install @@ -4,6 +4,7 @@ post_install() { chown -R 135:135 var/lib/kdm &>/dev/null xdg-icon-resource forceupdate --theme hicolor &>/dev/null update-desktop-database -q + genkdmconf --no-old --no-backup &>/dev/null } post_upgrade() { @@ -12,6 +13,7 @@ post_upgrade() { chown -R 135:135 var/lib/kdm &>/dev/null xdg-icon-resource forceupdate --theme hicolor &> /dev/null update-desktop-database -q + genkdmconf &>/dev/null } post_remove() { @@ -22,4 +24,8 @@ post_remove() { groupdel kdm fi xdg-icon-resource forceupdate --theme hicolor &> /dev/null + + if [ -d usr/share/apps/kdm/faces ]; then + rm -r usr/share/apps/kdm/faces + fi } diff --git a/extra/kdebase-workspace/logind-support2.patch b/extra/kdebase-workspace/logind-support2.patch new file mode 100644 index 000000000..e36757f6a --- /dev/null +++ b/extra/kdebase-workspace/logind-support2.patch @@ -0,0 +1,124 @@ +commit 80e9e6e48ff5b84962f3a8543ee06bcd4f122623 +Author: Lukáš Tinkl <lukas@kde.org> +Date: Tue Oct 30 11:32:52 2012 +0100 + + move systemd inhibition initialization to a slot + + and call it on resume. It looks like the filedescriptor + goes away when you suspend so we need to recreate it. + + BUG: 307412 + +diff --git a/powerdevil/daemon/powerdevilcore.cpp b/powerdevil/daemon/powerdevilcore.cpp +index df79667..7f24cbb 100644 +--- a/powerdevil/daemon/powerdevilcore.cpp ++++ b/powerdevil/daemon/powerdevilcore.cpp +@@ -127,8 +127,6 @@ void Core::onBackendReady() + this, SLOT(onAcAdapterStateChanged(PowerDevil::BackendInterface::AcAdapterState))); + connect(m_backend, SIGNAL(batteryRemainingTimeChanged(qulonglong)), + this, SLOT(onBatteryRemainingTimeChanged(qulonglong))); +- connect(m_backend, SIGNAL(resumeFromSuspend()), +- this, SLOT(onResumeFromSuspend())); + connect(KIdleTime::instance(), SIGNAL(timeoutReached(int,int)), + this, SLOT(onKIdleTimeoutReached(int,int))); + connect(KIdleTime::instance(), SIGNAL(resumingFromIdle()), +@@ -139,6 +137,9 @@ void Core::onBackendReady() + // Set up the policy agent + PowerDevil::PolicyAgent::instance()->init(); + ++ connect(m_backend, SIGNAL(resumeFromSuspend()), ++ this, SLOT(onResumeFromSuspend())); ++ + // Initialize the action pool, which will also load the needed startup actions. + PowerDevil::ActionPool::instance()->init(this); + +@@ -601,6 +602,7 @@ void Core::onResumeFromSuspend() + "/ScreenSaver", + QDBusConnection::sessionBus()); + iface.SimulateUserActivity(); ++ PowerDevil::PolicyAgent::instance()->setupSystemdInhibition(); + + emit resumingFromSuspend(); + } +diff --git a/powerdevil/daemon/powerdevilpolicyagent.cpp b/powerdevil/daemon/powerdevilpolicyagent.cpp +index 70588db..0777846 100644 +--- a/powerdevil/daemon/powerdevilpolicyagent.cpp ++++ b/powerdevil/daemon/powerdevilpolicyagent.cpp +@@ -88,6 +88,7 @@ PolicyAgent *PolicyAgent::instance() + PolicyAgent::PolicyAgent(QObject* parent) + : QObject(parent) + , m_sdAvailable(false) ++ , m_systemdInhibitFd(-1) + , m_ckAvailable(false) + , m_sessionIsBeingInterrupted(false) + , m_lastCookie(0) +@@ -223,23 +224,7 @@ void PolicyAgent::onSessionHandlerRegistered(const QString & serviceName) + + onActiveSessionChanged(m_activeSessionPath); + +- // inhibit systemd handling of power/sleep/lid buttons +- // http://www.freedesktop.org/wiki/Software/systemd/inhibit +- kDebug() << "fd passing available:" << bool(managerIface.connection().connectionCapabilities() & QDBusConnection::UnixFileDescriptorPassing); +- +- QVariantList args; +- args << "handle-power-key:handle-suspend-key:handle-hibernate-key:handle-lid-switch"; // what +- args << "PowerDevil"; // who +- args << "KDE handles power events"; // why +- args << "block"; // mode +- QDBusPendingReply<QDBusUnixFileDescriptor> desc = managerIface.asyncCallWithArgumentList("Inhibit", args); +- desc.waitForFinished(); +- if (desc.isValid()) { +- m_systemdInhibitFd = desc.value(); +- kDebug() << "systemd powersave events handling inhibited, descriptor:" << m_systemdInhibitFd.fileDescriptor(); +- } +- else +- kWarning() << "failed to inhibit systemd powersave handling"; ++ setupSystemdInhibition(); + + kDebug() << "systemd support initialized"; + } else if (serviceName == CONSOLEKIT_SERVICE) { +@@ -552,6 +537,31 @@ void PolicyAgent::releaseAllInhibitions() + } + } + ++void PolicyAgent::setupSystemdInhibition() ++{ ++ if (m_systemdInhibitFd.fileDescriptor() != -1) ++ return; ++ ++ // inhibit systemd handling of power/sleep/lid buttons ++ // http://www.freedesktop.org/wiki/Software/systemd/inhibit ++ QDBusInterface managerIface(SYSTEMD_LOGIN1_SERVICE, SYSTEMD_LOGIN1_PATH, SYSTEMD_LOGIN1_MANAGER_IFACE, QDBusConnection::systemBus()); ++ kDebug() << "fd passing available:" << bool(managerIface.connection().connectionCapabilities() & QDBusConnection::UnixFileDescriptorPassing); ++ ++ QVariantList args; ++ args << "handle-power-key:handle-suspend-key:handle-hibernate-key:handle-lid-switch"; // what ++ args << "PowerDevil"; // who ++ args << "KDE handles power events"; // why ++ args << "block"; // mode ++ QDBusPendingReply<QDBusUnixFileDescriptor> desc = managerIface.asyncCallWithArgumentList("Inhibit", args); ++ desc.waitForFinished(); ++ if (desc.isValid()) { ++ m_systemdInhibitFd = desc.value(); ++ kDebug() << "systemd powersave events handling inhibited, descriptor:" << m_systemdInhibitFd.fileDescriptor(); ++ } ++ else ++ kWarning() << "failed to inhibit systemd powersave handling"; ++} ++ + } + + #include "powerdevilpolicyagent.moc" +diff --git a/powerdevil/daemon/powerdevilpolicyagent.h b/powerdevil/daemon/powerdevilpolicyagent.h +index a046497..f1e8c03 100644 +--- a/powerdevil/daemon/powerdevilpolicyagent.h ++++ b/powerdevil/daemon/powerdevilpolicyagent.h +@@ -74,6 +74,8 @@ public: + + RequiredPolicies unavailablePolicies(); + ++ void setupSystemdInhibition(); ++ + public Q_SLOTS: + // Exported slots + uint AddInhibition(uint types, const QString &appName, const QString &reason); diff --git a/extra/kdeplasma-addons/PKGBUILD b/extra/kdeplasma-addons/PKGBUILD index e3fa6d221..da60347b4 100644 --- a/extra/kdeplasma-addons/PKGBUILD +++ b/extra/kdeplasma-addons/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 167845 2012-10-03 14:46:47Z andrea $ +# $Id: PKGBUILD 170053 2012-10-31 10:13:04Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> @@ -76,17 +76,23 @@ pkgname=('kdeplasma-addons-applets-bball' 'kdeplasma-addons-wallpapers-virus' 'kdeplasma-addons-wallpapers-weather') pkgver=4.9.2 -pkgrel=1 +pkgrel=3 arch=('i686' 'x86_64') url='http://www.kde.org' license=('GPL' 'LGPL') groups=('kde' 'kdeplasma-addons') makedepends=('cmake' 'automoc4' 'kdebase-workspace' 'kdeedu-marble' 'eigen' 'scim' 'qwt' 'boost' 'libkexiv2' 'ibus' 'qoauth' 'qjson') -source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.xz") -sha1sums=('9f6493d52beb2ed723038e60f5f9ab53beec4e44') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.xz" + 'fix-spell-crash.patch') +sha1sums=('9f6493d52beb2ed723038e60f5f9ab53beec4e44' + '1ff0e61d73a4fce8ee7f585504a129ff50405ae6') build() { + cd ${pkgbase}-${pkgver} + patch -p1 -i "${srcdir}"/fix-spell-crash.patch + cd ../ + mkdir build cd build cmake ../${pkgbase}-${pkgver} \ diff --git a/extra/kdeplasma-addons/fix-spell-crash.patch b/extra/kdeplasma-addons/fix-spell-crash.patch new file mode 100644 index 000000000..75c26c6ad --- /dev/null +++ b/extra/kdeplasma-addons/fix-spell-crash.patch @@ -0,0 +1,267 @@ +commit 124e35885b8cd1b593b7b83a070bd0bdb5758661 +Author: Simeon Bird <bladud@gmail.com> +Date: Fri Oct 19 21:16:34 2012 -0400 + + Fix the plasma spellchecker's 'foreign language' support. + Previously this caused segfaults (even if not used) because + it called setLanguage(), which is not thread-safe, in match(). + + Instead, this patch constructs a new speller safely for each new + language, without deleting the old one. Old spellers are instead + deleted on the teardown() signal. + + While we're at it, amend the language detection so that the user + can type natural language names (eg, 'german') and have the + spell-checker find the right language. + + REVIEW: 106244 + BUG: 303831 + BUG: 264779 + FIXED-IN: 4.9.3 + +diff --git a/runners/spellchecker/spellcheck.cpp b/runners/spellchecker/spellcheck.cpp +index 672732d..cc6aeb2 100644 +--- a/runners/spellchecker/spellcheck.cpp ++++ b/runners/spellchecker/spellcheck.cpp +@@ -24,6 +24,7 @@ + // #include <KDebug> + #include <KGlobal> + #include <KIcon> ++#include <QSet> + + SpellCheckRunner::SpellCheckRunner(QObject* parent, const QVariantList &args) + : Plasma::AbstractRunner(parent, args) +@@ -43,13 +44,64 @@ void SpellCheckRunner::init() + { + Plasma::AbstractRunner::init(); + +- //store all language names, makes it posible to type "spell german TERM" if english locale is set ++ //Connect prepare and teardown signals ++ connect(this, SIGNAL(prepare()), this, SLOT(loaddata())); ++ connect(this, SIGNAL(teardown()), this, SLOT(destroydata())); ++} ++ ++//Load a default dictionary and some locale names ++void SpellCheckRunner::loaddata() ++{ ++ //Load the default speller, with the default language ++ if (!m_spellers.contains("")) { ++ m_spellers[""] = QSharedPointer<Sonnet::Speller> (new Sonnet::Speller("")); ++ } ++ //store all language names, makes it possible to type "spell german TERM" if english locale is set ++ //Need to construct a map between natual language names and names the spell-check recognises. + KLocale *locale = KGlobal::locale(); +- QStringList codes = locale->allLanguagesList(); +- foreach (const QString &code, codes) { +- const QString name = locale->languageCodeToName(code); +- m_languages[name.toLower()] = code; ++ const QStringList avail = m_spellers[""]->availableLanguages(); ++ //We need to filter the available languages so that we associate the natural language ++ //name (eg. 'german') with one sub-code. ++ QSet<QString> families; ++ //First get the families ++ foreach (const QString &code, avail) { ++ families +=code.left(2); ++ } ++ //Now for each family figure out which is the main code. ++ foreach (const QString &fcode,families) { ++ QStringList family = avail.filter(fcode); ++ QString code; ++ //If we only have one code, use it. ++ //If a string is the default language, use it ++ if (family.contains(m_spellers[""]->language())) { ++ code = m_spellers[""]->language(); ++ } else if (fcode == QLatin1String("en")) { ++ //If the family is english, default to en_US. ++ if (family.contains("en_US")) { ++ code = QLatin1String("en_US"); ++ } ++ } else if (family.contains(fcode+QLatin1String("_")+fcode.toUpper())) { ++ //If we have a speller of the form xx_XX, try that. ++ //This gets us most European languages with more than one spelling. ++ code = fcode+QLatin1String("_")+fcode.toUpper(); ++ } else { ++ //Otherwise, pick the first value as it is highest priority. ++ code = family.first(); ++ } ++ //Finally, add code to the map. ++ const QString name = locale->languageCodeToName(fcode); ++ if (!name.isEmpty()) { ++ m_languages[name.toLower()] = code; ++ } ++// kDebug() << "SPELL lang: " << fcode<< "::"<< name << " : " << code; + } ++ ++} ++ ++void SpellCheckRunner::destroydata() ++{ ++ //Clear the data arrays to save memory ++ m_spellers.clear(); + } + + void SpellCheckRunner::reloadConfiguration() +@@ -73,13 +125,52 @@ void SpellCheckRunner::reloadConfiguration() + setSyntaxes(syns); + } + ++/* Take the input query, split into a list, and see if it contains a language to spell in. ++ * Return the empty string if we can't match a language. */ ++QString SpellCheckRunner::findlang(const QStringList& terms) ++{ ++ //If first term is a language code (like en_GB), set it as the spell-check language ++ if (terms.count() >= 1 && m_spellers[""]->availableLanguages().contains(terms[0])) { ++ return terms[0]; ++ } ++ //If we have two terms and the first is a language name (eg 'french'), ++ //set it as the available language ++ else if (terms.count() >=2) { ++ QString code; ++ { ++ //Is this a descriptive language name? ++ QMap<QString, QString>::const_iterator it = m_languages.constFind(terms[0].toLower()); ++ if (it != m_languages.constEnd()) { ++ code = *it; ++ } ++ //Maybe it is a subset of a language code? ++ else { ++ QStringList codes = QStringList(m_languages.values()).filter(terms[0]); ++ if (!codes.isEmpty()) { ++ code = codes.first(); ++ } ++ } ++ } ++ ++ if (!code.isEmpty()) { ++ //We found a valid language! Check still available ++ const QStringList avail = m_spellers[""]->availableLanguages(); ++ //Does the spell-checker like it? ++ if (avail.contains(code)) { ++ return code; ++ } ++ } ++ //FIXME: Support things like 'british english' or 'canadian french' ++ } ++ return QLatin1String(""); ++} ++ + void SpellCheckRunner::match(Plasma::RunnerContext &context) + { + if (!context.isValid()) { + return; + } + +- + const QString term = context.query(); + QString query = term; + +@@ -88,53 +179,46 @@ void SpellCheckRunner::match(Plasma::RunnerContext &context) + if (query.left(len) != m_triggerWord) { + return; + } +- +- QString language = m_speller.defaultLanguage(); + query = query.mid(len).trimmed(); +- QStringList terms = query.split(' '); +- +- //two terms specified, check if first is a language +- QString customLanguage; +- if (terms.count() == 2) { +- customLanguage = terms[0]; +- query = terms[1]; +- } +- //three terms specified, check if first two are a language, e.g. "american english" +- if (terms.count() == 3) { +- customLanguage = terms[0] + ' ' + terms[1]; +- query = terms[2]; +- } +- +- if (!customLanguage.isEmpty()) { +- language = customLanguage; +- m_speller.setLanguage(language); ++ } + +- //not valid, maybe it is a language name, not a code +- if (!m_speller.isValid()) { +- QHash<QString, QString>::const_iterator it = m_languages.constFind(language.toLower()); +- //is a valid language name +- if (it != m_languages.constEnd()) { +- language = *it; ++ //Pointer to speller object with our chosen language ++ QSharedPointer<Sonnet::Speller> speller = m_spellers[""]; ++ ++ if (speller->isValid()) { ++ QStringList terms = query.split(' ', QString::SkipEmptyParts); ++ QString lang = findlang(terms); ++ //If we found a language, create a new speller object using it. ++ if (!lang.isEmpty()) { ++ //First term is the language ++ terms.removeFirst(); ++ //New speller object if we don't already have one ++ if (!m_spellers.contains(lang)) { ++ QMutexLocker lock (&m_spellLock); ++ //Check nothing happened while we were acquiring the lock ++ if (!m_spellers.contains(lang)) { ++ m_spellers[lang] = QSharedPointer<Sonnet::Speller>(new Sonnet::Speller(lang)); + } + } ++ speller = m_spellers[lang]; ++ //Rejoin the strings ++ query = terms.join(QLatin1String(" ")); + } +- +- m_speller.setLanguage(language); + } + +- if (query.size() < 3) { ++ if (query.size() < 2) { + return; + } + + Plasma::QueryMatch match(this); + match.setType(Plasma::QueryMatch::InformationalMatch); + +- if (m_speller.isValid()) { ++ if (speller->isValid()) { + QStringList suggestions; +- const bool correct = m_speller.checkAndSuggest(query,suggestions); ++ const bool correct = speller->checkAndSuggest(query,suggestions); + if (correct) { + match.setIcon(KIcon(QLatin1String( "checkbox" ))); +- match.setText(i18n("Correct")); ++ match.setText(i18n("Correct")+QLatin1String(": ")+query); + } else { + match.setIcon(KIcon(QLatin1String( "edit-delete" ))); + const QString recommended = i18n("Suggested words: %1", suggestions.join(i18nc("seperator for a list of words", ", "))); +diff --git a/runners/spellchecker/spellcheck.h b/runners/spellchecker/spellcheck.h +index 492c370..ca65452 100644 +--- a/runners/spellchecker/spellcheck.h ++++ b/runners/spellchecker/spellcheck.h +@@ -22,6 +22,7 @@ + #include <sonnet/speller.h> + + #include <plasma/abstractrunner.h> ++#include <QSharedPointer> + + /** + * This checks the spelling of query +@@ -41,12 +42,17 @@ public: + + protected slots: + void init(); ++ void loaddata(); ++ void destroydata(); + + private: ++ QString findlang(const QStringList &terms); ++ + QString m_triggerWord; +- QHash<QString, QString> m_languages;//key=language name, value=language code ++ QMap<QString, QString> m_languages;//key=language name, value=language code + bool m_requireTriggerWord; +- Sonnet::Speller m_speller; ++ QMap<QString, QSharedPointer<Sonnet::Speller> > m_spellers; //spellers ++ QMutex m_spellLock; //Lock held when constructing a new speller + }; + + K_EXPORT_PLASMA_RUNNER(spellcheckrunner, SpellCheckRunner) diff --git a/extra/libcanberra/PKGBUILD b/extra/libcanberra/PKGBUILD index f4f54557c..c9897a6ab 100644 --- a/extra/libcanberra/PKGBUILD +++ b/extra/libcanberra/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 160365 2012-06-01 12:58:34Z dreisner $ +# $Id: PKGBUILD 170059 2012-10-31 10:33:15Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgbase=libcanberra pkgname=(libcanberra libcanberra-pulse libcanberra-gstreamer) -pkgver=0.28 -pkgrel=5 +pkgver=0.30 +pkgrel=1 pkgdesc="A small and lightweight implementation of the XDG Sound Theme Specification" arch=(i686 x86_64) license=('LGPL') depends=('libvorbis' 'libltdl' 'alsa-lib' 'tdb') -makedepends=('gtk-doc' 'libpulse' 'gstreamer0.10' 'gtk2' 'gtk3') +makedepends=('gtk-doc' 'libpulse' 'gstreamer' 'gtk2' 'gtk3') options=(!emptydirs) url=http://0pointer.de/lennart/projects/libcanberra -source=(http://0pointer.de/lennart/projects/${pkgbase}/${pkgbase}-${pkgver}.tar.gz +source=(http://0pointer.de/lennart/projects/${pkgbase}/${pkgbase}-${pkgver}.tar.xz libcanberra.xinit) -sha256sums=('eb1f8b2cabad7f07b6e44d606a91d73e1efca4b46daf92bd553e7222bc68868c' +sha256sums=('c2b671e67e0c288a69fc33dc1b6f1b534d07882c2aceed37004bf48c601afa72' '68a68d66b7491f99d5aa09fe7c6ef4eb38352a2a8ff7997d184d1cbc5e80c0d3') build() { @@ -36,9 +36,6 @@ package_libcanberra() { rm -f "${pkgdir}"/usr/lib/libcanberra-gtk*.la rm -f "${pkgdir}"/usr/lib/gtk-{2,3}.0/modules/*.la - install -d "${pkgdir}/usr/share/gconf" - mv "${pkgdir}/etc/gconf/schemas" "${pkgdir}/usr/share/gconf/" - install -D "${srcdir}/libcanberra.xinit" \ "${pkgdir}/etc/X11/xinit/xinitrc.d/40-libcanberra-gtk-module" @@ -61,7 +58,7 @@ package_libcanberra-pulse() { package_libcanberra-gstreamer() { pkgdesc="GStreamer plugin for libcanberra" - depends=("$pkgbase=$pkgver-$pkgrel" 'gstreamer0.10') + depends=("$pkgbase=$pkgver-$pkgrel" 'gstreamer') cd "${srcdir}/${pkgbase}-${pkgver}" diff --git a/extra/libcanberra/libcanberra.install b/extra/libcanberra/libcanberra.install index 7f5012199..6027540fd 100644 --- a/extra/libcanberra/libcanberra.install +++ b/extra/libcanberra/libcanberra.install @@ -1,23 +1,5 @@ -pkgname=libcanberra - -post_install() { - if [ -x usr/sbin/gconfpkg ]; then - usr/sbin/gconfpkg --install ${pkgname} - fi -} - pre_upgrade() { - if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then - pre_remove - fi -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - if [ -x usr/sbin/gconfpkg ]; then - usr/sbin/gconfpkg --uninstall ${pkgname} + if [ -f usr/share/gconf/schemas/libcanberra.schemas ] && [ -x usr/sbin/gconfpkg ]; then + usr/sbin/gconfpkg --uninstall libcanberra fi } diff --git a/extra/libreoffice/PKGBUILD b/extra/libreoffice/PKGBUILD index 2bb3bf12e..dc7396217 100644 --- a/extra/libreoffice/PKGBUILD +++ b/extra/libreoffice/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 169387 2012-10-20 09:31:46Z andyrtr $ +# $Id: PKGBUILD 170071 2012-10-31 14:01:16Z andyrtr $ # Maintainer: AndyRTR <andyrtr@archlinux.org> pkgbase="libreoffice" @@ -24,9 +24,9 @@ pkgname=('libreoffice-common' 'libreoffice-extension-scripting-python' 'libreoffice-extension-wiki-publisher' 'libreoffice-extension-nlpsolver') # svn up -r 142692 (last one with all extensions built) -_LOver=3.6.2.2 -pkgver=3.6.2 -pkgrel=3 +_LOver=3.6.3.2 +pkgver=3.6.3 +pkgrel=1 arch=('i686' 'x86_64') license=('LGPL3') url="http://www.libreoffice.org/" @@ -75,10 +75,10 @@ source=(${_mirror}/${pkgbase}-{core,help,translations}-${_LOver}.tar.xz ${_additional_source_url}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip ${_additional_source_url}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip ${_additional_source_url}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip - ${_additional_source_url}/0ff7d225d087793c8c2c680d77aac3e7-mdds_0.5.3.tar.bz2 + ${_additional_source_url}/9f9e15966b5624834157fe3d748312bc-mdds_0.6.1.tar.bz2 ${_additional_source_url}/6097739c841f671cb21332b9cc593ae7-libexttextcat-3.3.1.tar.bz2 ${_additional_source_url}/0d2dcdfbf28d6208751b33057f5361f0-libcmis-0.2.3.tar.gz - ${_additional_source_url}/ce5a1def34578b75959ac31210f031f6-libcdr-0.0.8.tar.bz2 + ${_additional_source_url}/3c0037fb07dea2f0bbae8386fa7c6a9a-libcdr-0.0.9.tar.bz2 ${_additional_source_url2}/185d60944ea767075d27247c3162b3bc-unowinreg.dll make-pyuno-work-with-system-wide-module-install.diff buildfix.diff @@ -87,7 +87,7 @@ noextract=(94e7f271e38c976462558b4278590178-libvisio-0.0.19.tar.bz2 18f577b374d60b3c760a3a3350407632-STLport-4.5.tar.gz f02578f5218f217a9f20e9c30e119c6a-boost_1_44_0.tar.bz2 185d60944ea767075d27247c3162b3bc-unowinreg.dll - 0ff7d225d087793c8c2c680d77aac3e7-mdds_0.5.3.tar.bz2 + 9f9e15966b5624834157fe3d748312bc-mdds_0.6.1.tar.bz2 ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip 798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz @@ -111,11 +111,11 @@ noextract=(94e7f271e38c976462558b4278590178-libvisio-0.0.19.tar.bz2 3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip - ce5a1def34578b75959ac31210f031f6-libcdr-0.0.8.tar.bz2 + 3c0037fb07dea2f0bbae8386fa7c6a9a-libcdr-0.0.9.tar.bz2 ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip) -md5sums=('ae171ba4633cc72dba4451b1bdd3385e' - 'cdad0734d247d91a79cb282fd851d2a7' - 'e9a7e3d35432b72a4603ce094deb6a67' +md5sums=('17ccf623caa77dc135d5343a51fa1ddd' + '94a8d18009f8e0e4ae80dc34c43604d7' + 'f76c4439c211f229d49e5fb10ca2ba73' '18f577b374d60b3c760a3a3350407632' 'f02578f5218f217a9f20e9c30e119c6a' '94e7f271e38c976462558b4278590178' @@ -141,10 +141,10 @@ md5sums=('ae171ba4633cc72dba4451b1bdd3385e' 'ace6ab49184e329db254e454a010f56d' 'db60e4fde8dd6d6807523deb71ee34dc' 'ba2930200c9f019c2d93a8c88c651a0f' - '0ff7d225d087793c8c2c680d77aac3e7' + '9f9e15966b5624834157fe3d748312bc' '6097739c841f671cb21332b9cc593ae7' '0d2dcdfbf28d6208751b33057f5361f0' - 'ce5a1def34578b75959ac31210f031f6' + '3c0037fb07dea2f0bbae8386fa7c6a9a' '185d60944ea767075d27247c3162b3bc' '97bf43dda273d79ff90c848ab53b0e3c' '234e91ac65945ce1ab1e3839780e90f7' diff --git a/extra/libtasn1/PKGBUILD b/extra/libtasn1/PKGBUILD index ffcdb9bb9..699bae051 100644 --- a/extra/libtasn1/PKGBUILD +++ b/extra/libtasn1/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 167197 2012-09-27 15:53:17Z andyrtr $ +# $Id: PKGBUILD 170031 2012-10-31 05:15:58Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgname=libtasn1 -pkgver=2.14 +pkgver=3.0 pkgrel=1 pkgdesc="The ASN.1 library used in GNUTLS" arch=('i686' 'x86_64') @@ -13,8 +13,8 @@ depends=('glibc' 'texinfo') options=('!libtool') install=libtasn1.install source=(http://ftp.gnu.org/gnu/libtasn1/${pkgname}-${pkgver}.tar.gz{,.sig}) -sha1sums=('22f9e0b15f870c8e03ac9cc1ead969d4d84eb931' - 'cd6fdde4f59f7c24eb738896904034f17ab490f2') +sha1sums=('0ce12f8b0460ae6eabf2a608506dbd337bf78a71' + '48abf083dc9d36cc64f0d80cebd3da1dbc47d557') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/metacity/PKGBUILD b/extra/metacity/PKGBUILD index cbc994bae..ecde6eebf 100644 --- a/extra/metacity/PKGBUILD +++ b/extra/metacity/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 166589 2012-09-12 17:45:09Z jgc $ +# $Id: PKGBUILD 170056 2012-10-31 10:19:33Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=metacity -pkgver=2.34.8 +pkgver=2.34.13 pkgrel=1 pkgdesc="A window manager for GNOME" arch=(i686 x86_64) @@ -15,7 +15,7 @@ options=('!libtool' '!emptydirs') install=metacity.install source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz fix_compositing_startup.patch) -sha256sums=('ab83038a9dc0b53a63b66c3f9323a10abb0b9a9ae2b5c5d3cc6bbabe2b607806' +sha256sums=('8cf4dbf0da0a6f36357ce7db7f829ec685908a7792453c662fb8184572b91075' '5094a0ffe3eb8289ed752829877c2e1b743eddf938ad3fc92fb4574b42765ae2') build() { diff --git a/extra/openmpi/PKGBUILD b/extra/openmpi/PKGBUILD index 6edab4b10..d83b7d34d 100644 --- a/extra/openmpi/PKGBUILD +++ b/extra/openmpi/PKGBUILD @@ -1,7 +1,7 @@ -# $Id: PKGBUILD 167415 2012-10-02 00:13:37Z stephane $ +# $Id: PKGBUILD 170075 2012-10-31 21:09:28Z stephane $ # Maintainer: Stéphane Gaudreault <stephane@archlinux.org> pkgname=openmpi -pkgver=1.6.2 +pkgver=1.6.3 pkgrel=1 pkgdesc="High performance message passing library (MPI)" arch=('i686' 'x86_64') @@ -11,7 +11,7 @@ depends=('gcc-fortran' 'openssh' 'valgrind' 'libltdl' 'hwloc') makedepends=('inetutils') options=(!libtool) source=(http://www.open-mpi.org/software/ompi/v1.6/downloads/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('694fd3bac911cdb22f77175884d819b6fea871df') +sha1sums=('a61aa2dee4c47d93d88e49ebed36de25df4f6492') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/screen/PKGBUILD b/extra/screen/PKGBUILD index 341373433..efeddd0c7 100644 --- a/extra/screen/PKGBUILD +++ b/extra/screen/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 147962 2012-01-29 04:41:21Z allan $ +# $Id: PKGBUILD 170087 2012-11-01 01:12:40Z thomas $ # Maintainer: Allan McRae <allan@archlinux.org> # Committer: dorphell <dorphell@gmx.net> pkgname=screen pkgver=4.0.3 -pkgrel=13 +pkgrel=15 _ptygroup=5 #the UID of our PTY/TTY group pkgdesc="Full-screen window manager that multiplexes a physical terminal" arch=('i686' 'x86_64') @@ -32,7 +32,8 @@ build() { --with-sys-screenrc=/etc/screenrc --enable-colors256 \ --enable-rxvt_osc --enable-telnet \ --with-pty-group=$_ptygroup \ - --mandir=/usr/share/man --infodir=/usr/share/info + --mandir=/usr/share/man --infodir=/usr/share/info \ + --with-socket-dir=/run/screens make } diff --git a/extra/screen/screen.install b/extra/screen/screen.install index 9340e6067..3adc8f3f6 100644 --- a/extra/screen/screen.install +++ b/extra/screen/screen.install @@ -10,6 +10,11 @@ post_install() { post_upgrade() { post_install $1 + if [ $(vercmp $2 4.0.3-15) -lt 0 ]; then + echo 'The location of the screen sockets has changed.' + echo 'If you need to access running screen sessions, run' + echo ' # SCREENDIR=/tmp/screens/S-$USER/ screen ...' + fi } pre_remove() { diff --git a/extra/telepathy-kde-text-ui/PKGBUILD b/extra/telepathy-kde-text-ui/PKGBUILD index c0f7b3189..682cb0f91 100644 --- a/extra/telepathy-kde-text-ui/PKGBUILD +++ b/extra/telepathy-kde-text-ui/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 168059 2012-10-05 14:07:08Z andrea $ +# $Id: PKGBUILD 170066 2012-10-31 13:33:12Z ibiru $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Laurent Carlier <lordheavym@gmail.com> pkgname=telepathy-kde-text-ui _pkgname=ktp-text-ui pkgver=0.5.1 -pkgrel=1 +pkgrel=2 pkgdesc="Telepathy handler for Text Chats" arch=('i686' 'x86_64') url="http://community.kde.org/Real-Time_Communication_and_Collaboration" diff --git a/extra/telepathy-logger/PKGBUILD b/extra/telepathy-logger/PKGBUILD index fdf5ebb17..adfc7a20f 100644 --- a/extra/telepathy-logger/PKGBUILD +++ b/extra/telepathy-logger/PKGBUILD @@ -1,18 +1,18 @@ -# $Id: PKGBUILD 156978 2012-04-23 09:10:28Z ibiru $ +# $Id: PKGBUILD 170064 2012-10-31 13:30:17Z ibiru $ # Maintainer: Ionut Biru <ibiru@archlinux.org> pkgname=telepathy-logger -pkgver=0.4.0 +pkgver=0.6.0 pkgrel=1 pkgdesc="Telepathy framework logging daemon" arch=(i686 x86_64) url="http://telepathy.freedesktop.org/wiki/Logger" license=('LGPL2.1') -depends=('telepathy-glib' 'sqlite3' 'libxml2' 'dconf') +depends=('telepathy-glib' 'sqlite' 'libxml2' 'dconf') makedepends=('intltool' 'gnome-doc-utils' 'gobject-introspection') options=('!libtool') install=telepathy-logger.install source=(http://telepathy.freedesktop.org/releases/$pkgname/$pkgname-$pkgver.tar.bz2) -md5sums=('0b891b860c7f3a01926f5cc22fd26120') +md5sums=('f453c49e53898c64bc423f0fdf117290') build() { cd "$pkgname-$pkgver" diff --git a/extra/transmission/PKGBUILD b/extra/transmission/PKGBUILD index 04dbfaa20..77d340328 100644 --- a/extra/transmission/PKGBUILD +++ b/extra/transmission/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 169450 2012-10-21 11:25:20Z ibiru $ +# $Id: PKGBUILD 170069 2012-10-31 13:47:37Z ibiru $ # Maintainer : Ionut Biru <ibiru@archlinux.org> pkgbase=transmission pkgname=('transmission-cli' 'transmission-gtk' 'transmission-qt') pkgver=2.73 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') url="http://www.transmissionbt.com/" license=('MIT') @@ -14,7 +14,7 @@ source=(http://mirrors.m0k.org/transmission/files/$pkgbase-$pkgver.tar.xz transmission.tmpfiles) build() { - cd "$pkgbase-2.72" + cd $pkgbase-$pkgver ./configure --prefix=/usr make @@ -28,7 +28,7 @@ package_transmission-cli() { backup=('etc/conf.d/transmissiond') install=transmission-cli.install - cd "$pkgbase-2.72" + cd $pkgbase-$pkgver for dir in daemon cli web utils do @@ -50,7 +50,7 @@ package_transmission-gtk() { 'transmission-cli: daemon and web support') install=transmission-gtk.install - cd "$pkgbase-2.72" + cd $pkgbase-$pkgver make -C gtk DESTDIR="$pkgdir" install make -C po DESTDIR="$pkgdir" install @@ -63,7 +63,7 @@ package_transmission-qt() { optdepends=('transmission-cli: daemon and web support') install=transmission-qt.install - cd "$pkgbase-2.72" + cd $pkgbase-$pkgver make -C qt INSTALL_ROOT="$pkgdir"/usr install @@ -71,7 +71,7 @@ package_transmission-qt() { install -D -m644 qt/icons/transmission.png "$pkgdir/usr/share/pixmaps/transmission-qt.png" install -D -m644 qt/transmission-qt.desktop "$pkgdir/usr/share/applications/transmission-qt.desktop" } -md5sums=('86479f9bb378b793ce7a8a71f5b15904' +md5sums=('fae00b13a7b18f9dc16edef020edea85' '7d6186ee2a852ae3d44980f05063e194' 'db72b02fee139e8ab416324e6c044d76' '5c289c8901221a94be74665368ab5c2c' diff --git a/libre/blender-libre/PKGBUILD b/libre/blender-libre/PKGBUILD index 2800d9147..396706459 100644 --- a/libre/blender-libre/PKGBUILD +++ b/libre/blender-libre/PKGBUILD @@ -1,7 +1,7 @@ # $Id$ # Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> -spacenav=true +spacenav=false pkgbase=blender-libre pkgflag=-libre if [ $spacenav == true ]; then @@ -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=2 +pkgrel=3 pkgaev=5 arch=( i686 @@ -118,9 +118,9 @@ optdepends=( ) makedepends=( # make dependencies tree (root) # - mesa boost cmake + mesa subversion ) provides=( diff --git a/libre/gst-plugins-bad-libre/PKGBUILD b/libre/gst-plugins-bad-libre/PKGBUILD new file mode 100644 index 000000000..2e0658cfb --- /dev/null +++ b/libre/gst-plugins-bad-libre/PKGBUILD @@ -0,0 +1,83 @@ +# $Id: PKGBUILD 153258 2012-03-12 16:05:19Z jgc $ +# 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 +pkgrel=1 +pkgdesc='GStreamer Multimedia Framework Bad Plugins, without nonfree faac support' +arch=( + i686 + x86_64 + mips64el +) +license=( + LGPL +) +url="http://gstreamer.freedesktop.org/" +depends=( + celt + chromaprint + curl + faad2 + gst-plugins-base-libs + libdca + libdvdnav + libgme + libmms + libmodplug + mjpegtools + mpg123 + opus + soundtouch + spandsp +) +makedepends=( + libdvdread + libexif + libmpeg2 + libvdpau + schroedinger +) +provides=( + $pkgbase=$pkgver +) +conflicts=( + $pkgbase +) +replaces=( + $pkgbase +) +options=( + '!libtool' + '!emptydirs' +) +source=( + "$url/src/$pkgbase/$pkgbase-$pkgver.tar.xz" +) +sha256sums=( + 9e503305799a2b6eb9d0b77c59b8aa8bbe9e6eb815a0635bd013560c73996579 +) + +build() { + cd $pkgbase-$pkgver + sed -i '/AC_PATH_XTRA/d' configure.ac + autoreconf + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --disable-static --enable-experimental \ + --with-package-name='GStreamer Bad Plugins Libre (Parabola)' \ + --with-package-origin='http://www.parabolagnulinux.org/' \ + --with-gtk=3.0 + make +} + +check() { + cd $pkgbase-$pkgver + make check +} + +package() { + cd $pkgbase-$pkgver + make DESTDIR=$pkgdir install +} diff --git a/libre/icedove-i18n/PKGBUILD b/libre/icedove-i18n/PKGBUILD index 6d1e339a2..7d0aa1d8b 100644 --- a/libre/icedove-i18n/PKGBUILD +++ b/libre/icedove-i18n/PKGBUILD @@ -1,14 +1,13 @@ -# $Id$ -# Maintainer: Márcio Silva <coadde@adinet.com.uy> -# Maintainer: André Silva <andre.paulista@adinet.com.uy> +# Maintainer: Márcio Silva <coadde@lavabit.com> +# Maintainer: André Silva <emulatorman@lavabit.com> pkgbase=icedove-i18n -pkgver=11.0.1 +pkgver=16.0.2.1 pkgname=('icedove-i18n-ar' - #'icedove-i18n-af' + 'icedove-i18n-ast' 'icedove-i18n-be' - 'icedove-i18n-bn-bd' 'icedove-i18n-bg' + 'icedove-i18n-bn-bd' 'icedove-i18n-br' 'icedove-i18n-ca' 'icedove-i18n-cs' @@ -16,28 +15,31 @@ pkgname=('icedove-i18n-ar' 'icedove-i18n-de' 'icedove-i18n-el' 'icedove-i18n-en-gb' + 'icedove-i18n-en-us' 'icedove-i18n-es-ar' - 'icedove-i18n-es' + 'icedove-i18n-es-es' 'icedove-i18n-et' 'icedove-i18n-eu' 'icedove-i18n-fi' 'icedove-i18n-fr' 'icedove-i18n-fy-nl' - 'icedove-i18n-ga' + 'icedove-i18n-ga-ie' 'icedove-i18n-gd' 'icedove-i18n-gl' 'icedove-i18n-he' + 'icedove-i18n-hr' 'icedove-i18n-hu' + 'icedove-i18n-hy-am' 'icedove-i18n-id' 'icedove-i18n-is' 'icedove-i18n-it' 'icedove-i18n-ja' 'icedove-i18n-ko' 'icedove-i18n-lt' - 'icedove-i18n-nb' + 'icedove-i18n-nb-no' 'icedove-i18n-nl' - 'icedove-i18n-nn' - 'icedove-i18n-pa' + 'icedove-i18n-nn-no' + 'icedove-i18n-pa-in' 'icedove-i18n-pl' 'icedove-i18n-pt-br' 'icedove-i18n-pt' @@ -48,7 +50,8 @@ pkgname=('icedove-i18n-ar' 'icedove-i18n-sk' 'icedove-i18n-sl' 'icedove-i18n-sq' - 'icedove-i18n-sv' + 'icedove-i18n-sr' + 'icedove-i18n-sv-se' 'icedove-i18n-ta-lk' 'icedove-i18n-tr' 'icedove-i18n-uk' @@ -56,7 +59,7 @@ pkgname=('icedove-i18n-ar' 'icedove-i18n-zh-cn' 'icedove-i18n-zh-tw') -pkgrel=3 +pkgrel=1 pkgdesc="Language pack for Debian Icedove" arch=('any') url="http://packages.debian.org/source/experimental/icedove" @@ -64,10 +67,10 @@ license=('MPL' 'GPL') depends=("icedove-libre>=$pkgver") _url=http://repo.parabolagnulinux.org/other/$pkgbase/releases/$pkgver source=(icedove-i18n-$pkgver-ar.xpi::$_url/ar.xpi -# icedove-i18n-$pkgver-af.xpi::$_url/af.xpi + icedove-i18n-$pkgver-ast.xpi::$_url/ast.xpi icedove-i18n-$pkgver-be.xpi::$_url/be.xpi - icedove-i18n-$pkgver-bn-BD.xpi::$_url/bn-BD.xpi icedove-i18n-$pkgver-bg.xpi::$_url/bg.xpi + icedove-i18n-$pkgver-bn-BD.xpi::$_url/bn-BD.xpi icedove-i18n-$pkgver-br.xpi::$_url/br.xpi icedove-i18n-$pkgver-ca.xpi::$_url/ca.xpi icedove-i18n-$pkgver-cs.xpi::$_url/cs.xpi @@ -75,6 +78,7 @@ source=(icedove-i18n-$pkgver-ar.xpi::$_url/ar.xpi icedove-i18n-$pkgver-de.xpi::$_url/de.xpi icedove-i18n-$pkgver-el.xpi::$_url/el.xpi icedove-i18n-$pkgver-en-GB.xpi::$_url/en-GB.xpi + icedove-i18n-$pkgver-en-US.xpi::$_url/en-US.xpi icedove-i18n-$pkgver-es-AR.xpi::$_url/es-AR.xpi icedove-i18n-$pkgver-es-ES.xpi::$_url/es-ES.xpi icedove-i18n-$pkgver-et.xpi::$_url/et.xpi @@ -86,7 +90,9 @@ source=(icedove-i18n-$pkgver-ar.xpi::$_url/ar.xpi icedove-i18n-$pkgver-gd.xpi::$_url/gd.xpi icedove-i18n-$pkgver-gl.xpi::$_url/gl.xpi icedove-i18n-$pkgver-he.xpi::$_url/he.xpi + icedove-i18n-$pkgver-hr.xpi::$_url/hr.xpi icedove-i18n-$pkgver-hu.xpi::$_url/hu.xpi + icedove-i18n-$pkgver-hy-AM.xpi::$_url/hy-AM.xpi icedove-i18n-$pkgver-id.xpi::$_url/id.xpi icedove-i18n-$pkgver-is.xpi::$_url/is.xpi icedove-i18n-$pkgver-it.xpi::$_url/it.xpi @@ -107,6 +113,7 @@ source=(icedove-i18n-$pkgver-ar.xpi::$_url/ar.xpi icedove-i18n-$pkgver-sk.xpi::$_url/sk.xpi icedove-i18n-$pkgver-sl.xpi::$_url/sl.xpi icedove-i18n-$pkgver-sq.xpi::$_url/sq.xpi + icedove-i18n-$pkgver-sr.xpi::$_url/sr.xpi icedove-i18n-$pkgver-sv-SE.xpi::$_url/sv-SE.xpi icedove-i18n-$pkgver-ta-LK.xpi::$_url/ta-LK.xpi icedove-i18n-$pkgver-tr.xpi::$_url/tr.xpi @@ -126,31 +133,34 @@ package_icedove-i18n-ar() { install -Dm644 icedove-i18n-$pkgver-ar.xpi "${pkgdir}/$_path/langpack-ar@icedove.mozilla.org.xpi" } +package_icedove-i18n-ast() { + pkgdesc="Language packs for Debian Icedove." + cd ${srcdir} + install -Dm644 icedove-i18n-$pkgver-ast.xpi "${pkgdir}/$_path/langpack-ast@icedove.mozilla.org.xpi" +} + package_icedove-i18n-af() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-af cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-af.xpi "${pkgdir}/$_path/langpack-af@icedove.mozilla.org.xpi" } package_icedove-i18n-be() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-be cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-be.xpi "${pkgdir}/$_path/langpack-be@icedove.mozilla.org.xpi" } -package_icedove-i18n-bn-bd() { +package_icedove-i18n-bg() { pkgdesc="Language packs for Debian Icedove." cd ${srcdir} - install -Dm644 icedove-i18n-$pkgver-bn-BD.xpi "${pkgdir}/$_path/langpack-bn-BE@icedove.mozilla.org.xpi" + install -Dm644 icedove-i18n-$pkgver-bg.xpi "${pkgdir}/$_path/langpack-bg@icedove.mozilla.org.xpi" } -package_icedove-i18n-bg() { +package_icedove-i18n-bn-bd() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-bg cd ${srcdir} - install -Dm644 icedove-i18n-$pkgver-bg.xpi "${pkgdir}/$_path/langpack-bg@icedove.mozilla.org.xpi" + install -Dm644 icedove-i18n-$pkgver-bn-BD.xpi "${pkgdir}/$_path/langpack-bn-BD@icedove.mozilla.org.xpi" } package_icedove-i18n-br() { @@ -161,84 +171,79 @@ package_icedove-i18n-br() { package_icedove-i18n-ca() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-ca cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-ca.xpi "${pkgdir}/$_path/langpack-ca@icedove.mozilla.org.xpi" } package_icedove-i18n-cs() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-cs cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-cs.xpi "${pkgdir}/$_path/langpack-cs@icedove.mozilla.org.xpi" } package_icedove-i18n-da() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-da cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-da.xpi "${pkgdir}/$_path/langpack-da@icedove.mozilla.org.xpi" } package_icedove-i18n-de() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-de cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-de.xpi "${pkgdir}/$_path/langpack-de@icedove.mozilla.org.xpi" } package_icedove-i18n-el() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-el cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-el.xpi "${pkgdir}/$_path/langpack-el@icedove.mozilla.org.xpi" } package_icedove-i18n-en-gb() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-en-gb cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-en-GB.xpi "${pkgdir}/$_path/langpack-en-GB@icedove.mozilla.org.xpi" } +package_icedove-i18n-en-us() { + pkgdesc="Language packs for Debian Icedove." + cd ${srcdir} + install -Dm644 icedove-i18n-$pkgver-en-US.xpi "${pkgdir}/$_path/langpack-en-US@icedove.mozilla.org.xpi" +} + package_icedove-i18n-es-ar() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-es-ar cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-es-AR.xpi "${pkgdir}/$_path/langpack-es-AR@icedove.mozilla.org.xpi" } -package_icedove-i18n-es() { +package_icedove-i18n-es-es() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-es + replaces=icedove-i18n-es cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-es-ES.xpi "${pkgdir}/$_path/langpack-es-ES@icedove.mozilla.org.xpi" } package_icedove-i18n-et() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-et cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-et.xpi "${pkgdir}/$_path/langpack-et@icedove.mozilla.org.xpi" } package_icedove-i18n-eu() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-eu cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-eu.xpi "${pkgdir}/$_path/langpack-eu@icedove.mozilla.org.xpi" } package_icedove-i18n-fi() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-fi cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-fi.xpi "${pkgdir}/$_path/langpack-fi@icedove.mozilla.org.xpi" } package_icedove-i18n-fr() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-fr cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-fr.xpi "${pkgdir}/$_path/langpack-fr@icedove.mozilla.org.xpi" } @@ -249,9 +254,9 @@ package_icedove-i18n-fy-nl(){ install -Dm644 icedove-i18n-$pkgver-fy-NL.xpi "${pkgdir}/$_path/langpack-fy-NL@icedove.mozilla.org.xpi" } -package_icedove-i18n-ga() { +package_icedove-i18n-ga-ie() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-ga + replaces=icedove-i18n-ga cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-ga-IE.xpi "${pkgdir}/$_path/langpack-ga-IE@icedove.mozilla.org.xpi" } @@ -270,18 +275,28 @@ package_icedove-i18n-gl() { package_icedove-i18n-he() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-he cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-he.xpi "${pkgdir}/$_path/langpack-he@icedove.mozilla.org.xpi" } +package_icedove-i18n-hr() { + pkgdesc="Language packs for Debian Icedove." + cd ${srcdir} + install -Dm644 icedove-i18n-$pkgver-hr.xpi "${pkgdir}/$_path/langpack-hr@icedove.mozilla.org.xpi" +} + package_icedove-i18n-hu() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-hu cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-hu.xpi "${pkgdir}/$_path/langpack-hu@icedove.mozilla.org.xpi" } +package_icedove-i18n-hy-am() { + pkgdesc="Language packs for Debian Icedove." + cd ${srcdir} + install -Dm644 icedove-i18n-$pkgver-hy-AM.xpi "${pkgdir}/$_path/langpack-hy-am@icedove.mozilla.org.xpi" +} + package_icedove-i18n-id(){ pkgdesc="Language packs for Debian Icedove." cd ${srcdir} @@ -296,91 +311,81 @@ package_icedove-i18n-is() { package_icedove-i18n-it() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-it cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-it.xpi "${pkgdir}/$_path/langpack-it@icedove.mozilla.org.xpi" } package_icedove-i18n-ja() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-ja cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-ja.xpi "${pkgdir}/$_path/langpack-ja@icedove.mozilla.org.xpi" } package_icedove-i18n-ko() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-ko cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-ko.xpi "${pkgdir}/$_path/langpack-ko@icedove.mozilla.org.xpi" } package_icedove-i18n-lt() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-lt cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-lt.xpi "${pkgdir}/$_path/langpack-lt@icedove.mozilla.org.xpi" } -package_icedove-i18n-nb() { +package_icedove-i18n-nb-no() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-nb + replaces=icedove-i18n-nb cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-nb-NO.xpi "${pkgdir}/$_path/langpack-nb-NO@icedove.mozilla.org.xpi" } package_icedove-i18n-mk() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-mk cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-mk.xpi "${pkgdir}/$_path/langpack-mk@icedove.mozilla.org.xpi" } package_icedove-i18n-nl() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-nl cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-nl.xpi "${pkgdir}/$_path/langpack-nl@icedove.mozilla.org.xpi" } -package_icedove-i18n-nn() { +package_icedove-i18n-nn-no() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-nn + replaces=icedove-i18n-nn cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-nn-NO.xpi "${pkgdir}/$_path/langpack-nn-NO@icedove.mozilla.org.xpi" } -package_icedove-i18n-pa() { +package_icedove-i18n-pa-in() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-pa + replaces=icedove-i18n-pa cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-pa-IN.xpi "${pkgdir}/$_path/langpack-pa-IN@icedove.mozilla.org.xpi" } package_icedove-i18n-pl() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-pl cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-pl.xpi "${pkgdir}/$_path/langpack-pl@icedove.mozilla.org.xpi" } package_icedove-i18n-pt-br() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-pt-br cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-pt-BR.xpi "${pkgdir}/$_path/langpack-pt-BR@icedove.mozilla.org.xpi" } package_icedove-i18n-pt() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-pt cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-pt-PT.xpi "${pkgdir}/$_path/langpack-pt-PT@icedove.mozilla.org.xpi" } package_icedove-i18n-ro() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-ro cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-ro.xpi "${pkgdir}/$_path/langpack-ro@icedove.mozilla.org.xpi" } @@ -393,7 +398,6 @@ package_icedove-i18n-rm() { package_icedove-i18n-ru() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-ru cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-ru.xpi "${pkgdir}/$_path/langpack-ru@icedove.mozilla.org.xpi" } @@ -406,50 +410,49 @@ package_icedove-i18n-si() { package_icedove-i18n-sk() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-sk cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-sk.xpi "${pkgdir}/$_path/langpack-sk@icedove.mozilla.org.xpi" } package_icedove-i18n-sl() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-sl cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-sl.xpi "${pkgdir}/$_path/langpack-sl@icedove.mozilla.org.xpi" } package_icedove-i18n-sq() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-sl cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-sq.xpi "${pkgdir}/$_path/langpack-sq@icedove.mozilla.org.xpi" } -package_icedove-i18n-sv() { +package_icedove-i18n-sr() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-sv + cd ${srcdir} + install -Dm644 icedove-i18n-$pkgver-sr.xpi "${pkgdir}/$_path/langpack-sr@icedove.mozilla.org.xpi" +} + +package_icedove-i18n-sv-se() { + pkgdesc="Language packs for Debian Icedove." + replaces=icedove-i18n-sv cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-sv-SE.xpi "${pkgdir}/$_path/langpack-sv-SE@icedove.mozilla.org.xpi" } package_icedove-i18n-ta-lk() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-sv cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-ta-LK.xpi "${pkgdir}/$_path/langpack-ta-LK@icedove.mozilla.org.xpi" } - package_icedove-i18n-tr() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-tr cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-tr.xpi "${pkgdir}/$_path/langpack-tr@icedove.mozilla.org.xpi" } package_icedove-i18n-uk() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-uk cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-uk.xpi "${pkgdir}/$_path/langpack-uk@icedove.mozilla.org.xpi" } @@ -461,64 +464,67 @@ package_icedove-i18n-vi() { } package_icedove-i18n-zh-cn() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-zh-cn cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-zh-CN.xpi "${pkgdir}/$_path/langpack-zh-CN@icedove.mozilla.org.xpi" } package_icedove-i18n-zh-tw() { pkgdesc="Language packs for Debian Icedove." - replaces=icedove-zh-tw cd ${srcdir} install -Dm644 icedove-i18n-$pkgver-zh-TW.xpi "${pkgdir}/$_path/langpack-zh-TW@icedove.mozilla.org.xpi" } -md5sums=('43ea2aeec780c591af577215a8f928ae' - '0dc7a6ca6d308f4135ce135b87b19823' - '343f4b73820d9906205606833c48ddd1' - '56f7a9e47037c82fda2d97efcac6e2fa' - '7da75017f43c073b7f7e413d41794a37' - '07c7efe6d9400b17ef572c5769f25ccd' - '8dba7a9ff2c2b55908bb32b947fab75e' - 'e262a088217fceb213a8890124e85db6' - '9c2355ff0ca0b640e50f7a24ec5d9f6e' - '628c84299fc7b76a5f084905518b8f73' - 'a26276362394dedbbea98356d573f2f1' - '06c0ed88ff10c296f2066a7a84cc33d6' - '2a03c69e72bbe08e8938177908a3ab17' - 'e80febfd74cc81bc9e5cb9752c0b3b95' - '4ad12b69da9910e1c0122aa76c3513d5' - '5e9c7ab66141389b9300f8db28852a5a' - 'c3390ce9a18b979fe148652fc76ae311' - '85c17fe5018696d6999e7fed8c447edc' - 'a049d7cf3b9c9ef5ece4afced3b56f9d' - 'c483f4da184315444d1d094fd75b150a' - 'e57eba03836a14e8915a816a7655fb46' - 'c4d4caf6baf85ca22ed1ea19a3630d67' - 'e16465d4d1234fe7362b5ba2f73682f9' - '36fb64f2541e5a7ba0640931e8ee2be1' - 'd03b2ddcfc3cf28e1725df4972e2abfe' - 'f5fcf08545542a752b7355d1dd692c2d' - '842c4ce562c0beba6713424551d5d748' - '004c5c6a1a5bb575827fe626e0b804cc' - '0d810b4347b21d43d8b38fd077a63f9d' - 'e03ac78e858e0d345512bcc24f180838' - 'e17ab7b097085b9462d38a7d8aa4d027' - 'f58b78d51281acf36c9755abb6bbde14' - '086270a5669cb5db0a21bf5ca1c7620c' - 'c972a8eaf135cfeb9509603ae1d392d3' - 'c4eb654adce293e9ef6fe2cb2b1078bc' - 'd120891141f898644a93bb2317def809' - '78c32f4f1c814130f9cddce60b17a089' - '055d77477e07632dcb06a08d51609514' - '9b28657c99b9193cef3dbf959ed1849c' - '5c6ca9cd178df6a6fca1f638a0845b0a' - '277cf819683b9a9016b322a77a3236fa' - '7104f5238b221ea4dc502c14eae12ea1' - 'a29ed3f28bab6a970c15378505b352cc' - '5774b9adccafa40221e6eb3011de5db0' - '5419f4456c65703ebeb9d4befc0c2d2c' - '2423b38ceb1022a6064070a3f7f5600f' - '5de7fd60a6a74bf23066a6cfe9dee2d6' - '47a23af3184ee6999433a9f59da3a67a' - 'd3242d7e7c35df585e55918ed6556f16' - 'd0f7e27dfdc4aa14398e8422e3135a4a') +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') diff --git a/libre/icedove-libre/PKGBUILD b/libre/icedove-libre/PKGBUILD index 6bd50cd47..6ec577f58 100644 --- a/libre/icedove-libre/PKGBUILD +++ b/libre/icedove-libre/PKGBUILD @@ -1,9 +1,9 @@ -# Maintainer : Márcio Silva <coadde@adinet.com.uy> -# Maintainer : André Silva <andre.paulista@adinet.com.uy> +# Maintainer : Márcio Silva <coadde@lavabit.com> +# Maintainer : André Silva <emulatorman@lavabit.com> # We're getting this from Debian Experimental _debname=icedove -_debver=11.0 +_debver=16.0.2 _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=1 +pkgrel=3 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') @@ -22,24 +22,23 @@ optdepends=('libcanberra: for sound support') replaces=('thunderbird') conflicts=('thunderbird') provides=('thunderbird') -install=$_pkgname.install +install=${_pkgname}.install source=("${_debrepo}/`debfile ${_debname}`_${_debver}.orig.tar.bz2" "${_debrepo}/`debfile ${_debname}`_${_debver}-${_debrel}.debian.tar.gz" mozconfig channel-prefs.js vendor.js - gcc47.patch - clrf.patch makefile.patch + branding.patch ${_pkgname}.desktop) -md5sums=('0d4aaf892cd1cbf9bda38928947025fe' - 'd4401c080fe5190e8bb1326f10808231' +options=(!emptydirs) +md5sums=('a3724f40d28014acf593528bb8a048f0' + '53d62a4841d7989d1f6d1b04929394b4' 'd6d58d3104a44624e0a3d227cdf1c211' '476ec205162340fb0679f522c9d31c3b' '4eecc4fc5aafaf0da651a09eadc90bee' - '94d5cd599ccc4438f192d8daabf98b6a' - 'c395d443a8c4c16880c7322bcf174743' 'c4ed43e85945e180a89cce03e45ec62c' + '126b1446212396c33220936c01d9592d' 'e785e0c267f4435ae1a9aa0b03bcacfb') build() { @@ -61,9 +60,8 @@ build() { done quilt push -av - patch -Np1 -i "$srcdir/gcc47.patch" - patch -Np1 -i "$srcdir/clrf.patch" - patch -Np1 -i "$srcdir/makefile.patch" + patch -Np1 -i "${srcdir}/makefile.patch" # small fix + patch -Np1 -i "${srcdir}/branding.patch" # fixing branding cp "${srcdir}/mozconfig" .mozconfig make -j1 -f client.mk build MOZ_MAKE_FLAGS="${MAKEFLAGS}" @@ -74,17 +72,18 @@ package() { make -j1 -f client.mk DESTDIR="${pkgdir}" install - install -m644 "${srcdir}/vendor.js" "${pkgdir}/usr/lib/${_pkgname}/defaults/pref" + install -Dm644 "${srcdir}/vendor.js" "${pkgdir}/usr/lib/${_pkgname}/defaults/preferences/vendor.js" + # Recommend free addons - install -m644 "${srcdir}/channel-prefs.js" "${pkgdir}/usr/lib/${_pkgname}/defaults/pref" + install -m644 "${srcdir}/channel-prefs.js" "${pkgdir}/usr/lib/${_pkgname}/defaults/pref/channel-prefs.js" for i in 16x16 22x22 24x24 32x32 48x48 64x64 128x128 256x256; do install -Dm644 "debian/app-icons/${_pkgname}${i/x*/}.png" "${pkgdir}/usr/share/icons/hicolor/$i/apps/${_pkgname}.png" done install -Dm644 "debian/app-icons/${_pkgname}_icon.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/${_pkgname}.svg" - install -Dm644 "$srcdir/${_pkgname}.desktop" \ - "$pkgdir/usr/share/applications/${_pkgname}.desktop" + install -Dm644 "${srcdir}/${_pkgname}.desktop" \ + "${pkgdir}/usr/share/applications/${_pkgname}.desktop" rm -rf "${pkgdir}"/usr/lib/${_pkgname}/{dictionaries,hyphenation,searchplugins} ln -sf /usr/share/hunspell "${pkgdir}/usr/lib/${_pkgname}/dictionaries" diff --git a/libre/icedove-libre/branding.patch b/libre/icedove-libre/branding.patch new file mode 100644 index 000000000..d84b8075a --- /dev/null +++ b/libre/icedove-libre/branding.patch @@ -0,0 +1,19 @@ +diff -Naur comm-release.orig/mail/branding/icedove/locales/en-US/brand.dtd comm-release/mail/branding/icedove/locales/en-US/brand.dtd +--- comm-release.orig/mail/branding/icedove/locales/en-US/brand.dtd 2012-10-30 16:41:16.000000000 -0200 ++++ comm-release/mail/branding/icedove/locales/en-US/brand.dtd 2012-10-31 22:35:04.203666114 -0200 +@@ -1,4 +1,4 @@ + <!ENTITY brandShortName "Icedove"> +-<!ENTITY brandFullName "Icedove Mail/News"> +-<!ENTITY vendorShortName "Icedove"> ++<!ENTITY brandFullName "Icedove"> ++<!ENTITY vendorShortName "Mozilla"> + <!ENTITY trademarkInfo.part1 " "> +diff -Naur comm-release.orig/mail/branding/icedove/locales/en-US/brand.properties comm-release/mail/branding/icedove/locales/en-US/brand.properties +--- comm-release.orig/mail/branding/icedove/locales/en-US/brand.properties 2012-10-30 10:13:50.000000000 -0200 ++++ comm-release/mail/branding/icedove/locales/en-US/brand.properties 2012-10-31 22:35:14.786423732 -0200 +@@ -1,3 +1,3 @@ + brandShortName=Icedove +-brandFullName=Icedove Mail/News +-vendorShortName=Icedove ++brandFullName=Icedove ++vendorShortName=Mozilla |