[arch-commits] Commit in avahi/repos (8 files)

Jan Steffens heftig at archlinux.org
Tue Jul 11 20:50:34 UTC 2017


    Date: Tuesday, July 11, 2017 @ 20:50:33
  Author: heftig
Revision: 300130

archrelease: copy trunk to testing-i686, testing-x86_64

Added:
  avahi/repos/testing-i686/
  avahi/repos/testing-i686/0001-avahi-python-Use-the-agnostic-DBM-interface.patch
    (from rev 300129, avahi/trunk/0001-avahi-python-Use-the-agnostic-DBM-interface.patch)
  avahi/repos/testing-i686/PKGBUILD
    (from rev 300129, avahi/trunk/PKGBUILD)
  avahi/repos/testing-i686/avahi.install
    (from rev 300129, avahi/trunk/avahi.install)
  avahi/repos/testing-x86_64/
  avahi/repos/testing-x86_64/0001-avahi-python-Use-the-agnostic-DBM-interface.patch
    (from rev 300129, avahi/trunk/0001-avahi-python-Use-the-agnostic-DBM-interface.patch)
  avahi/repos/testing-x86_64/PKGBUILD
    (from rev 300129, avahi/trunk/PKGBUILD)
  avahi/repos/testing-x86_64/avahi.install
    (from rev 300129, avahi/trunk/avahi.install)

-----------------------------------------------------------------------+
 testing-i686/0001-avahi-python-Use-the-agnostic-DBM-interface.patch   |  256 ++++++++++
 testing-i686/PKGBUILD                                                 |   88 +++
 testing-i686/avahi.install                                            |   16 
 testing-x86_64/0001-avahi-python-Use-the-agnostic-DBM-interface.patch |  256 ++++++++++
 testing-x86_64/PKGBUILD                                               |   88 +++
 testing-x86_64/avahi.install                                          |   16 
 6 files changed, 720 insertions(+)

