Subject: bug#30093: what manual workaround?

From: Carlo Zancanaro <[email-masked]>
Date: Mon, 24 May 2021 10:16:52 +1000

Hi Tomás,

I'm not certain what your problem is, but I've run into problems 
with XDG_DATA_DIRS in the past, and I've added these lines in my 
profile script *before* sourcing any Guix profiles:

    # XDG_DATA_DIRS often starts off empty, but an empty value is
    # interpreted as this value. Loading a profile can set it, 
    though,
    # which effectively ignores the default value. We want it to
    # instead add to the default, so we set it here to the default
    # value.
    if [ -z "$XDG_DATA_DIRS" ]; then
        export XDG_DATA_DIRS="/usr/local/share/:/usr/share/"
    fi

I see you have this line in your profile script:

> export 
> XDG_DATA_DIRS="$GUIX_PROFILE/share:${XDG_DATA_DIRS:-/usr/local/share/:/usr/share/}"

but you call this *after* sourcing the Guix profiles, which means 
if Guix sets XDG_DATA_DIRS then the fallback case (i.e. including 
/usr/local/share and /usr/share) won't have any effect, and the 
default paths (which Ubuntu expects) won't end up in the path.

I'm not as familiar with GI_TYPELIB_PATH, but I think it might 
need something similar with a default value of 
/usr/lib/girepository-1.0 (that's mostly a guess, based on a quick 
search of the internet and my local Ubuntu machine).

I hope that helps!

Carlo