diff -Nru gi.orig/module.py gi/module.py
--- gi.orig/module.py
+++ gi/module.py
@@ -23,6 +23,7 @@
 from __future__ import absolute_import
 
 import os
+import sys
 from . import _glib, _gobject
 try:
     maketrans = ''.maketrans
@@ -216,11 +217,21 @@ class DynamicModule(object):
         self._overrides_module = None
         self.__path__ = None
 
+    def _fix_overrides_path(self):
+        gi.overrides.__path__ = [gi.overrides.__path__[0]]
+        for pythondir in sys.path:
+            if not pythondir:
+                continue
+            odir = os.path.join(pythondir, 'gi', 'overrides')
+            if odir not in gi.overrides.__path__:
+                gi.overrides.__path__.append(os.path.join(pythondir, 'gi', 'overrides'))
+
     def _load(self):
         version = gi.get_required_version(self._namespace)
         self._introspection_module = IntrospectionModule(self._namespace,
                                                          version)
 
+        self._fix_overrides_path()
         overrides_modules = __import__('gi.overrides', fromlist=[self._namespace])
         self._overrides_module = getattr(overrides_modules, self._namespace, None)
         self.__path__ = repository.get_typelib_path(self._namespace)
