[csw-maintainers] update-mime-database said: Note that '/opt/csw/share' is not in the search path

Maciej (Matchek) Blizinski maciej at opencsw.org
Tue Mar 9 17:43:34 CET 2010


On Tue, Mar 9, 2010 at 4:30 PM, Philip Brown <phil at bolthole.com> wrote:
> On Tue, Mar 9, 2010 at 12:09 AM, Maciej (Matchek) Blizinski
> <maciej at opencsw.org> wrote:
>> I had a problem in which evince didn't look for the right MIME
>> database when I asked it to display a PDF file.  Running
>> update-mime-database showed:
>>
>> netra ~ # update-mime-database /opt/csw/share/mime
>>
>> Note that '/opt/csw/share' is not in the search path
>> set by the XDG_DATA_HOME and XDG_DATA_DIRS
>> environment variables, so applications may not
>> be able to find it until you set them. The
>> directories currently searched are:
>>
>>
>> - /root/.local/share
>> - /usr/local/share/
>> - /usr/share/
>
> Where do those defaults come from?

Hardcoded in update-mime-database.c.

maciej at build8s [build8s]:~/src/opencsw/pkg/shared-mime-info/trunk >
ggrep -A3 -B3 -r usr/local
work/solaris8-sparc/build-isa-sparcv8/shared-mime-info-0.71/update-mime-database.c

        env = getenv("XDG_DATA_DIRS");
        if (!env)
                env = "/usr/local/share/"PATH_SEPARATOR"/usr/share/";
        dirs = g_strsplit(env, PATH_SEPARATOR, 0);
        g_return_if_fail(dirs != NULL);
        for (n = 0; dirs[n]; n++)

I don't think that the values hardcoded in update-mime-database.d are
propagated to client applications.

>>
>>
>> After setting XDG_DATA_DIRS to /opt/csw/share, evince started showing
>> PDF documents.  What is our way of handling it?  Have the users
>> configure the XDG_DATA_DIRS variable for themselves?  Embed this
>> setting in each application?  Any other way?
>
>
> ideally, we find an underlying core related library that has the
> defaults compiled in, and patch it.

That was what I was thinking too.  The question is which library that
is.  libxdg_basedir?  Sounds plausible, but evince doesn't use it.

>>The base problem is that I don't know how exactly
>>this resolution is working in evince.
>
> GDB is your friend?  :-}

Did you mean: xdb? ;-)


More information about the maintainers mailing list