From 60008cf9a6c8bd71d400cedcc15c7a2bfac47948 Mon Sep 17 00:00:00 2001
From: Tomas Popela
Date: Thu, 27 Jun 2024 10:03:47 +0200
Subject: [PATCH] TigerVNC is going to be removed from RHEL 10
Replace it with GNOME Connections in Remote Desktop Clients group
Resolves: RHEL-45257
---
avahi-0.8-no-vncviewer-c10s.patch | 41 +++++++++++++++++++++++++++++++
avahi.spec | 10 +++++++-
2 files changed, 50 insertions(+), 1 deletion(-)
create mode 100644 avahi-0.8-no-vncviewer-c10s.patch
diff --git a/avahi-0.8-no-vncviewer-c10s.patch b/avahi-0.8-no-vncviewer-c10s.patch
new file mode 100644
index 0000000..0b0f725
--- /dev/null
+++ b/avahi-0.8-no-vncviewer-c10s.patch
@@ -0,0 +1,41 @@
+diff -up avahi-0.8/avahi-ui/bssh.c.vnc avahi-0.8/avahi-ui/bssh.c
+--- avahi-0.8/avahi-ui/bssh.c.vnc 2024-06-27 09:18:51.742457490 +0200
++++ avahi-0.8/avahi-ui/bssh.c 2024-06-27 09:43:06.669594577 +0200
+@@ -186,11 +186,14 @@ int main(int argc, char*argv[]) {
+
+ if (avahi_domain_equal(t, "_rfb._tcp")) {
+ char p[AVAHI_DOMAIN_NAME_MAX+16];
+- snprintf(p, sizeof(p), "%s:%u", h, aui_service_dialog_get_port(AUI_SERVICE_DIALOG(d))-5900);
++ char p_prefixed[AVAHI_DOMAIN_NAME_MAX+22];
+
++ snprintf(p, sizeof(p), "%s:%u", h, aui_service_dialog_get_port(AUI_SERVICE_DIALOG(d))-5900);
++ snprintf(p_prefixed, sizeof(p_prefixed), "vnc://%s:%u", h, aui_service_dialog_get_port(AUI_SERVICE_DIALOG(d))-5900);
+ gtk_widget_destroy(d);
+
+- g_print("vncviewer %s\n", p);
++ g_print("gnome-connections %s\n", p);
++ execlp("gnome-connections", "gnome-connections", p_prefixed, NULL);
+ execlp("xvncviewer", "xvncviewer", p, NULL);
+ execlp("vncviewer", "vncviewer", p, NULL);
+
+diff -up avahi-0.8/man/bssh.1.xml.in.vnc avahi-0.8/man/bssh.1.xml.in
+--- avahi-0.8/man/bssh.1.xml.in.vnc 2024-06-27 09:16:56.485135447 +0200
++++ avahi-0.8/man/bssh.1.xml.in 2024-06-27 09:18:35.817412999 +0200
+@@ -32,7 +32,7 @@
+
+ bssh/bvnc/bshell browses for SSH/VNC servers on the local
+ network, shows them in a GUI for the user to select one and
+- finally calls ssh/vncviewer after a selection was made.
++ finally calls ssh/GNOME Connections after a selection was made.
+
+ If the binary is called as bssh only ssh servers will be shown. If the binary is called as bvnc only VNC servers will be shown. If the binary is called as bshell both VNC and SSH servers are shown.
+
+@@ -76,7 +76,7 @@
+
+
+
diff --git a/avahi.spec b/avahi.spec
index 7cac941..a03d948 100644
--- a/avahi.spec
+++ b/avahi.spec
@@ -58,7 +58,7 @@
Name: avahi
Version: 0.8
-Release: 27%{?dist}
+Release: 28%{?dist}
Summary: Local network service discovery
License: LGPL-2.1-or-later AND LGPL-2.0-or-later AND BSD-2-Clause-Views AND MIT
URL: http://avahi.org
@@ -164,6 +164,7 @@ Patch100: avahi-0.6.30-mono-libdir.patch
# https://github.com/lathiat/avahi/pull/312
Patch101: 0016-fix-QT3-build.patch
Patch102: avahi-0.8-no_undefined.patch
+Patch103: avahi-0.8-no-vncviewer-c10s.patch
%description
Avahi is a system which facilitates service discovery on
@@ -188,7 +189,11 @@ Requires: %{name} = %{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Requires: %{name}-glib%{?_isa} = %{version}-%{release}
Requires: %{name}-ui-gtk3%{?_isa} = %{version}-%{release}
+%if 0%{?rhel} && 0%{?rhel} > 9
+Requires: gnome-connections
+%else
Requires: tigervnc
+%endif
Requires: openssh-clients
%if %{WITH_PYTHON}
Requires: gdbm
@@ -877,6 +882,9 @@ exit 0
%changelog
+* Thu Jun 27 2024 Tomas Popela - 0.8-28
+- TigerVNC won't be shipped in RHEL 10, prefer GNOME Connections instead
+
* Mon Jun 24 2024 Troy Dawson - 0.8-27
- Bump release for June 2024 mass rebuild