Date: Thu, 2 Feb 2017 13:54:21 +0100 From: Tijl Coosemans <tijl@FreeBSD.org> To: Alexander Leidinger <Alexander@leidinger.net> Cc: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: Re: svn commit: r433087 - in head/x11-fonts: linux-c6-fontconfig linux-c7-fontconfig Message-ID: <20170202135416.2d390f3a@kalimero.tijl.coosemans.org> In-Reply-To: <20170202100956.Horde.DPu6WjftKqJCtC5OCBpQf6o@webmail.leidinger.net> References: <201702012010.v11KAfjg059841@repo.freebsd.org> <20170202100956.Horde.DPu6WjftKqJCtC5OCBpQf6o@webmail.leidinger.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 02 Feb 2017 10:09:56 +0100 Alexander Leidinger <Alexander@leidinger.net> wrote: > Quoting Tijl Coosemans <tijl@freebsd.org> (from Wed, 1 Feb 2017 > 20:10:41 +0000 (UTC)): >> Author: tijl >> Date: Wed Feb 1 20:10:41 2017 >> New Revision: 433087 >> URL: https://svnweb.freebsd.org/changeset/ports/433087 >> >> Log: >> Generate fontconfig cache on installation. This prevents cache creation >> in every user's home directory when they first run an X11 Linux program. > > The idea behind the previous version was that the linux code doesn't > create it's own cache (to not have to run the linux fc-cache on each > change in the fonts directories) but to use the FreeBSD cache via > fall-through. This only works when the linux fontconfig and the > FreeBSD fontconfig are compatible enough in terms of cache directory > file format. I remember to have updated the linux fontconfig port with > a own hand-rolled linux-version of fontconfig in the past as the > linux_base at that time didn't had a compatible enough fontconfig > version (but I don't remember if the config file was incompatible or > the cache...). > > Could it be that a simple ln of the linux /var/db/fontconfig to the > FreeBSD location would solve this issue without the need to run the > linux fc-cache on each font directory change? The config files aren't fully compatible and the Linux fc-cache prints some errors about that but they can be ignored it seems. The cache files have names ending in -<arch>.cache-<version> where <arch> is le32d4 on i386 and le64 on amd64 and <version> is 7 on FreeBSD, 3 on CentOS 6 and 4 on CentOS 7, so a simple link doesn't work. The commit also doesn't fully solve the problem. The amd64 package only generates le64 cache files so running an i386 Linux program may still create cache files in the user home directory. This also happens when users update their fonts because font ports don't run Linux fc-cache on installation. The only real solution is to build our own Linux fontconfig package using devel/linux-*-devtools.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20170202135416.2d390f3a>