Copied: avahi/repos/testing-i686/0001-avahi-python-Use-the-agnostic-DBM-interface.patch (from rev 300129, avahi/trunk/0001-avahi-python-Use-the-agnostic-DBM-interface.patch)
===================================================================
--- testing-i686/0001-avahi-python-Use-the-agnostic-DBM-interface.patch	                        (rev 0)
+++ testing-i686/0001-avahi-python-Use-the-agnostic-DBM-interface.patch	2017-07-11 20:50:33 UTC (rev 300130)
@@ -0,0 +1,256 @@
+From 426f70261d61db359e573e06b03575ee8cf50f5d Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens at gmail.com>
+Date: Tue, 11 Jul 2017 21:52:37 +0200
+Subject: [PATCH] avahi-python: Use the agnostic DBM interface
+
+Also fixes configure failing if Python 3 and GDBM are in use, since Py3
+only has anydbm under the name of 'dbm'.
+---
+ avahi-python/avahi/Makefile.am                  | 15 +-----------
+ avahi-python/avahi/ServiceTypeDatabase.py.in    | 31 ++++++++++++++++++-------
+ configure.ac                                    |  9 ++++---
+ service-type-database/.gitignore                |  1 -
+ service-type-database/Makefile.am               | 18 ++++----------
+ service-type-database/{build-db.in => build-db} | 13 +++++++----
+ 6 files changed, 41 insertions(+), 46 deletions(-)
+ rename service-type-database/{build-db.in => build-db} (87%)
+
+diff --git a/avahi-python/avahi/Makefile.am b/avahi-python/avahi/Makefile.am
+index 3eb67d0df438a7f8..c906b9bf3b6d0708 100644
+--- a/avahi-python/avahi/Makefile.am
++++ b/avahi-python/avahi/Makefile.am
+@@ -25,29 +25,16 @@ avahidir = $(pythondir)/avahi
+ 
+ if HAVE_GDBM
+ nodist_avahi_SCRIPTS = ServiceTypeDatabase.py
+-
+-ServiceTypeDatabase.py: ServiceTypeDatabase.py.in
+-	$(AM_V_GEN)sed -e 's, at PYTHON\@,$(PYTHON),g' \
+-		-e 's, at DBM\@,gdbm,g' \
+-		-e 's, at FIRST_KEY\@,key = self.db.firstkey(),g' \
+-		-e 's, at CHECK_KEY\@,while key is not None:,g' \
+-		-e 's, at NEXT_KEY\@,key = self.db.nextkey(key),g' \
+-		-e 's, at pkglibdatadir\@,$(pkglibdatadir),g' $< > $@ && \
+-	chmod +x $@
+ endif
+ 
+ if HAVE_DBM
+ nodist_avahi_SCRIPTS = ServiceTypeDatabase.py
++endif
+ 
+ ServiceTypeDatabase.py: ServiceTypeDatabase.py.in
+ 	$(AM_V_GEN)sed -e 's, at PYTHON\@,$(PYTHON),g' \
+-		-e 's, at DBM\@,dbm,g' \
+-		-e 's, at FIRST_KEY\@,keys = self.db.keys(),g' \
+-		-e 's, at CHECK_KEY\@,for key in keys:,g' \
+-		-e 's, at NEXT_KEY\@,,g' \
+ 		-e 's, at pkglibdatadir\@,$(pkglibdatadir),g' $< > $@ && \
+ 	chmod +x $@
+-endif
+ 
+ avahi_PYTHON = $(avahi_SCRIPTS)
+ 
+diff --git a/avahi-python/avahi/ServiceTypeDatabase.py.in b/avahi-python/avahi/ServiceTypeDatabase.py.in
+index 4ddd654409deb983..d7f9969bbd5a6ab0 100644
+--- a/avahi-python/avahi/ServiceTypeDatabase.py.in
++++ b/avahi-python/avahi/ServiceTypeDatabase.py.in
+@@ -17,18 +17,22 @@
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ # USA.
+ 
+-import @DBM@
++try:
++    import anydbm as dbm
++except ImportError:
++    import dbm
++
+ import locale
+ import re
+ 
+ locale.setlocale(locale.LC_ALL, '')
+ 
+ class ServiceTypeDatabase:
+     """ServiceTypeDatabase maps service types to descriptions"""
+ 
+     def __init__(self, filename = "@pkglibdatadir@/service-types.db"):
+ 
+-        self.db = @DBM at .open(filename, "r")
++        self.db = dbm.open(filename, "r")
+ 
+         l = locale.getlocale(locale.LC_MESSAGES)
+ 
+@@ -90,13 +94,24 @@ class ServiceTypeDatabase:
+ 
+     def __iter__(self):
+ 
+-        @FIRST_KEY@
+-        @CHECK_KEY@
++        def want_key(key):
++            if not re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+', key):
++                return False
++            if re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+\[.*\]', key):
++                return False
++            return True
+ 
+-            if re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+', key) and not re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+\[.*\]', key):
+-                yield key
+-
+-            @NEXT_KEY@
++        try:
++            key = self.db.firstkey()
++        except AttributeError:
++            for key in self.db.keys():
++                if want_key(key):
++                    yield key
++        else:
++            while key is not None:
++                if want_key(key):
++                    yield key
++                key = self.db.nextkey(key)
+ 
+     def __len__(self):
+ 
+diff --git a/configure.ac b/configure.ac
+index 66789718d45ff4ea..fbbf7cf3ef562a26 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -824,11 +824,10 @@ if test "x$HAVE_PYTHON" = "xyes" ; then
+         fi
+ 
+         AM_CHECK_PYMOD(socket,,,[AC_MSG_ERROR(Could not find Python module socket)])
+-        if test "x$HAVE_GDBM" = "xyes"; then
+-            AM_CHECK_PYMOD(gdbm,,,[AC_MSG_ERROR(Could not find Python module gdbm)])
+-        fi
+-        if test "x$HAVE_DBM" = "xyes"; then
+-            AM_CHECK_PYMOD(dbm,,,[AC_MSG_ERROR(Could not find Python module dbm)])
++        if test "x$HAVE_GDBM" = "xyes" || test "x$HAVE_DBM" = "xyes"; then
++            AM_CHECK_PYMOD(anydbm,,,[
++                AM_CHECK_PYMOD(dbm,,,[AC_MSG_ERROR(Could not find Python module dbm)])
++            ])
+         fi
+     fi
+ fi
+diff --git a/service-type-database/.gitignore b/service-type-database/.gitignore
+index 581f1929d521c01d..51b02600e70c1ceb 100644
+--- a/service-type-database/.gitignore
++++ b/service-type-database/.gitignore
+@@ -1,4 +1,3 @@
+ Makefile
+ Makefile.in
+ service-types.db
+-build-db
+diff --git a/service-type-database/Makefile.am b/service-type-database/Makefile.am
+index d184fde30f0758c5..f9fa0825e937f2f7 100644
+--- a/service-type-database/Makefile.am
++++ b/service-type-database/Makefile.am
+@@ -15,49 +15,39 @@
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ # USA.
+ 
+-EXTRA_DIST=build-db.in service-types
++EXTRA_DIST=service-types
+ 
+ pkglibdatadir=$(libdir)/avahi
+ 
+ pkglibdata_DATA=
+ 
+ if HAVE_PYTHON
+ if HAVE_GDBM
+ 
+ noinst_SCRIPTS=build-db
+ pkglibdata_DATA+=service-types.db
+ 
+-build-db: build-db.in
+-	$(AM_V_GEN)sed -e 's, at PYTHON\@,$(PYTHON),g' \
+-	    -e 's, at DBM\@,gdbm,g' $< > $@ && \
+-	chmod +x $@
+-
+-service-types.db: service-types build-db
++service-types.db: service-types
+ 	$(AM_V_GEN)$(PYTHON) build-db $< $@.coming && \
+ 	mv $@.coming $@
+ 
+-CLEANFILES = service-types.db build-db
++CLEANFILES = service-types.db
+ 
+ endif
+ if HAVE_DBM
+ 
+ noinst_SCRIPTS=build-db
+ pkglibdata_DATA+=service-types.db.pag service-types.db.dir
+ 
+-build-db: build-db.in
+-	$(AM_V_GEN)sed -e 's, at PYTHON\@,$(PYTHON),g' \
+-	    -e 's, at DBM\@,dbm,g' $< > $@ && \
+-	chmod +x $@
+-
+ service-types.db.pag: service-types.db
+ 	$(AM_V_GEN)mv service-types.db.coming.pag service-types.db.pag
+ service-types.db.dir: service-types.db
+ 	$(AM_V_GEN)mv service-types.db.coming.dir service-types.db.dir
+ service-types.db: service-types build-db
+ 	$(AM_V_GEN)$(PYTHON) build-db $< $@.coming && \
+ 	if test -f "$@.coming"; then mv $@.coming $@; fi
+ 
+-CLEANFILES = service-types.db* build-db
++CLEANFILES = service-types.db*
+ 
+ endif
+ endif
+diff --git a/service-type-database/build-db.in b/service-type-database/build-db
+similarity index 87%
+rename from service-type-database/build-db.in
+rename to service-type-database/build-db
+index 4cda425374a79198..78ee892f606ea43c 100755
+--- a/service-type-database/build-db.in
++++ b/service-type-database/build-db
+@@ -1,37 +1,42 @@
+-#!@PYTHON@
++#!/usr/bin/env python
+ # -*-python-*-
+ # This file is part of avahi.
+ #
+ # avahi is free software; you can redistribute it and/or modify it
+ # under the terms of the GNU Lesser General Public License as
+ # published by the Free Software Foundation; either version 2 of the
+ # License, or (at your option) any later version.
+ #
+ # avahi is distributed in the hope that it will be useful, but WITHOUT
+ # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ # License for more details.
+ #
+ # You should have received a copy of the GNU Lesser General Public
+ # License along with avahi; if not, write to the Free Software
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ # USA.
+ 
+-import @DBM@, sys
++try:
++    import anydbm as dbm
++except ImportError:
++    import dbm
++
++import sys
+ 
+ if len(sys.argv) > 1:
+     infn = sys.argv[1]
+ else:
+     infn = "service-types"
+ 
+ if len(sys.argv) > 2:
+     outfn = sys.argv[2]
+ else:
+     outfn = infn + ".db"
+ 
+-db = @DBM at .open(outfn, "n")
++db = dbm.open(outfn, "n")
+ 
+-for ln in file(infn, "r"):
++for ln in open(infn, "r"):
+     ln = ln.strip(" \r\n\t")
+     
+     if ln == "" or ln.startswith("#"):
+-- 
+2.13.2
+

