RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 2188174 - RHEL9 gnome-remote-desktop provides bundled libvncserver dependency
Summary: RHEL9 gnome-remote-desktop provides bundled libvncserver dependency
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: gnome-remote-desktop
Version: 9.1
Hardware: Unspecified
OS: Unspecified
unspecified
low
Target Milestone: rc
: ---
Assignee: Jonas Ådahl
QA Contact: Jiri Koten
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-04-20 01:51 UTC by Yaakov Selkowitz
Modified: 2023-11-07 10:07 UTC (History)
2 users (show)

Fixed In Version: gnome-remote-desktop-40.0-9.el9
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-11-07 08:37:07 UTC
Type: Bug
Target Upstream Version:
Embargoed:
pm-rhel: mirror+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Gitlab redhat/centos-stream/rpms gnome-remote-desktop merge_requests 6 0 None opened Do not provide libvncserver.so.1 2023-04-20 01:57:44 UTC
Gitlab redhat/centos-stream/rpms gnome-remote-desktop merge_requests 7 0 None opened Build bundled libvncserver statically 2023-06-29 15:47:05 UTC
Red Hat Issue Tracker RHELPLAN-155252 0 None None None 2023-04-20 01:52:21 UTC
Red Hat Product Errata RHBA-2023:6556 0 None None None 2023-11-07 08:37:08 UTC

Description Yaakov Selkowitz 2023-04-20 01:51:06 UTC
Description of problem:
RHEL9 gnome-remote-desktop builds and bundles a private copy of libvncserver.so.1 in a package-specific rpath, in order to provide a VNC server without supporting the libvncserver package standalone (see bug 1893947).  However, provides filtering is not set, so the library is added to provides.  This results in falsely resolving that library dependency in EPEL9 packages which are built against the EPEL9 version of that library, but since the RHEL bundled library is in a private rpath, the EPEL package cannot find it and fails to start.

The erroneous provides can be seen in the package info in Stream Koji and Brew, and once installed:

$ rpm -q gnome-remote-desktop
gnome-remote-desktop-40.0-7.el9.x86_64

$ rpm -q --provides gnome-remote-desktop
bundled(libvncserver) = 0.9.13
gnome-remote-desktop = 40.0-7.el9
gnome-remote-desktop(x86-64) = 40.0-7.el9
libvncserver.so.1()(64bit)


Steps to Reproduce:
1. Install gnome-remote-desktop on RHEL9
2. Enable EPEL9
3. Install krfb
4. Run krfb


Actual results:
libvncserver is not installed as a dependency of krfb, and krfb fails to start:

krfb: error while loading shared libraries: libvncserver.so.1: cannot open shared object file: No such file or directory


Expected results:
libvncserver is installed as a dependency of krfb, and krfb starts successfully.


Solution:
The following should be added to gnome-remote-desktop.spec:

%global __provides_exclude_from ^%{_libdir}/%{name}


Other information:
krfb appears to be the only affected package currently in EPEL9, but it's not a flaw in krfb's packaging.  (There are a few similar packages in Fedora that would also be affected if built for EPEL9.)
x11vnc requires not only libvncserver.so.1()(64bit) but also libvncclient.so.1()(64bit), which is also part of the libvncserver package and therefore masks this problem, as would the presence of any other EPEL9 package which requires (only) libvncclient.so.1()(64bit) (namely krdc-libs, libguac-client-vnc, remmina-plugins-vnc).  Perhaps this is the reason this has (AFAICS) not been reported until now, as it seems likely that a user installs both krdc and krfb together with Plasma.

Comment 1 Jonas Ådahl 2023-06-29 13:53:55 UTC
@yselkowi gating is now failing with

package gnome-remote-desktop-40.0-8.el9.x86_64 requires libvncserver.so.1()(64bit), but none of the providers can be installed

any chance you can have a look at why that started to happen? Is

Provides:       bundled(libvncserver) = %{libvncserver_version}

perhaps problematic here?

Comment 2 Yaakov Selkowitz 2023-07-04 00:59:16 UTC
See MR#7.

Comment 15 errata-xmlrpc 2023-11-07 08:37:07 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (gnome-remote-desktop bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2023:6556


Note You need to log in before you can comment on or make changes to this bug.