GitgExt introspection hardcodes build-time libgitg-ext.so library path
Upon installing gitg-3.30.1, introspection module imports fail with the following error:
>>> from gi.repository import GitgExt
** (.:20143): WARNING **: 10:32:03.962: Failed to load shared library '/tmp/portage/dev-vcs/gitg-3.30.1/work/gitg-3.30.1-build/libgitg-ext/libgitg-ext-1.0.so.0.0.0' referenced by the typelib: /tmp/portage/dev-vcs/gitg-3.30.1/work/gitg-3.30.1-build/libgitg-ext/libgitg-ext-1.0.so.0.0.0: cannot open shared object file: No such file or directory
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 656, in _load_unlocked
File "<frozen importlib._bootstrap>", line 626, in _load_backward_compatible
File "/usr/lib64/python3.6/site-packages/gi/importer.py", line 146, in load_module
dynamic_module = load_overrides(introspection_module)
File "/usr/lib64/python3.6/site-packages/gi/overrides/__init__.py", line 125, in load_overrides
override_mod = importlib.import_module(override_package_name)
File "/usr/lib64/python3.6/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/usr/lib64/python3.6/site-packages/gi/overrides/GitgExt.py", line 25, in <module>
MessageBus = override(MessageBus)
File "/usr/lib64/python3.6/site-packages/gi/overrides/__init__.py", line 202, in override
assert g_type != TYPE_NONE
AssertionError
I suspect the cause is the following code in libgitg-ext/meson.build:
command: [g_ir_compiler, '--shared-library', libgitg_ext.full_path(), '--includedir', libgitg_build_dir, '--output', '@OUTPUT@', join_paths(meson.current_build_dir(), libgitg_ext_gir_name)],
which causes the command to be run as:
[180/197] /usr/bin/g-ir-compiler --shared-library /tmp/portage/dev-vcs/gitg-3.30.1/work/gitg-3.30.1-build/libgitg/libgitg-1.0.so.0.0.0 --output libgitg/Gitg-1.0.typelib /tmp/portage/dev-vcs/gitg-3.30.1/work/gitg-3.30.1-build/libgitg/Gitg-1.0.gir