Date: Tuesday, November 30, 2021 @ 18:18:31 Author: foutrelis Revision: 429690
archrelease: copy trunk to staging-x86_64 Added: avahi/repos/staging-x86_64/ avahi/repos/staging-x86_64/0001-Fix-avahi-browse-Invalid-service-type.patch (from rev 429689, avahi/trunk/0001-Fix-avahi-browse-Invalid-service-type.patch) avahi/repos/staging-x86_64/282.patch (from rev 429689, avahi/trunk/282.patch) avahi/repos/staging-x86_64/PKGBUILD (from rev 429689, avahi/trunk/PKGBUILD) --------------------------------------------------+ 0001-Fix-avahi-browse-Invalid-service-type.patch | 27 ++++++ 282.patch | 42 +++++++++ PKGBUILD | 93 +++++++++++++++++++++ 3 files changed, 162 insertions(+) Copied: avahi/repos/staging-x86_64/0001-Fix-avahi-browse-Invalid-service-type.patch (from rev 429689, avahi/trunk/0001-Fix-avahi-browse-Invalid-service-type.patch) =================================================================== --- staging-x86_64/0001-Fix-avahi-browse-Invalid-service-type.patch (rev 0) +++ staging-x86_64/0001-Fix-avahi-browse-Invalid-service-type.patch 2021-11-30 18:18:31 UTC (rev 429690) @@ -0,0 +1,27 @@ +From 6fe6c44d953edd50c32ff6ce8fec5ac811fa3b69 Mon Sep 17 00:00:00 2001 +From: Asger Hautop Drewsen <as...@princh.com> +Date: Mon, 9 Aug 2021 14:25:08 +0200 +Subject: [PATCH] Fix avahi-browse: Invalid service type + +--- + avahi-core/browse-service.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/avahi-core/browse-service.c b/avahi-core/browse-service.c +index 5531360..2d3fa75 100644 +--- a/avahi-core/browse-service.c ++++ b/avahi-core/browse-service.c +@@ -103,7 +103,9 @@ AvahiSServiceBrowser *avahi_s_service_browser_prepare( + AVAHI_CHECK_VALIDITY_RETURN_NULL(server, AVAHI_PROTO_VALID(protocol), AVAHI_ERR_INVALID_PROTOCOL); + AVAHI_CHECK_VALIDITY_RETURN_NULL(server, !domain || avahi_is_valid_domain_name(domain), AVAHI_ERR_INVALID_DOMAIN_NAME); + AVAHI_CHECK_VALIDITY_RETURN_NULL(server, AVAHI_FLAGS_VALID(flags, AVAHI_LOOKUP_USE_WIDE_AREA|AVAHI_LOOKUP_USE_MULTICAST), AVAHI_ERR_INVALID_FLAGS); +- AVAHI_CHECK_VALIDITY_RETURN_NULL(server, avahi_is_valid_service_type_generic(service_type), AVAHI_ERR_INVALID_SERVICE_TYPE); ++ ++ if (!avahi_is_valid_service_type_generic(service_type)) ++ service_type = "_invalid._tcp"; + + if (!domain) + domain = server->domain_name; +-- +2.32.0 + Copied: avahi/repos/staging-x86_64/282.patch (from rev 429689, avahi/trunk/282.patch) =================================================================== --- staging-x86_64/282.patch (rev 0) +++ staging-x86_64/282.patch 2021-11-30 18:18:31 UTC (rev 429690) @@ -0,0 +1,42 @@ +From bcafdcc5465091b6088532460b671f411703f90b Mon Sep 17 00:00:00 2001 +From: Simon McVittie <s...@debian.org> +Date: Fri, 24 Apr 2020 11:25:41 +0100 +Subject: [PATCH] avahi-discover: Don't decode unicode strings, only + bytestrings + +Unicode strings (unicode in Python 2, str or unicode in Python 3) don't +have a decode method; only bytestrings (str or bytes in Python 2, +bytes in Python 3) have that. Decode exactly the strings that need +decoding. + +Resolves: https://github.com/lathiat/avahi/issues/275 +Signed-off-by: Simon McVittie <s...@debian.org> +--- + avahi-python/avahi-discover/avahi-discover.py | 8 +++++--- + 1 file changed, 5 insertions(+), 3 deletions(-) + +diff --git a/avahi-python/avahi-discover/avahi-discover.py b/avahi-python/avahi-discover/avahi-discover.py +index 4a2b5756..fddf4a51 100755 +--- a/avahi-python/avahi-discover/avahi-discover.py ++++ b/avahi-python/avahi-discover/avahi-discover.py +@@ -238,15 +238,17 @@ def update_label(self,interface, protocol, name, stype, domain, host, aprotocol, + txts+="<b>" + _("TXT") + " <i>%s</i></b> = %s\n" % (k,v) + else: + txts = "<b>" + _("TXT Data:") + "</b> <i>" + _("empty") + "</i>" +- +- txts = txts.decode("utf-8") ++ ++ if isinstance(txts, bytes): # Python 2 ++ txts = txts.decode("utf-8") + + infos = "<b>" + _("Service Type:") + "</b> %s\n" + infos += "<b>" + _("Service Name:") + "</b> %s\n" + infos += "<b>" + _("Domain Name:") + "</b> %s\n" + infos += "<b>" + _("Interface:") + "</b> %s %s\n" + infos += "<b>" + _("Address:") + "</b> %s/%s:%i\n%s" +- infos = infos.decode("utf-8") ++ if isinstance(infos, bytes): # Python 2 ++ infos = infos.decode("utf-8") + infos = infos % (stype, name, domain, self.siocgifname(interface), self.protoname(protocol), host, address, port, txts.strip()) + self.info_label.set_markup(infos) + Copied: avahi/repos/staging-x86_64/PKGBUILD (from rev 429689, avahi/trunk/PKGBUILD) =================================================================== --- staging-x86_64/PKGBUILD (rev 0) +++ staging-x86_64/PKGBUILD 2021-11-30 18:18:31 UTC (rev 429690) @@ -0,0 +1,93 @@ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steff...@gmail.com> +# Contributor: Gaetan Bisson <bis...@archlinux.org> +# Contributor: Douglas Soares de Andrade <doug...@archlinux.org> + +pkgname=avahi +pkgver=0.8+22+gfd482a7 +pkgrel=2 +pkgdesc='Service Discovery for Linux using mDNS/DNS-SD -- compatible with Bonjour' +url='https://github.com/lathiat/avahi' +license=(LGPL) +arch=(x86_64) +depends=(expat libdaemon glib2 libcap gdbm dbus) +makedepends=(git gobject-introspection gtk3 qt5-base xmltoman python-dbus + python-gobject doxygen graphviz libevent) +optdepends=('gtk3: avahi-discover, avahi-discover-standalone, bshell, bssh, bvnc' + 'qt5-base: qt5 bindings' + 'libevent: libevent bindings' + 'nss-mdns: NSS support for mDNS' + 'python-twisted: avahi-bookmarks' + 'python-gobject: avahi-bookmarks, avahi-discover' + 'python-dbus: avahi-bookmarks, avahi-discover') +provides=(libavahi-client.so libavahi-common.so libavahi-core.so + libavahi-glib.so libavahi-gobject.so libavahi-libevent.so + libavahi-qt5.so libavahi-ui-gtk3.so libdns_sd.so) +backup=(etc/avahi/{hosts,avahi-daemon.conf,avahi-{autoip,dnsconf}d.action} + usr/lib/avahi/service-types.db) +_commit=fd482a74625b8db8547b8cfca3ee3d3c6c721423 # master +source=("git+https://github.com/lathiat/avahi#commit=$_commit" + 282.patch + 0001-Fix-avahi-browse-Invalid-service-type.patch) +sha512sums=('SKIP' + '26b1e74450944f5c4385d2f5df18523cfb953e4138f6d9e81061a626453e40d8ed2dee44535cfbb547848eefb3cdca408009d5f0e0c465f144a8803db8593b46' + 'e39c17d9a5d534784a3c7b6947da994d0ab5fa354aac5cecde6d3baaa2bb3d57f02f91cc6fb68885a4e98f44efe615b01631a4c7af752aa26f35082cfcc0ddd7') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/^v//;s/-/+/g' +} + +prepare() { + cd $pkgname + + # https://bugs.archlinux.org/task/68518 + # https://github.com/lathiat/avahi/pull/282 + git apply -3 ../282.patch + + # https://bugs.archlinux.org/task/71781 + # https://github.com/lathiat/avahi/issues/212 + git apply -3 ../0001-Fix-avahi-browse-Invalid-service-type.patch + + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd $pkgname + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --sbindir=/usr/bin \ + with_dbus_sys=/usr/share/dbus-1/system.d \ + --disable-mono \ + --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 + + make +} + +package() { + depends+=(libdbus-1.so) + + cd $pkgname + make DESTDIR="$pkgdir" install + + rmdir "$pkgdir/run" + + # 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/" + + echo 'u avahi - "Avahi mDNS/DNS-SD daemon"' | + install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/$pkgname.conf" +}