python: Fix using overrides when not building PyGObject
Since 547570cd we do not always build PyGObject and our development environment is broken when trying to use GStreamer python when built against system PyGObject with the following error importing Gst in there:
12345678** (gst-plugin-scanner:710617): CRITICAL **: 11:45:02.343: can't find gi.repository.Gst
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/gi/repository/__init__.py", line 23, in <module>
from ..importer import DynamicImporter
File "/usr/lib64/python3.9/site-packages/gi/importer.py", line 33, in <module>
from .overrides import load_overrides
ImportError: cannot import name 'load_overrides' from 'gi.overrides' (/var/home/thiblahute/devel/gstreamer/gstreamer/subprojects/gst-editing-services/bindings/python/gi/overrides/__init__.py)
Factory Details:
The approach to fixing it is to implement override gi
in
gst-python/gi/
which we add to PYTHONPATH
) and in there reset the
gi
module to the right place and we get overrides from paths from
_GI_OVERRIDES_PATH
we set in gst-env.py
which points to all the
overrides that will be installed.
Edited by Thibault Saunier