Copied: avahi/repos/testing-i686/PKGBUILD (from rev 300129, avahi/trunk/PKGBUILD)
===================================================================
--- testing-i686/PKGBUILD	                        (rev 0)
+++ testing-i686/PKGBUILD	2017-07-11 20:50:33 UTC (rev 300130)
@@ -0,0 +1,88 @@
+# $Id$
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
+# Contributor: Gaetan Bisson <bisson at archlinux.org>
+# Contributor: Douglas Soares de Andrade <douglas at archlinux.org>
+
+pkgname=avahi
+pkgver=0.7
+pkgrel=1
+pkgdesc='Service Discovery for Linux using mDNS/DNS-SD -- compatible with Bonjour'
+url='https://github.com/lathiat/avahi'
+license=(LGPL)
+arch=(i686 x86_64)
+depends=(expat libdaemon glib2 libcap gdbm dbus)
+makedepends=(git qt4 pygtk mono intltool gtk-sharp-2 gobject-introspection gtk3
+             xmltoman python-dbus python-gobject)
+optdepends=('gtk3: avahi-discover, avahi-discover-standalone, bshell, bssh, bvnc'
+            'gtk2: gtk2 bindings'
+            'qt4: qt4 bindings'
+            'pygtk: avahi-bookmarks'
+            'python2-twisted: avahi-bookmarks'
+            'mono: mono bindings'
+            'nss-mdns: NSS support for mDNS'
+            'python-gobject: avahi-discover'
+            'python-dbus: avahi-discover')
+install=avahi.install
+backup=(etc/avahi/{hosts,avahi-daemon.conf}
+        usr/lib/avahi/service-types.db)
+_commit=6242e5f0fe001b7de2ccaa9431db279b2ee76b83  # tags/v0.7
+source=("git+https://github.com/lathiat/avahi#commit=$_commit"
+        0001-avahi-python-Use-the-agnostic-DBM-interface.patch)
+sha256sums=('SKIP'
+            '5e2347d73349cee56c17ef53b69418d0b083e2fe26d19af61ef2ba55ef43cf16')
+
+pkgver() {
+  cd $pkgname
+  git describe --tags | sed 's/^v//;s/-/+/g'
+}
+
+prepare() {
+  cd $pkgname
+  patch -Np1 -i ../0001-avahi-python-Use-the-agnostic-DBM-interface.patch
+  NOCONFIGURE=1 ./autogen.sh
+}
+
+build() {
+  cd $pkgname
+  export MOC_QT4=/usr/bin/moc-qt4 PYTHON=/usr/bin/python3
+
+  ./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --localstatedir=/var \
+    --sbindir=/usr/bin \
+    --disable-monodoc \
+    --disable-qt3 \
+    --enable-compat-libdns_sd \
+    --with-distro=archlinux \
+    --with-avahi-priv-access-group=network \
+    --with-autoipd-user=avahi \
+    --with-autoipd-group=avahi \
+    --with-systemdsystemunitdir=/usr/lib/systemd/system
+  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+
+  cp -a avahi-python/avahi avahi-python/avahi2
+
+  make
+  make -C avahi-python/avahi2 PYTHON=/usr/bin/python2
+}
+
+package() {
+  cd $pkgname
+  make DESTDIR="$pkgdir" install
+  make DESTDIR="$pkgdir" -C avahi-python/avahi2 install \
+    PYTHON=/usr/bin/python2 pythondir=/usr/lib/python2.7/site-packages
+
+  # this isn't ported
+  sed -i '1s|python3|python2|' "$pkgdir/usr/bin/avahi-bookmarks"
+
+  # mdnsresponder compat
+  ln -s avahi-compat-libdns_sd/dns_sd.h "$pkgdir/usr/include/dns_sd.h"
+
+  # move example services https://bugs.archlinux.org/task/47822
+  install -d "$pkgdir/usr/share/doc/$pkgname"
+  mv "$pkgdir"/etc/avahi/services/{,sftp-}ssh.service \
+    "$pkgdir/usr/share/doc/$pkgname/"
+
+  rmdir "$pkgdir"/run
+}

