From 2d72c795f9aa00562f513ac14b413768911f33ec8a2b9a596468cdd37874d33d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Lie?= Date: Wed, 19 Jan 2022 17:27:54 +0000 Subject: [PATCH] Accepting request 947263 from GNOME:Next - Reinstate avahi-0.6.31-systemd-order.patch (boo#1194561). This can probably go away if/when gh#lathiat/avahi#118 is fixed. - Drop avahi-0.6.32-suppress-resolv-conf-warning.patch: we should no longer need this given the above patch. - Add several patches from git: 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch 0006-man-add-missing-bshell.1-symlink.patch 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch 0009-fix-bytestring-decoding-for-proper-display.patch 0010-avahi_dns_packet_consume_uint32-fix-potential-undefi.patch - Build manpages with xmltoman. Currently needed for bssh. - Minor spec file clean-up. - Require python-rpm-macros for all builds (boo#1194744 boo#1194745). OBS-URL: https://build.opensuse.org/request/show/947263 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/avahi?expand=0&rev=195 --- ...e-to-avahi-autoipd.action-8-in-avahi.patch | 27 ++++++++++ ...ervice-Drop-Also-avahi-daemon.socket.patch | 25 +++++++++ 0006-man-add-missing-bshell.1-symlink.patch | 35 +++++++++++++ ...ver-1-bssh-1-and-bvnc-1-also-for-GTK.patch | 52 +++++++++++++++++++ ...testring-decoding-for-proper-display.patch | 32 ++++++++++++ avahi-0.6.31-systemd-order.patch | 27 ++++++++++ ...-0.6.32-suppress-resolv-conf-warning.patch | 30 ----------- avahi-glib2.spec | 37 ++++++++----- avahi-mono.spec | 37 ++++++++----- avahi-qt5.spec | 37 ++++++++----- avahi.changes | 17 ++++++ avahi.spec | 37 ++++++++----- 12 files changed, 315 insertions(+), 78 deletions(-) create mode 100644 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch create mode 100644 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch create mode 100644 0006-man-add-missing-bshell.1-symlink.patch create mode 100644 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch create mode 100644 0009-fix-bytestring-decoding-for-proper-display.patch create mode 100644 avahi-0.6.31-systemd-order.patch delete mode 100644 avahi-0.6.32-suppress-resolv-conf-warning.patch diff --git a/0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch b/0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch new file mode 100644 index 0000000..cf4aa91 --- /dev/null +++ b/0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch @@ -0,0 +1,27 @@ +From 1905a6b878064c6cc9bb96a1fc17ef77c75787c6 Mon Sep 17 00:00:00 2001 +From: Michael Biebl +Date: Sun, 17 Sep 2017 10:57:47 +0200 +Subject: [PATCH 01/10] man: fix reference to avahi-autoipd.action(8) in + avahi-autoipd(8) + +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=840833 +--- + man/avahi-autoipd.8.xml.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/man/avahi-autoipd.8.xml.in b/man/avahi-autoipd.8.xml.in +index 7137c30..23764a5 100644 +--- a/man/avahi-autoipd.8.xml.in ++++ b/man/avahi-autoipd.8.xml.in +@@ -150,7 +150,7 @@ + +
+

+- , ++ , +

+ +

http://avahi.org/wiki/AvahiAutoipd documents how avahi-autoipd is best packaged and integrated into distributions.

+-- +2.34.1 + diff --git a/0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch b/0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch new file mode 100644 index 0000000..4f0dd9c --- /dev/null +++ b/0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch @@ -0,0 +1,25 @@ +From 9c3a314856affb288f701d2d3ee23278fc98eaee Mon Sep 17 00:00:00 2001 +From: Steve Langasek +Date: Tue, 18 Feb 2020 15:43:19 +0800 +Subject: [PATCH 05/10] avahi-dnsconfd.service: Drop "Also=avahi-daemon.socket" + +Also=avahi-daemon.socket' means that 'systemctl disable avahi-dnsconfd' +ill also disable avahi-daemon.socket, which is definitely not what we +ant, and it also causes debhelper to throw an error. Just drop this +entry from the configuration. +--- + avahi-dnsconfd/avahi-dnsconfd.service.in | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/avahi-dnsconfd/avahi-dnsconfd.service.in b/avahi-dnsconfd/avahi-dnsconfd.service.in +index 95db79f..7c293da 100644 +--- a/avahi-dnsconfd/avahi-dnsconfd.service.in ++++ b/avahi-dnsconfd/avahi-dnsconfd.service.in +@@ -26,4 +26,3 @@ ExecStart=@sbindir@/avahi-dnsconfd -s + + [Install] + WantedBy=multi-user.target +-Also=avahi-daemon.socket +-- +2.34.1 + diff --git a/0006-man-add-missing-bshell.1-symlink.patch b/0006-man-add-missing-bshell.1-symlink.patch new file mode 100644 index 0000000..7c83a01 --- /dev/null +++ b/0006-man-add-missing-bshell.1-symlink.patch @@ -0,0 +1,35 @@ +From f983df44870b602179b493f9c3d113753b378e27 Mon Sep 17 00:00:00 2001 +From: Michael Biebl +Date: Sun, 17 Sep 2017 12:52:39 +0200 +Subject: [PATCH 06/10] man: add missing bshell.1 symlink + +The bshell binary is missing a symlink to its manual page. It should be +symlinked to the man page for bssh, just like how the bvnc man page is. + +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=655190 +--- + man/Makefile.am | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/man/Makefile.am b/man/Makefile.am +index d38267c..77a27bd 100644 +--- a/man/Makefile.am ++++ b/man/Makefile.am +@@ -137,12 +137,13 @@ BSSH_LN = + if HAVE_GTK + if HAVE_GLIB + BSSH_LN += $(LN_S) bssh.1 bvnc.1 && ++BSSH_LN += $(LN_S) bssh.1 bshell.1 && + endif + endif + install-exec-local: + mkdir -p $(DESTDIR)/$(mandir)/man1 && \ + cd $(DESTDIR)/$(mandir)/man1 && \ +- rm -f avahi-resolve-host-name.1 avahi-resolve-address.1 avahi-browse-domains.1 avahi-publish-address.1 avahi-publish-service.1 bvnc.1 && \ ++ rm -f avahi-resolve-host-name.1 avahi-resolve-address.1 avahi-browse-domains.1 avahi-publish-address.1 avahi-publish-service.1 bvnc.1 bshell.1 && \ + $(BSSH_LN) \ + $(LN_S) avahi-resolve.1 avahi-resolve-host-name.1 && \ + $(LN_S) avahi-resolve.1 avahi-resolve-address.1 && \ +-- +2.34.1 + diff --git a/0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch b/0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch new file mode 100644 index 0000000..2cce83b --- /dev/null +++ b/0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch @@ -0,0 +1,52 @@ +From 751be804e891aec5701a059144e2f5cbfc981b36 Mon Sep 17 00:00:00 2001 +From: Andreas Henriksson +Date: Thu, 24 Aug 2017 17:52:19 +0200 +Subject: [PATCH 07/10] Ship avahi-discover(1), bssh(1) and bvnc(1) also for + GTK3 + +These manpages went missing when you disabled gtk2 builds.... +--- + man/Makefile.am | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/man/Makefile.am b/man/Makefile.am +index 77a27bd..289b942 100644 +--- a/man/Makefile.am ++++ b/man/Makefile.am +@@ -56,7 +56,7 @@ man_MANS += \ + avahi-publish.1 \ + avahi-set-host-name.1 + +-if HAVE_GTK ++if HAVE_GTK2OR3 + man_MANS += \ + bssh.1 + endif +@@ -64,12 +64,13 @@ endif + if HAVE_PYTHON + man_MANS += \ + avahi-bookmarks.1 +-if HAVE_GTK ++endif ++ ++if HAVE_PYGOBJECT + man_MANS += \ + avahi-discover.1 + endif + endif +-endif + + if ENABLE_AUTOIPD + if HAVE_LIBDAEMON +@@ -134,7 +135,7 @@ EXTRA_DIST = \ + if HAVE_DBUS + + BSSH_LN = +-if HAVE_GTK ++if HAVE_GTK2OR3 + if HAVE_GLIB + BSSH_LN += $(LN_S) bssh.1 bvnc.1 && + BSSH_LN += $(LN_S) bssh.1 bshell.1 && +-- +2.34.1 + diff --git a/0009-fix-bytestring-decoding-for-proper-display.patch b/0009-fix-bytestring-decoding-for-proper-display.patch new file mode 100644 index 0000000..fd4b875 --- /dev/null +++ b/0009-fix-bytestring-decoding-for-proper-display.patch @@ -0,0 +1,32 @@ +From a94f72081dd1d546a1d95d860311a1242315bb28 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C3=89ric=20Araujo?= +Date: Sat, 29 Feb 2020 19:14:04 -0500 +Subject: [PATCH 09/10] fix bytestring decoding for proper display + +--- + avahi-python/avahi-discover/avahi-discover.py | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/avahi-python/avahi-discover/avahi-discover.py b/avahi-python/avahi-discover/avahi-discover.py +index 0db705d..4a2b575 100755 +--- a/avahi-python/avahi-discover/avahi-discover.py ++++ b/avahi-python/avahi-discover/avahi-discover.py +@@ -238,12 +238,15 @@ class Main_window: + txts+="" + _("TXT") + " %s = %s\n" % (k,v) + else: + txts = "" + _("TXT Data:") + " " + _("empty") + "" ++ ++ txts = txts.decode("utf-8") + + infos = "" + _("Service Type:") + " %s\n" + infos += "" + _("Service Name:") + " %s\n" + infos += "" + _("Domain Name:") + " %s\n" + infos += "" + _("Interface:") + " %s %s\n" + infos += "" + _("Address:") + " %s/%s:%i\n%s" ++ 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) + +-- +2.34.1 + diff --git a/avahi-0.6.31-systemd-order.patch b/avahi-0.6.31-systemd-order.patch new file mode 100644 index 0000000..f893f9c --- /dev/null +++ b/avahi-0.6.31-systemd-order.patch @@ -0,0 +1,27 @@ +From 822ebcca220605beb6a5a2079aa1a387b773841d Mon Sep 17 00:00:00 2001 +From: Mike Gorse +Date: Thu, 23 Jun 2016 10:11:15 -0500 +Subject: [PATCH] avahi-daemon.service.in: start after network-online + +We may need resolv.conf to be set up, so ensure that NetworkManager +or wicked have already started before initializing. +--- + avahi-daemon/avahi-daemon.service.in | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/avahi-daemon/avahi-daemon.service.in b/avahi-daemon/avahi-daemon.service.in +index 548c834..b6aae9e 100644 +--- a/avahi-daemon/avahi-daemon.service.in ++++ b/avahi-daemon/avahi-daemon.service.in +@@ -18,6 +18,8 @@ + [Unit] + Description=Avahi mDNS/DNS-SD Stack + Requires=avahi-daemon.socket ++After=network-online.target ++Wants=network-online.target + + [Service] + Type=dbus +-- +2.6.2 + diff --git a/avahi-0.6.32-suppress-resolv-conf-warning.patch b/avahi-0.6.32-suppress-resolv-conf-warning.patch deleted file mode 100644 index e0310f5..0000000 --- a/avahi-0.6.32-suppress-resolv-conf-warning.patch +++ /dev/null @@ -1,30 +0,0 @@ -From ef06fccecda4c821a013320ef4914469950a95c8 Mon Sep 17 00:00:00 2001 -From: Mike Gorse -Date: Sat, 9 Jul 2016 17:12:16 -0500 -Subject: [PATCH] Only warn on missing resolv.conf if the options that use it - are enabled - ---- - avahi-daemon/main.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/avahi-daemon/main.c b/avahi-daemon/main.c -index 10cb41e..a6e90da 100644 ---- a/avahi-daemon/main.c -+++ b/avahi-daemon/main.c -@@ -172,7 +172,11 @@ static int load_resolv_conf(void) { - #endif - - if (!f) { -- avahi_log_warn("Failed to open "RESOLV_CONF": %s", strerror(errno)); -+ if ((config.publish_dns_servers && config.publish_dns_servers[0]) || -+ config.publish_resolv_conf || -+ config.server_config.publish_domain) { -+ avahi_log_warn("Failed to open "RESOLV_CONF": %s", strerror(errno)); -+ } - goto finish; - } - --- -2.6.6 - diff --git a/avahi-glib2.spec b/avahi-glib2.spec index fc6f8a3..ee3d704 100644 --- a/avahi-glib2.spec +++ b/avahi-glib2.spec @@ -22,7 +22,7 @@ # For build all at once, set all to 1. # If you set build_core to 0, you cannot set more than one other option to 1. %define build_core 0 -# NOTE: build_glib2 also controls build of gobject, gtk2, gtk3 and pygobject code. +# NOTE: build_glib2 also controls build of gobject, gtk3 and pygobject code. %define build_glib2 1 %define build_mono 0 %define build_qt5 0 @@ -74,14 +74,24 @@ Patch0: avahi-gacdir.patch Patch1: avahi-desktop.patch # PATCH-FEATURE-OPENSUSE avahi-daemon-check-dns-suse.patch bnc431704 sbrabec@suse.cz -- Port Debian avahi-daemon-check-dns.sh to SUSE, see also http://avahi.org/wiki/AvahiAndUnicastDotLocal Patch4: avahi-daemon-check-dns-suse.patch -# PATCH-FIX-UPSTREAM avahi-0.6.32-suppress-resolv-conf-warning.patch bsc#982317 mgorse@suse.com -- only warn on missing resolv.conf if it is being used. -Patch19: avahi-0.6.32-suppress-resolv-conf-warning.patch +# PATCH-FIX-OPENSUSE avahi-0.6.31-systemd-order.patch bsc#982317 boo#1194561 mgorse@suse.com -- start after NM/wicked, to ensure resolv.conf present. +Patch19: avahi-0.6.31-systemd-order.patch # PATCH-FIX-UPSTREAM add-IT_PROG_INTLTOOL.patch alarrosa@suse.com -- add IT_PROG_INTLTOOL so intltool works Patch20: add-IT_PROG_INTLTOOL.patch # PATCH-FIX-UPSTREAM avahi-CVE-2021-3468.patch boo#1184521 mgorse@suse.com -- avoid infinite loop by handling HUP event in client_work. Patch21: avahi-CVE-2021-3468.patch # PATCH-FIX-UPSTREAM avahi-CVE-2021-3502.patch boo#1184846 mgorse@suse.com -- fix NULL pointer crashes. Patch22: avahi-CVE-2021-3502.patch +# PATCH-FIX-UPSTREAM 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch mgorse@suse.com -- fix a manpage reference. +Patch23: 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch +# PATCH-FIX-UPSTREAM 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch mgorse@suse.com -- disabling avahi-dnsconfd should not also disable avahi-daemon.socket. +Patch24: 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch +# PATCH-FIX-UPSTREAM 0006-man-add-missing-bshell.1-symlink.patch mgorse@suse.com -- add manpage symlink. +Patch25: 0006-man-add-missing-bshell.1-symlink.patch +# PATCH-FIX-UPSTREAM 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch mgorse@suse.com -- ship some manpages that were missing when gtk 2 is disabled. +Patch26: 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch +# PATCH-FIX-UPSTREAM 0009-fix-bytestring-decoding-for-proper-display.patch mgorse@suse.com -- fix bytestring decoding for proper display. +Patch27: 0009-fix-bytestring-decoding-for-proper-display.patch BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: gdbm-devel @@ -91,14 +101,12 @@ BuildRequires: libexpat-devel # libtool is needed to build all variants: bootstrap is unconditional in the build section BuildRequires: libtool BuildRequires: pkgconfig -# FIXME: on upgrade, ensure to verify if -DGTK_DISABLE_DEPRECATED=1 can remain in avahi=ui/Makefile.am (GtkStock deprecated with GTK+ 3.9.10). +BuildRequires: xmltoman %if !%{build_glib2} && !%{build_mono} && !%{build_qt5} # Create split spec files only when building per partes: #%(sh %{_sourcedir}/%{_name}_spec-prepare.sh %{_sourcedir} %{name}) %endif -%if 0%{?suse_version} >= 1330 BuildRequires: strip-nondeterminism -%endif %if %{build_core} BuildRequires: dbus-1-devel BuildRequires: doxygen @@ -141,10 +149,10 @@ BuildRequires: libavahi-devel = %{version} BuildRequires: pkgconfig(Qt5Core) Requires: libavahi-client%{avahi_client_sover} >= %{version} %endif +BuildRequires: python-rpm-macros %if %{build_core} BuildRequires: %{python_module dbm} BuildRequires: %{python_module dbus-python} -BuildRequires: python-rpm-macros %if 0%{?suse_version} >= 1550 # TW: generate subpackages for every python3 flavor %define python_subpackage_only 1 @@ -527,6 +535,11 @@ cp -a %{SOURCE12} service-type-database/build-db %patch20 -p1 %patch21 -p1 %patch22 -p1 +%patch23 -p1 +%patch24 -p1 +%patch25 -p1 +%patch26 -p1 +%patch27 -p1 %if !%{build_core} # Replace all .la references from local .la files to installed versions @@ -544,9 +557,6 @@ s:@@SKIP LIBAVAHI GLIB@@:libavahi-glib.la:g if ! test -f %{_datadir}/aclocal/glib-gettext.m4 ; then cat %{SOURCE4} >>acinclude.m4 fi -# FIXME: We do not have xmltoman, use original doc, just fix paths. -sed -i s:/home/lennart/tmp/avahi:: man/*.[0-9] -sed -i "s:-DGTK_DISABLE_DEPRECATED=1::" avahi-ui/Makefile.am %build autoreconf -f -i @@ -556,6 +566,7 @@ export PYTHON=%{_bindir}/$python %configure\ --disable-static\ --with-distro=suse\ + --enable-xmltoman\ %if %{build_core} --enable-compat-libdns_sd\ --enable-compat-howl\ @@ -723,13 +734,11 @@ rmdir %{buildroot}/%{_datadir}/avahi %else %if %{build_mono} %ifnarch ppc64 ppc64le s390x -%if 0%{?suse_version} >= 1330 strip-nondeterminism %{buildroot}/%{_prefix}/lib/monodoc/sources/*.zip %endif %endif %endif %endif -%endif %if %{build_glib2} %suse_update_desktop_file avahi-discover %suse_update_desktop_file bvnc @@ -965,6 +974,7 @@ find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:a %files -n python3-avahi-gtk %{_bindir}/avahi-discover %{_datadir}/applications/avahi-discover.desktop +%{_mandir}/man1/avahi-discover.1* %files -n avahi-utils-gtk %{_bindir}/bshell @@ -973,6 +983,9 @@ find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:a %{_bindir}/avahi-discover-standalone %{_datadir}/applications/bssh.desktop %{_datadir}/applications/bvnc.desktop +%{_mandir}/man1/bshell.1* +%{_mandir}/man1/bssh.1* +%{_mandir}/man1/bvnc.1* %files -n libavahi-glib-devel %{_includedir}/avahi-glib diff --git a/avahi-mono.spec b/avahi-mono.spec index 4adc6f8..e50d0a5 100644 --- a/avahi-mono.spec +++ b/avahi-mono.spec @@ -22,7 +22,7 @@ # For build all at once, set all to 1. # If you set build_core to 0, you cannot set more than one other option to 1. %define build_core 0 -# NOTE: build_glib2 also controls build of gobject, gtk2, gtk3 and pygobject code. +# NOTE: build_glib2 also controls build of gobject, gtk3 and pygobject code. %define build_glib2 0 %define build_mono 1 %define build_qt5 0 @@ -74,14 +74,24 @@ Patch0: avahi-gacdir.patch Patch1: avahi-desktop.patch # PATCH-FEATURE-OPENSUSE avahi-daemon-check-dns-suse.patch bnc431704 sbrabec@suse.cz -- Port Debian avahi-daemon-check-dns.sh to SUSE, see also http://avahi.org/wiki/AvahiAndUnicastDotLocal Patch4: avahi-daemon-check-dns-suse.patch -# PATCH-FIX-UPSTREAM avahi-0.6.32-suppress-resolv-conf-warning.patch bsc#982317 mgorse@suse.com -- only warn on missing resolv.conf if it is being used. -Patch19: avahi-0.6.32-suppress-resolv-conf-warning.patch +# PATCH-FIX-OPENSUSE avahi-0.6.31-systemd-order.patch bsc#982317 boo#1194561 mgorse@suse.com -- start after NM/wicked, to ensure resolv.conf present. +Patch19: avahi-0.6.31-systemd-order.patch # PATCH-FIX-UPSTREAM add-IT_PROG_INTLTOOL.patch alarrosa@suse.com -- add IT_PROG_INTLTOOL so intltool works Patch20: add-IT_PROG_INTLTOOL.patch # PATCH-FIX-UPSTREAM avahi-CVE-2021-3468.patch boo#1184521 mgorse@suse.com -- avoid infinite loop by handling HUP event in client_work. Patch21: avahi-CVE-2021-3468.patch # PATCH-FIX-UPSTREAM avahi-CVE-2021-3502.patch boo#1184846 mgorse@suse.com -- fix NULL pointer crashes. Patch22: avahi-CVE-2021-3502.patch +# PATCH-FIX-UPSTREAM 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch mgorse@suse.com -- fix a manpage reference. +Patch23: 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch +# PATCH-FIX-UPSTREAM 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch mgorse@suse.com -- disabling avahi-dnsconfd should not also disable avahi-daemon.socket. +Patch24: 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch +# PATCH-FIX-UPSTREAM 0006-man-add-missing-bshell.1-symlink.patch mgorse@suse.com -- add manpage symlink. +Patch25: 0006-man-add-missing-bshell.1-symlink.patch +# PATCH-FIX-UPSTREAM 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch mgorse@suse.com -- ship some manpages that were missing when gtk 2 is disabled. +Patch26: 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch +# PATCH-FIX-UPSTREAM 0009-fix-bytestring-decoding-for-proper-display.patch mgorse@suse.com -- fix bytestring decoding for proper display. +Patch27: 0009-fix-bytestring-decoding-for-proper-display.patch BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: gdbm-devel @@ -91,14 +101,12 @@ BuildRequires: libexpat-devel # libtool is needed to build all variants: bootstrap is unconditional in the build section BuildRequires: libtool BuildRequires: pkgconfig -# FIXME: on upgrade, ensure to verify if -DGTK_DISABLE_DEPRECATED=1 can remain in avahi=ui/Makefile.am (GtkStock deprecated with GTK+ 3.9.10). +BuildRequires: xmltoman %if !%{build_glib2} && !%{build_mono} && !%{build_qt5} # Create split spec files only when building per partes: #%(sh %{_sourcedir}/%{_name}_spec-prepare.sh %{_sourcedir} %{name}) %endif -%if 0%{?suse_version} >= 1330 BuildRequires: strip-nondeterminism -%endif %if %{build_core} BuildRequires: dbus-1-devel BuildRequires: doxygen @@ -141,10 +149,10 @@ BuildRequires: libavahi-devel = %{version} BuildRequires: pkgconfig(Qt5Core) Requires: libavahi-client%{avahi_client_sover} >= %{version} %endif +BuildRequires: python-rpm-macros %if %{build_core} BuildRequires: %{python_module dbm} BuildRequires: %{python_module dbus-python} -BuildRequires: python-rpm-macros %if 0%{?suse_version} >= 1550 # TW: generate subpackages for every python3 flavor %define python_subpackage_only 1 @@ -526,6 +534,11 @@ cp -a %{SOURCE12} service-type-database/build-db %patch20 -p1 %patch21 -p1 %patch22 -p1 +%patch23 -p1 +%patch24 -p1 +%patch25 -p1 +%patch26 -p1 +%patch27 -p1 %if !%{build_core} # Replace all .la references from local .la files to installed versions @@ -543,9 +556,6 @@ s:@@SKIP LIBAVAHI GLIB@@:libavahi-glib.la:g if ! test -f %{_datadir}/aclocal/glib-gettext.m4 ; then cat %{SOURCE4} >>acinclude.m4 fi -# FIXME: We do not have xmltoman, use original doc, just fix paths. -sed -i s:/home/lennart/tmp/avahi:: man/*.[0-9] -sed -i "s:-DGTK_DISABLE_DEPRECATED=1::" avahi-ui/Makefile.am %build autoreconf -f -i @@ -555,6 +565,7 @@ export PYTHON=%{_bindir}/$python %configure\ --disable-static\ --with-distro=suse\ + --enable-xmltoman\ %if %{build_core} --enable-compat-libdns_sd\ --enable-compat-howl\ @@ -722,13 +733,11 @@ rmdir %{buildroot}/%{_datadir}/avahi %else %if %{build_mono} %ifnarch ppc64 ppc64le s390x -%if 0%{?suse_version} >= 1330 strip-nondeterminism %{buildroot}/%{_prefix}/lib/monodoc/sources/*.zip %endif %endif %endif %endif -%endif %if %{build_glib2} %suse_update_desktop_file avahi-discover %suse_update_desktop_file bvnc @@ -964,6 +973,7 @@ find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:a %files -n python3-avahi-gtk %{_bindir}/avahi-discover %{_datadir}/applications/avahi-discover.desktop +%{_mandir}/man1/avahi-discover.1* %files -n avahi-utils-gtk %{_bindir}/bshell @@ -972,6 +982,9 @@ find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:a %{_bindir}/avahi-discover-standalone %{_datadir}/applications/bssh.desktop %{_datadir}/applications/bvnc.desktop +%{_mandir}/man1/bshell.1* +%{_mandir}/man1/bssh.1* +%{_mandir}/man1/bvnc.1* %files -n libavahi-glib-devel %{_includedir}/avahi-glib diff --git a/avahi-qt5.spec b/avahi-qt5.spec index 65f933b..6386b1f 100644 --- a/avahi-qt5.spec +++ b/avahi-qt5.spec @@ -22,7 +22,7 @@ # For build all at once, set all to 1. # If you set build_core to 0, you cannot set more than one other option to 1. %define build_core 0 -# NOTE: build_glib2 also controls build of gobject, gtk2, gtk3 and pygobject code. +# NOTE: build_glib2 also controls build of gobject, gtk3 and pygobject code. %define build_glib2 0 %define build_mono 0 %define build_qt5 1 @@ -74,14 +74,24 @@ Patch0: avahi-gacdir.patch Patch1: avahi-desktop.patch # PATCH-FEATURE-OPENSUSE avahi-daemon-check-dns-suse.patch bnc431704 sbrabec@suse.cz -- Port Debian avahi-daemon-check-dns.sh to SUSE, see also http://avahi.org/wiki/AvahiAndUnicastDotLocal Patch4: avahi-daemon-check-dns-suse.patch -# PATCH-FIX-UPSTREAM avahi-0.6.32-suppress-resolv-conf-warning.patch bsc#982317 mgorse@suse.com -- only warn on missing resolv.conf if it is being used. -Patch19: avahi-0.6.32-suppress-resolv-conf-warning.patch +# PATCH-FIX-OPENSUSE avahi-0.6.31-systemd-order.patch bsc#982317 boo#1194561 mgorse@suse.com -- start after NM/wicked, to ensure resolv.conf present. +Patch19: avahi-0.6.31-systemd-order.patch # PATCH-FIX-UPSTREAM add-IT_PROG_INTLTOOL.patch alarrosa@suse.com -- add IT_PROG_INTLTOOL so intltool works Patch20: add-IT_PROG_INTLTOOL.patch # PATCH-FIX-UPSTREAM avahi-CVE-2021-3468.patch boo#1184521 mgorse@suse.com -- avoid infinite loop by handling HUP event in client_work. Patch21: avahi-CVE-2021-3468.patch # PATCH-FIX-UPSTREAM avahi-CVE-2021-3502.patch boo#1184846 mgorse@suse.com -- fix NULL pointer crashes. Patch22: avahi-CVE-2021-3502.patch +# PATCH-FIX-UPSTREAM 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch mgorse@suse.com -- fix a manpage reference. +Patch23: 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch +# PATCH-FIX-UPSTREAM 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch mgorse@suse.com -- disabling avahi-dnsconfd should not also disable avahi-daemon.socket. +Patch24: 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch +# PATCH-FIX-UPSTREAM 0006-man-add-missing-bshell.1-symlink.patch mgorse@suse.com -- add manpage symlink. +Patch25: 0006-man-add-missing-bshell.1-symlink.patch +# PATCH-FIX-UPSTREAM 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch mgorse@suse.com -- ship some manpages that were missing when gtk 2 is disabled. +Patch26: 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch +# PATCH-FIX-UPSTREAM 0009-fix-bytestring-decoding-for-proper-display.patch mgorse@suse.com -- fix bytestring decoding for proper display. +Patch27: 0009-fix-bytestring-decoding-for-proper-display.patch BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: gdbm-devel @@ -91,14 +101,12 @@ BuildRequires: libexpat-devel # libtool is needed to build all variants: bootstrap is unconditional in the build section BuildRequires: libtool BuildRequires: pkgconfig -# FIXME: on upgrade, ensure to verify if -DGTK_DISABLE_DEPRECATED=1 can remain in avahi=ui/Makefile.am (GtkStock deprecated with GTK+ 3.9.10). +BuildRequires: xmltoman %if !%{build_glib2} && !%{build_mono} && !%{build_qt5} # Create split spec files only when building per partes: #%(sh %{_sourcedir}/%{_name}_spec-prepare.sh %{_sourcedir} %{name}) %endif -%if 0%{?suse_version} >= 1330 BuildRequires: strip-nondeterminism -%endif %if %{build_core} BuildRequires: dbus-1-devel BuildRequires: doxygen @@ -141,10 +149,10 @@ BuildRequires: libavahi-devel = %{version} BuildRequires: pkgconfig(Qt5Core) Requires: libavahi-client%{avahi_client_sover} >= %{version} %endif +BuildRequires: python-rpm-macros %if %{build_core} BuildRequires: %{python_module dbm} BuildRequires: %{python_module dbus-python} -BuildRequires: python-rpm-macros %if 0%{?suse_version} >= 1550 # TW: generate subpackages for every python3 flavor %define python_subpackage_only 1 @@ -527,6 +535,11 @@ cp -a %{SOURCE12} service-type-database/build-db %patch20 -p1 %patch21 -p1 %patch22 -p1 +%patch23 -p1 +%patch24 -p1 +%patch25 -p1 +%patch26 -p1 +%patch27 -p1 %if !%{build_core} # Replace all .la references from local .la files to installed versions @@ -544,9 +557,6 @@ s:@@SKIP LIBAVAHI GLIB@@:libavahi-glib.la:g if ! test -f %{_datadir}/aclocal/glib-gettext.m4 ; then cat %{SOURCE4} >>acinclude.m4 fi -# FIXME: We do not have xmltoman, use original doc, just fix paths. -sed -i s:/home/lennart/tmp/avahi:: man/*.[0-9] -sed -i "s:-DGTK_DISABLE_DEPRECATED=1::" avahi-ui/Makefile.am %build autoreconf -f -i @@ -556,6 +566,7 @@ export PYTHON=%{_bindir}/$python %configure\ --disable-static\ --with-distro=suse\ + --enable-xmltoman\ %if %{build_core} --enable-compat-libdns_sd\ --enable-compat-howl\ @@ -723,13 +734,11 @@ rmdir %{buildroot}/%{_datadir}/avahi %else %if %{build_mono} %ifnarch ppc64 ppc64le s390x -%if 0%{?suse_version} >= 1330 strip-nondeterminism %{buildroot}/%{_prefix}/lib/monodoc/sources/*.zip %endif %endif %endif %endif -%endif %if %{build_glib2} %suse_update_desktop_file avahi-discover %suse_update_desktop_file bvnc @@ -965,6 +974,7 @@ find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:a %files -n python3-avahi-gtk %{_bindir}/avahi-discover %{_datadir}/applications/avahi-discover.desktop +%{_mandir}/man1/avahi-discover.1* %files -n avahi-utils-gtk %{_bindir}/bshell @@ -973,6 +983,9 @@ find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:a %{_bindir}/avahi-discover-standalone %{_datadir}/applications/bssh.desktop %{_datadir}/applications/bvnc.desktop +%{_mandir}/man1/bshell.1* +%{_mandir}/man1/bssh.1* +%{_mandir}/man1/bvnc.1* %files -n libavahi-glib-devel %{_includedir}/avahi-glib diff --git a/avahi.changes b/avahi.changes index 0309d1b..9950d5c 100644 --- a/avahi.changes +++ b/avahi.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Mon Jan 17 17:12:07 UTC 2022 - Michael Gorse + +- Reinstate avahi-0.6.31-systemd-order.patch (boo#1194561). + This can probably go away if/when gh#lathiat/avahi#118 is fixed. +- Drop avahi-0.6.32-suppress-resolv-conf-warning.patch: we should + no longer need this given the above patch. +- Add several patches from git: + 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch + 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch + 0006-man-add-missing-bshell.1-symlink.patch + 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch + 0009-fix-bytestring-decoding-for-proper-display.patch 0010-avahi_dns_packet_consume_uint32-fix-potential-undefi.patch +- Build manpages with xmltoman. Currently needed for bssh. +- Minor spec file clean-up. +- Require python-rpm-macros for all builds (boo#1194744 boo#1194745). + ------------------------------------------------------------------- Wed Jan 12 14:33:21 UTC 2022 - Michael Gorse diff --git a/avahi.spec b/avahi.spec index 2f62a12..2bab135 100644 --- a/avahi.spec +++ b/avahi.spec @@ -24,7 +24,7 @@ # For build all at once, set all to 1. # If you set build_core to 0, you cannot set more than one other option to 1. %define build_core 1 -# NOTE: build_glib2 also controls build of gobject, gtk2, gtk3 and pygobject code. +# NOTE: build_glib2 also controls build of gobject, gtk3 and pygobject code. %define build_glib2 0 %define build_mono 0 %define build_qt5 0 @@ -76,14 +76,24 @@ Patch0: avahi-gacdir.patch Patch1: avahi-desktop.patch # PATCH-FEATURE-OPENSUSE avahi-daemon-check-dns-suse.patch bnc431704 sbrabec@suse.cz -- Port Debian avahi-daemon-check-dns.sh to SUSE, see also http://avahi.org/wiki/AvahiAndUnicastDotLocal Patch4: avahi-daemon-check-dns-suse.patch -# PATCH-FIX-UPSTREAM avahi-0.6.32-suppress-resolv-conf-warning.patch bsc#982317 mgorse@suse.com -- only warn on missing resolv.conf if it is being used. -Patch19: avahi-0.6.32-suppress-resolv-conf-warning.patch +# PATCH-FIX-OPENSUSE avahi-0.6.31-systemd-order.patch bsc#982317 boo#1194561 mgorse@suse.com -- start after NM/wicked, to ensure resolv.conf present. +Patch19: avahi-0.6.31-systemd-order.patch # PATCH-FIX-UPSTREAM add-IT_PROG_INTLTOOL.patch alarrosa@suse.com -- add IT_PROG_INTLTOOL so intltool works Patch20: add-IT_PROG_INTLTOOL.patch # PATCH-FIX-UPSTREAM avahi-CVE-2021-3468.patch boo#1184521 mgorse@suse.com -- avoid infinite loop by handling HUP event in client_work. Patch21: avahi-CVE-2021-3468.patch # PATCH-FIX-UPSTREAM avahi-CVE-2021-3502.patch boo#1184846 mgorse@suse.com -- fix NULL pointer crashes. Patch22: avahi-CVE-2021-3502.patch +# PATCH-FIX-UPSTREAM 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch mgorse@suse.com -- fix a manpage reference. +Patch23: 0001-man-fix-reference-to-avahi-autoipd.action-8-in-avahi.patch +# PATCH-FIX-UPSTREAM 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch mgorse@suse.com -- disabling avahi-dnsconfd should not also disable avahi-daemon.socket. +Patch24: 0005-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch +# PATCH-FIX-UPSTREAM 0006-man-add-missing-bshell.1-symlink.patch mgorse@suse.com -- add manpage symlink. +Patch25: 0006-man-add-missing-bshell.1-symlink.patch +# PATCH-FIX-UPSTREAM 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch mgorse@suse.com -- ship some manpages that were missing when gtk 2 is disabled. +Patch26: 0007-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch +# PATCH-FIX-UPSTREAM 0009-fix-bytestring-decoding-for-proper-display.patch mgorse@suse.com -- fix bytestring decoding for proper display. +Patch27: 0009-fix-bytestring-decoding-for-proper-display.patch BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: gdbm-devel @@ -93,14 +103,12 @@ BuildRequires: libexpat-devel # libtool is needed to build all variants: bootstrap is unconditional in the build section BuildRequires: libtool BuildRequires: pkgconfig -# FIXME: on upgrade, ensure to verify if -DGTK_DISABLE_DEPRECATED=1 can remain in avahi=ui/Makefile.am (GtkStock deprecated with GTK+ 3.9.10). +BuildRequires: xmltoman %if !%{build_glib2} && !%{build_mono} && !%{build_qt5} # Create split spec files only when building per partes: #%(sh %{_sourcedir}/%{_name}_spec-prepare.sh %{_sourcedir} %{name}) %endif -%if 0%{?suse_version} >= 1330 BuildRequires: strip-nondeterminism -%endif %if %{build_core} BuildRequires: dbus-1-devel BuildRequires: doxygen @@ -143,10 +151,10 @@ BuildRequires: libavahi-devel = %{version} BuildRequires: pkgconfig(Qt5Core) Requires: libavahi-client%{avahi_client_sover} >= %{version} %endif +BuildRequires: python-rpm-macros %if %{build_core} BuildRequires: %{python_module dbm} BuildRequires: %{python_module dbus-python} -BuildRequires: python-rpm-macros %if 0%{?suse_version} >= 1550 # TW: generate subpackages for every python3 flavor %define python_subpackage_only 1 @@ -522,6 +530,11 @@ cp -a %{SOURCE12} service-type-database/build-db %patch20 -p1 %patch21 -p1 %patch22 -p1 +%patch23 -p1 +%patch24 -p1 +%patch25 -p1 +%patch26 -p1 +%patch27 -p1 %if !%{build_core} # Replace all .la references from local .la files to installed versions @@ -539,9 +552,6 @@ s:@@SKIP LIBAVAHI GLIB@@:libavahi-glib.la:g if ! test -f %{_datadir}/aclocal/glib-gettext.m4 ; then cat %{SOURCE4} >>acinclude.m4 fi -# FIXME: We do not have xmltoman, use original doc, just fix paths. -sed -i s:/home/lennart/tmp/avahi:: man/*.[0-9] -sed -i "s:-DGTK_DISABLE_DEPRECATED=1::" avahi-ui/Makefile.am %build autoreconf -f -i @@ -551,6 +561,7 @@ export PYTHON=%{_bindir}/$python %configure\ --disable-static\ --with-distro=suse\ + --enable-xmltoman\ %if %{build_core} --enable-compat-libdns_sd\ --enable-compat-howl\ @@ -718,13 +729,11 @@ rmdir %{buildroot}/%{_datadir}/avahi %else %if %{build_mono} %ifnarch ppc64 ppc64le s390x -%if 0%{?suse_version} >= 1330 strip-nondeterminism %{buildroot}/%{_prefix}/lib/monodoc/sources/*.zip %endif %endif %endif %endif -%endif %if %{build_glib2} %suse_update_desktop_file avahi-discover %suse_update_desktop_file bvnc @@ -960,6 +969,7 @@ find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:a %files -n python3-avahi-gtk %{_bindir}/avahi-discover %{_datadir}/applications/avahi-discover.desktop +%{_mandir}/man1/avahi-discover.1* %files -n avahi-utils-gtk %{_bindir}/bshell @@ -968,6 +978,9 @@ find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:a %{_bindir}/avahi-discover-standalone %{_datadir}/applications/bssh.desktop %{_datadir}/applications/bvnc.desktop +%{_mandir}/man1/bshell.1* +%{_mandir}/man1/bssh.1* +%{_mandir}/man1/bvnc.1* %files -n libavahi-glib-devel %{_includedir}/avahi-glib