Python bindings for GObject

Edit Package python-gobject

Pygobjects is an extension module for python that gives you access to
GLib's GObjects.

Refresh
Refresh
Source Files
Filename Size Changed
_service 0000000716 716 Bytes
pygobject-3.50.0.obscpio 0003292172 3.14 MB
pygobject.obsinfo 0000000099 99 Bytes
python-gobject.changes 0000106188 104 KB
python-gobject.spec 0000008221 8.03 KB
Comments 11

Christoph Reiter's avatar

What's up with the extra -Gdk package split? The changelog suggests that it's to prevent depending on various X11 related things, but overrides in PyGObject are only active if the respective typelib gets loaded and they don't add a dependency.


Dominique Leuenberger's avatar

The deps is on an RPM level - having typelib(GtK) being pulled in means you get an X-stack for all cases.


Christoph Reiter's avatar

(I'm not that familiar with the rpm/spec sytem)

What does pull in the gtk typelib?. PyGObject does not depend on gtk+, only its test suite those.


Dominique Leuenberger's avatar

e.g. from /usr/lib64/python2.7/site-packages/gi/overrides/Gdk.py

    require_version("GdkX11", Gdk._version)
    from gi.repository import GdkX11

=> that gives a typelib(GdkX11) dependency

hence, not splitting Gdk.py into a sep sub-package makes the entire python[23]-gobject require GTK dependencies


Dominique Leuenberger's avatar

and if you install a headless system (think also containers), you're happy to be able to avoid deps on pango, cairo. gtk, x11


Christoph Reiter's avatar

If you don't use gdk this file never gets executed so it doesn't add a dependency.


Dominique Leuenberger's avatar

RPM has to satisfy its dependencies at install time, not at runtime.


Christoph Reiter's avatar

There is nothing to satisfy as there is no dependency.

anyway, just note that splitting things this way is not supported upstream and you get to keep the bug reports.


Dominique Leuenberger's avatar

If upstream does not get the concept of rpm deps, I honestly do not care - packaging bugs are ours, and upstream would not care for them anyway. This split is understood by us distro maintainers and why know how to deal with it.


Christoph Reiter's avatar

I guess I don't get it. It just seems like added complexity for no gain to me.

Looking at some pygobject apps: pitivi, lollypop, gramps, d-feet don't seem depend on it.


Dominique Leuenberger's avatar

rpm -qRf /usr/lib64/python2.7/site-packages/gi/overrides/Gdk.py

python(abi) = 2.7
python2-gobject = 3.24.1
python2-gobject-cairo = 3.24.1
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsLzma) <= 4.4.6-1
typelib(GObject)
typelib(Gdk)
typelib(GdkX11)
typelib(Gtk)
typelib(Pango)
typelib(cairo)
openSUSE Build Service is sponsored by