Bug 1655511

Summary: gtk-vnc-python bindings are missing, as they never existed
Product: [Fedora] Fedora Reporter: customercare
Component: gtk-vncAssignee: Daniel Berrangé <berrange>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 28CC: berrange
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-12-03 11:03:05 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description customercare 2018-12-03 10:41:34 UTC
Description of problem:

* This broke a existing and important Xen-Tool *

Under F27 we had:

http://dl.fedoraproject.org/pub/fedora/linux/releases/27/Everything/x86_64/os/Packages/g/gtk-vnc-python-0.7.1-3.fc27.x86_64.rpm

but for F28 it's not existing and no replacement afaik. 

This broke the python based OpenXenManager, the foss management panel for Xen-Installations.

This package is not listed on koji, but as you can see, it was in F27, so, where is it gone? Is there a replacement package? Will it be back?


Workaround: 

rpm -i --force --nodeps http://dl.fedoraproject.org/pub/fedora/linux/releases/27/Everything/x86_64/os/Packages/g/gtk-vnc-python-0.7.1-3.fc27.x86_64.rpm

works again.

Comment 1 Daniel Berrangé 2018-12-03 11:03:05 UTC
GTK libraries stopped needing manually written python bindings a long time ago now. Instead apps should access GTK based APIs via the GObject Introspection framework.

The manual python bindings for GTK-VNC only ever worked for the GTK2 in combination with Python 2. Using GTK3 or Python3 always needed GObject Introspection.  

We're moving towards dropping GTK2 support & stopping building Python2 was a first step as Python2 itself is nearly end of life and nothing in Fedora required these bindings.

For an example of how to use GObject Introspection see the example program:

  https://gitlab.gnome.org/GNOME/gtk-vnc/blob/master/examples/gvncviewer.py

OpenXenmanager will need to switch to using using GObject Introspection, and also to use GTK3 if it wants to be future proof for Fedora 30 where GTK2 support will likely be gone from GTK-VNC forever.