Copied: avahi/repos/testing-i686/avahi.install (from rev 300129, avahi/trunk/avahi.install)
===================================================================
--- testing-i686/avahi.install	                        (rev 0)
+++ testing-i686/avahi.install	2017-07-11 20:50:33 UTC (rev 300130)
@@ -0,0 +1,16 @@
+post_install() {
+  if ! getent passwd avahi &>/dev/null; then
+    groupadd -r -g 84 avahi
+    useradd -r -u 84 -g avahi -d / -s /bin/nologin -c avahi avahi
+  fi
+}
+
+post_upgrade() {
+  if (( $(vercmp $2 0.6.32rc-1) < 0 )); then
+    cat <<MSG
+>>> Avahi now needs to be enabled in order to launch.
+    Run \`systemctl enable avahi-daemon\` if you wish
+    to make use of Avahi.
+MSG
+  fi
+}

Copied: avahi/repos/testing-x86_64/0001-avahi-python-Use-the-agnostic-DBM-interface.patch (from rev 300129, avahi/trunk/0001-avahi-python-Use-the-agnostic-DBM-interface.patch)
===================================================================
--- testing-x86_64/0001-avahi-python-Use-the-agnostic-DBM-interface.patch	                        (rev 0)
+++ testing-x86_64/0001-avahi-python-Use-the-agnostic-DBM-interface.patch	2017-07-11 20:50:33 UTC (rev 300130)
@@ -0,0 +1,256 @@
+From 426f70261d61db359e573e06b03575ee8cf50f5d Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens at gmail.com>
+Date: Tue, 11 Jul 2017 21:52:37 +0200
+Subject: [PATCH] avahi-python: Use the agnostic DBM interface
+
+Also fixes configure failing if Python 3 and GDBM are in use, since Py3
+only has anydbm under the name of 'dbm'.
+---
+ avahi-python/avahi/Makefile.am                  | 15 +-----------
+ avahi-python/avahi/ServiceTypeDatabase.py.in    | 31 ++++++++++++++++++-------
+ configure.ac                                    |  9 ++++---
+ service-type-database/.gitignore                |  1 -
+ service-type-database/Makefile.am               | 18 ++++----------
+ service-type-database/{build-db.in => build-db} | 13 +++++++----
+ 6 files changed, 41 insertions(+), 46 deletions(-)
+ rename service-type-database/{build-db.in => build-db} (87%)
+
+diff --git a/avahi-python/avahi/Makefile.am b/avahi-python/avahi/Makefile.am
+index 3eb67d0df438a7f8..c906b9bf3b6d0708 100644
+--- a/avahi-python/avahi/Makefile.am
++++ b/avahi-python/avahi/Makefile.am
+@@ -25,29 +25,16 @@ avahidir = $(pythondir)/avahi
+ 
+ if HAVE_GDBM
+ nodist_avahi_SCRIPTS = ServiceTypeDatabase.py
+-
+-ServiceTypeDatabase.py: ServiceTypeDatabase.py.in
+-	$(AM_V_GEN)sed -e 's, at PYTHON\@,$(PYTHON),g' \
+-		-e 's, at DBM\@,gdbm,g' \
+-		-e 's, at FIRST_KEY\@,key = self.db.firstkey(),g' \
+-		-e 's, at CHECK_KEY\@,while key is not None:,g' \
+-		-e 's, at NEXT_KEY\@,key = self.db.nextkey(key),g' \
+-		-e 's, at pkglibdatadir\@,$(pkglibdatadir),g' $< > $@ && \
+-	chmod +x $@
+ endif
+ 
+ if HAVE_DBM
+ nodist_avahi_SCRIPTS = ServiceTypeDatabase.py
++endif
+ 
+ ServiceTypeDatabase.py: ServiceTypeDatabase.py.in
+ 	$(AM_V_GEN)sed -e 's, at PYTHON\@,$(PYTHON),g' \
+-		-e 's, at DBM\@,dbm,g' \
+-		-e 's, at FIRST_KEY\@,keys = self.db.keys(),g' \
+-		-e 's, at CHECK_KEY\@,for key in keys:,g' \
+-		-e 's, at NEXT_KEY\@,,g' \
+ 		-e 's, at pkglibdatadir\@,$(pkglibdatadir),g' $< > $@ && \
+ 	chmod +x $@
+-endif
+ 
+ avahi_PYTHON = $(avahi_SCRIPTS)
+ 
+diff --git a/avahi-python/avahi/ServiceTypeDatabase.py.in b/avahi-python/avahi/ServiceTypeDatabase.py.in
+index 4ddd654409deb983..d7f9969bbd5a6ab0 100644
+--- a/avahi-python/avahi/ServiceTypeDatabase.py.in
++++ b/avahi-python/avahi/ServiceTypeDatabase.py.in
+@@ -17,18 +17,22 @@
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ # USA.
+ 
+-import @DBM@
++try:
++    import anydbm as dbm
++except ImportError:
++    import dbm
++
+ import locale
+ import re
+ 
+ locale.setlocale(locale.LC_ALL, '')
+ 
+ class ServiceTypeDatabase:
+     """ServiceTypeDatabase maps service types to descriptions"""
+ 
+     def __init__(self, filename = "@pkglibdatadir@/service-types.db"):
+ 
+-        self.db = @DBM at .open(filename, "r")
++        self.db = dbm.open(filename, "r")
+ 
+         l = locale.getlocale(locale.LC_MESSAGES)
+ 
+@@ -90,13 +94,24 @@ class ServiceTypeDatabase:
+ 
+     def __iter__(self):
+ 
+-        @FIRST_KEY@
+-        @CHECK_KEY@
++        def want_key(key):
++            if not re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+', key):
++                return False
++            if re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+\[.*\]', key):
++                return False
++            return True
+ 
+-            if re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+', key) and not re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+\[.*\]', key):
+-                yield key
+-
+-            @NEXT_KEY@
++        try:
++            key = self.db.firstkey()
++        except AttributeError:
++            for key in self.db.keys():
++                if want_key(key):
++                    yield key
++        else:
++            while key is not None:
++                if want_key(key):
++                    yield key
++                key = self.db.nextkey(key)
+ 
+     def __len__(self):
+ 
+diff --git a/configure.ac b/configure.ac
+index 66789718d45ff4ea..fbbf7cf3ef562a26 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -824,11 +824,10 @@ if test "x$HAVE_PYTHON" = "xyes" ; then
+         fi
+ 
+         AM_CHECK_PYMOD(socket,,,[AC_MSG_ERROR(Could not find Python module socket)])
+-        if test "x$HAVE_GDBM" = "xyes"; then
+-            AM_CHECK_PYMOD(gdbm,,,[AC_MSG_ERROR(Could not find Python module gdbm)])
+-        fi
+-        if test "x$HAVE_DBM" = "xyes"; then
+-            AM_CHECK_PYMOD(dbm,,,[AC_MSG_ERROR(Could not find Python module dbm)])
++        if test "x$HAVE_GDBM" = "xyes" || test "x$HAVE_DBM" = "xyes"; then
++            AM_CHECK_PYMOD(anydbm,,,[
++                AM_CHECK_PYMOD(dbm,,,[AC_MSG_ERROR(Could not find Python module dbm)])
++            ])
+         fi
+     fi
+ fi
+diff --git a/service-type-database/.gitignore b/service-type-database/.gitignore
+index 581f1929d521c01d..51b02600e70c1ceb 100644
+--- a/service-type-database/.gitignore
++++ b/service-type-database/.gitignore
+@@ -1,4 +1,3 @@
+ Makefile
+ Makefile.in
+ service-types.db
+-build-db
+diff --git a/service-type-database/Makefile.am b/service-type-database/Makefile.am
+index d184fde30f0758c5..f9fa0825e937f2f7 100644
+--- a/service-type-database/Makefile.am
++++ b/service-type-database/Makefile.am
+@@ -15,49 +15,39 @@
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ # USA.
+ 
+-EXTRA_DIST=build-db.in service-types
++EXTRA_DIST=service-types
+ 
+ pkglibdatadir=$(libdir)/avahi
+ 
+ pkglibdata_DATA=
+ 
+ if HAVE_PYTHON
+ if HAVE_GDBM
+ 
+ noinst_SCRIPTS=build-db
+ pkglibdata_DATA+=service-types.db
+ 
+-build-db: build-db.in
+-	$(AM_V_GEN)sed -e 's, at PYTHON\@,$(PYTHON),g' \
+-	    -e 's, at DBM\@,gdbm,g' $< > $@ && \
+-	chmod +x $@
+-
+-service-types.db: service-types build-db
++service-types.db: service-types
+ 	$(AM_V_GEN)$(PYTHON) build-db $< $@.coming && \
+ 	mv $@.coming $@
+ 
+-CLEANFILES = service-types.db build-db
++CLEANFILES = service-types.db
+ 
+ endif
+ if HAVE_DBM
+ 
+ noinst_SCRIPTS=build-db
+ pkglibdata_DATA+=service-types.db.pag service-types.db.dir
+ 
+-build-db: build-db.in
+-	$(AM_V_GEN)sed -e 's, at PYTHON\@,$(PYTHON),g' \
+-	    -e 's, at DBM\@,dbm,g' $< > $@ && \
+-	chmod +x $@
+-
+ service-types.db.pag: service-types.db
+ 	$(AM_V_GEN)mv service-types.db.coming.pag service-types.db.pag
+ service-types.db.dir: service-types.db
+ 	$(AM_V_GEN)mv service-types.db.coming.dir service-types.db.dir
+ service-types.db: service-types build-db
+ 	$(AM_V_GEN)$(PYTHON) build-db $< $@.coming && \
+ 	if test -f "$@.coming"; then mv $@.coming $@; fi
+ 
+-CLEANFILES = service-types.db* build-db
++CLEANFILES = service-types.db*
+ 
+ endif
+ endif
+diff --git a/service-type-database/build-db.in b/service-type-database/build-db
+similarity index 87%
+rename from service-type-database/build-db.in
+rename to service-type-database/build-db
+index 4cda425374a79198..78ee892f606ea43c 100755
+--- a/service-type-database/build-db.in
++++ b/service-type-database/build-db
+@@ -1,37 +1,42 @@
+-#!@PYTHON@
++#!/usr/bin/env python
+ # -*-python-*-
+ # This file is part of avahi.
+ #
+ # avahi is free software; you can redistribute it and/or modify it
+ # under the terms of the GNU Lesser General Public License as
+ # published by the Free Software Foundation; either version 2 of the
+ # License, or (at your option) any later version.
+ #
+ # avahi is distributed in the hope that it will be useful, but WITHOUT
+ # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ # License for more details.
+ #
+ # You should have received a copy of the GNU Lesser General Public
+ # License along with avahi; if not, write to the Free Software
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ # USA.
+ 
+-import @DBM@, sys
++try:
++    import anydbm as dbm
++except ImportError:
++    import dbm
++
++import sys
+ 
+ if len(sys.argv) > 1:
+     infn = sys.argv[1]
+ else:
+     infn = "service-types"
+ 
+ if len(sys.argv) > 2:
+     outfn = sys.argv[2]
+ else:
+     outfn = infn + ".db"
+ 
+-db = @DBM at .open(outfn, "n")
++db = dbm.open(outfn, "n")
+ 
+-for ln in file(infn, "r"):
++for ln in open(infn, "r"):
+     ln = ln.strip(" \r\n\t")
+     
+     if ln == "" or ln.startswith("#"):
+-- 
+2.13.2
+

Copied: avahi/repos/testing-x86_64/PKGBUILD (from rev 300129, avahi/trunk/PKGBUILD)
===================================================================
--- testing-x86_64/PKGBUILD	                        (rev 0)
+++ testing-x86_64/PKGBUILD	2017-07-11 20:50:33 UTC (rev 300130)
@@ -0,0 +1,88 @@
+# $Id$
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
+# Contributor: Gaetan Bisson <bisson at archlinux.org>
+# Contributor: Douglas Soares de Andrade <douglas at archlinux.org>
+
+pkgname=avahi
+pkgver=0.7
+pkgrel=1
+pkgdesc='Service Discovery for Linux using mDNS/DNS-SD -- compatible with Bonjour'
+url='https://github.com/lathiat/avahi'
+license=(LGPL)
+arch=(i686 x86_64)
+depends=(expat libdaemon glib2 libcap gdbm dbus)
+makedepends=(git qt4 pygtk mono intltool gtk-sharp-2 gobject-introspection gtk3
+             xmltoman python-dbus python-gobject)
+optdepends=('gtk3: avahi-discover, avahi-discover-standalone, bshell, bssh, bvnc'
+            'gtk2: gtk2 bindings'
+            'qt4: qt4 bindings'
+            'pygtk: avahi-bookmarks'
+            'python2-twisted: avahi-bookmarks'
+            'mono: mono bindings'
+            'nss-mdns: NSS support for mDNS'
+            'python-gobject: avahi-discover'
+            'python-dbus: avahi-discover')
+install=avahi.install
+backup=(etc/avahi/{hosts,avahi-daemon.conf}
+        usr/lib/avahi/service-types.db)
+_commit=6242e5f0fe001b7de2ccaa9431db279b2ee76b83  # tags/v0.7
+source=("git+https://github.com/lathiat/avahi#commit=$_commit"
+        0001-avahi-python-Use-the-agnostic-DBM-interface.patch)
+sha256sums=('SKIP'
+            '5e2347d73349cee56c17ef53b69418d0b083e2fe26d19af61ef2ba55ef43cf16')
+
+pkgver() {
+  cd $pkgname
+  git describe --tags | sed 's/^v//;s/-/+/g'
+}
+
+prepare() {
+  cd $pkgname
+  patch -Np1 -i ../0001-avahi-python-Use-the-agnostic-DBM-interface.patch
+  NOCONFIGURE=1 ./autogen.sh
+}
+
+build() {
+  cd $pkgname
+  export MOC_QT4=/usr/bin/moc-qt4 PYTHON=/usr/bin/python3
+
+  ./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --localstatedir=/var \
+    --sbindir=/usr/bin \
+    --disable-monodoc \
+    --disable-qt3 \
+    --enable-compat-libdns_sd \
+    --with-distro=archlinux \
+    --with-avahi-priv-access-group=network \
+    --with-autoipd-user=avahi \
+    --with-autoipd-group=avahi \
+    --with-systemdsystemunitdir=/usr/lib/systemd/system
+  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+
+  cp -a avahi-python/avahi avahi-python/avahi2
+
+  make
+  make -C avahi-python/avahi2 PYTHON=/usr/bin/python2
+}
+
+package() {
+  cd $pkgname
+  make DESTDIR="$pkgdir" install
+  make DESTDIR="$pkgdir" -C avahi-python/avahi2 install \
+    PYTHON=/usr/bin/python2 pythondir=/usr/lib/python2.7/site-packages
+
+  # this isn't ported
+  sed -i '1s|python3|python2|' "$pkgdir/usr/bin/avahi-bookmarks"
+
+  # mdnsresponder compat
+  ln -s avahi-compat-libdns_sd/dns_sd.h "$pkgdir/usr/include/dns_sd.h"
+
+  # move example services https://bugs.archlinux.org/task/47822
+  install -d "$pkgdir/usr/share/doc/$pkgname"
+  mv "$pkgdir"/etc/avahi/services/{,sftp-}ssh.service \
+    "$pkgdir/usr/share/doc/$pkgname/"
+
+  rmdir "$pkgdir"/run
+}

Copied: avahi/repos/testing-x86_64/avahi.install (from rev 300129, avahi/trunk/avahi.install)
===================================================================
--- testing-x86_64/avahi.install	                        (rev 0)
+++ testing-x86_64/avahi.install	2017-07-11 20:50:33 UTC (rev 300130)
@@ -0,0 +1,16 @@
+post_install() {
+  if ! getent passwd avahi &>/dev/null; then
+    groupadd -r -g 84 avahi
+    useradd -r -u 84 -g avahi -d / -s /bin/nologin -c avahi avahi
+  fi
+}
+
+post_upgrade() {
+  if (( $(vercmp $2 0.6.32rc-1) < 0 )); then
+    cat <<MSG
+>>> Avahi now needs to be enabled in order to launch.
+    Run \`systemctl enable avahi-daemon\` if you wish
+    to make use of Avahi.
+MSG
+  fi
+}



More information about the arch-commits mailing list