I took a look at which package or service might be setting GI_TYPELIB_PATH.
xterm and fluxbox don't use wrap-program, so probably not those.
gdm uses glib-or-gtk-build-system, which has a glib-or-gtk-wrap phase,
which wraps programs, setting various environment variables.
It should probably be disabled in this case. I don't know if GDM uses
GI_TYPELIB_PATH. If it does, somehow GDM must still find the right
typelibs without setting GI_TYPELIB_PATH ... Or maybe it could simply
unset GI_TYPELIB_PATH between fork(...) and exec(...)? (Requires source