Bug#1118496: eom: not compatible with pygobject >= 3.52

Simon McVittie smcv at debian.org
Tue Oct 21 12:33:11 BST 2025


Package: eom
Version: 1.26.1-1
Severity: important
Tags: patch upstream
X-Debbugs-Cc: pygobject at packages.debian.org
Control: block 1118363 by -1

pygobject >= 3.52 (available in experimental) has switched from 
libgirepository-1.0 to libgirepository-2.0 as its way to access GObject 
libraries such as GTK.

libgirepository-1.0 and libgirepository-2.0 can be installed on the same 
system, but they cannot both be used within the same process, because 
they both register a GObject type named "GIRepository". This means that 
pygobject, libpeas, and apps like eom all need to agree on which version 
they are going to use.

As a result we need to do a coordinated transition from:

    pygobject 3.50.x
    older libpeas
    older pygobject-dependent apps

to:

    pygobject >= 3.52
    libpeas >= 1.36.0-6~
    newer pygobject-dependent apps

The symptom is that if you start eom on a system that has the versions of 
pygobject and libpeas from experimental:

    sudo apt install libgirepository-2.0-0 eom
    sudo apt install python3-gi{,-cairo}/experimental libpeas-1.0-0/experimental gir1.2-peas-1.0/experimental
    eom

it won't start, with messages similar to those below:

>(eom:14104): EOM-WARNING **: 12:13:03.157: Error loading Peas typelib: Typelib file for namespace 'GIRepository', version '3.0' not found
>(eom:14104): EOM-WARNING **: 12:13:03.167: Error loading PeasGtk typelib: Typelib file for namespace 'GIRepository', version '3.0' not found
>(eom:14104): GLib-GObject-CRITICAL **: 12:13:03.168: cannot register existing type 'GIRepository'
>(eom:14104): GLib-CRITICAL **: 12:13:03.168: g_once_init_leave_pointer: assertion 'result != 0' failed
>(eom:14104): GLib-GObject-CRITICAL **: 12:13:03.168: g_object_new_with_properties: assertion 'G_TYPE_IS_OBJECT (object_type)' failed
>(eom:14104): GLib-GObject-CRITICAL **: 12:13:03.168: g_object_add_weak_pointer: assertion 'G_IS_OBJECT (object)' failed
>(eom:14104): GLib-CRITICAL **: 12:13:03.168: g_once_init_leave: assertion 'result != 0' failed
>(eom:14104): GLib-GObject-CRITICAL **: 12:13:03.168: g_object_ref: assertion 'G_IS_OBJECT (object)' failed

For GNOME apps, a similar issue is fixed in the latest experimental 
uploads of eog, gedit, rhythmbox and totem, but now we need to do the 
same for non-GNOME apps as well.

To resolve this in experimental, please apply the attached patches and 
upload to experimental (or the GNOME team can NMU this for you if 
required, please let us know). Do not upload to unstable at this stage: 
it will not work.

For your convenience the patches are also available from:

    git fetch https://salsa.debian.org/smcv/eom.git wip/smcv/libgirepository-2.0

and I will update that location with the bug number when I receive it. 
I'd have sent a merge request, but they are not currently enabled for 
this package's git repo.

After we get a transition slot from the release team, we will need to 
include eom in a coordinated upload to unstable of pygobject, libpeas 
and several affected apps. Again, this can either be a maintainer upload 
or an NMU.

(The patch to the upstream source was taken from Fedora, which has 
already done the equivalent of this transition; thanks to Leigh Scott.)

Thanks,
    smcv
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Build-with-a-libpeas-that-uses-libgirepository-2.0.patch
Type: text/x-diff
Size: 4637 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-gnome-maintainers/attachments/20251021/e0e95f57/attachment.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Update-changelog.patch
Type: text/x-diff
Size: 818 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-gnome-maintainers/attachments/20251021/e0e95f57/attachment-0001.patch>


More information about the pkg-gnome-maintainers mailing list