Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 17 Aug 2013 12:45:27 -0700
From:      Kevin Oberman <rkoberman@gmail.com>
To:        Steve Kargl <sgk@troutmask.apl.washington.edu>
Cc:        FreeBSD GNOME Users <gnome@freebsd.org>, Tijl Coosemans <tijl@coosemans.org>, FreeBSD Ports ML <freebsd-ports@freebsd.org>
Subject:   Re: fontconfig madness
Message-ID:  <CAN6yY1vm5Bes8Yc_DFYO=JxU4QNtqGWCaWPAHwcg1v=UTjRxbA@mail.gmail.com>
In-Reply-To: <20130817180056.GA70018@troutmask.apl.washington.edu>
References:  <20130812192745.GA80894@troutmask.apl.washington.edu> <20130817114412.44885d21@kalimero.tijl.coosemans.org> <20130817163929.GA69757@troutmask.apl.washington.edu> <CAN6yY1sbnsfgHDCfjh5xX2dcsqvq_4dnpYV3GFCQd7RwO=2K7g@mail.gmail.com> <20130817180056.GA70018@troutmask.apl.washington.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Aug 17, 2013 at 11:00 AM, Steve Kargl <
sgk@troutmask.apl.washington.edu> wrote:

> On Sat, Aug 17, 2013 at 10:02:24AM -0700, Kevin Oberman wrote:
> > On Sat, Aug 17, 2013 at 9:39 AM, Steve Kargl <
> > sgk@troutmask.apl.washington.edu> wrote:
> >
> > > On Sat, Aug 17, 2013 at 11:44:12AM +0200, Tijl Coosemans wrote:
> > > > On Mon, 12 Aug 2013 12:27:45 -0700 Steve Kargl wrote:
> > > > > I upgraded my freebsd-current system to  revision 254098
> > > > > and followed this by deleting all installed ports except
> > > > > pkg.  After rebuilding all ports, it seems fontconfig has
> > > > > lost it mind (or someone made a chnage to where fontconfig
> > > > > thinks it should cache fonts).  Every time I run acroread8
> > > > > to view a pdf file, acroread8 creates a new fontconfig/
> > > > > in the CWD instead of using ~/.fontconfig.  How do I (un)fix
> > > > > whatever was changed?
> > > > >
> > > > > I seem to have the most up-to-date ports.
> > > > >
> > > > > % pkg info | grep fontconf
> > > > > fontconfig-2.10.93,1           An XML-based font configuration API
> for
> > > X Windows
> > > > > linux-f10-fontconfig-2.6.0     An XML-based font configuration API
> for
> > > X Windows (Linux Fedora 10)
> > > > > % pkg version -vl '<' | grep fontconfig
> > > >
> > > > I see this too with every linux program that uses fontconfig.
> > >
> > > After a few hours of poking around, I've believe that I've
> > > narrowed the issue down to a decision by the developers of
> > > fontconfig to deprecate the default location ~/.fontconfig.
> > > I added a /usr/local/etc/fonts/local.conf, which contains
> > >
> > > <cachedir prefix="~">.fontconfig</cachedir>
> > >
> > > to recover the old behavior
> > >
> >
> > Steve,
> >
> > It seems like the term "madness" is entirely appropriate to such a
> change.
> > Is there a commit log that you have found indicating that ti was
> > deliberate? I am at a loss as to why such a change would be made. (I am
> > also at a loss, even after reading all of the discussion, on why Mozilla
> > decided to remove the "automatically load images" preference checkbox, so
> > I'm not ruling anything out.)
> >
>
> I can't find the site where I got this impression of the deprecation.
> It seems that freetype2 wants to enforce the layout from XDG base
> directory specification.  If one looks in /usr/local/etc/fonts/fonts.conf,
> one sees
>
> <!-- Font cache directory list -->
>
>         <cachedir>/var/db/fontconfig</cachedir>
>         <cachedir prefix="xdg">fontconfig</cachedir>
>         <!-- the following element will be removed in the future -->
>         <cachedir>~/.fontconfig</cachedir>
>
> AFAICT, that future is now.
>
> --
> Steve
>

Ahh. I found it and it looks like the behavior you are seeing is not
intended.

*$XDG_CACHE_HOME/fontconfig/*.cache-** and * ~/.fontconfig/*.cache-** is
the conventional repository of font information that isn't found in the
per-directory caches. This file is automatically maintained by fontconfig.
please note that ~/.fontconfig/*.cache-* is deprecated now. it will not be
read by default in the future version.

fontconfig now assumes that users have an *$XDG_CACHE_HOME *where it will
keep its cache. I'm guessing that the conversion has not happened in
FreeBSD because the version of Gnome is older than this change, so when it
does not find it, it uses the cwd. I assume that XDG_CACHE_HOME should be
in .local, but it is not getting defined.

This really should be fixed, one way or another. (Your way works, but
getting the newer, preferred directory defined is probably the right answer.
-- 
R. Kevin Oberman, Network Engineer
E-mail: rkoberman@gmail.com



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAN6yY1vm5Bes8Yc_DFYO=JxU4QNtqGWCaWPAHwcg1v=UTjRxbA>