[Fontconfig] Application startup performance
u-pnrz at aetey.se
u-pnrz at aetey.se
Thu Jan 14 07:18:18 PST 2016
On Thu, Jan 14, 2016 at 02:21:31PM +0000, Nick Alcock wrote:
> I don't know what world you live in, but it's not the same as mine.
> ... cannot rely on end-users doing *anything* like that.
I do not suggest ignoring your world but it is (just like mine) not more
than a part of a bigger one, which has a lot of diversity.
> > Relying on $HOME is a heuristics and is unreliable, there are users who
> > can not (or do not wish!) do any automatic updates there.
> What, there are users who want their fonts list to be out of date? Why?
Let's keep unrelated things separate.
Having fonts easily and efficiently usable, which is the purpose of
fontconfig, is what the users need and wish.
The fact that a "font list" can be "not up to date" is purely an annoying
side effect of the fontconfig actual design/implementation, because the
developers chose to cache things for efficiency, trading off some
The user may not wish to update anything or certain pieces of data under
their $HOME for different reasons, _without_ any relation to fonts.
Some parts of the file tree there can be readonly or very expensive
to update or mess with a local backup system or be under control of a
strict administration policy or something else.
In other words, some users indeed live in a different world than yours,
no pun intended.
Right now we have learned that the current design/implementation
exhibits some problems with either consistency (races), or convenience
(long startup times) and efficiency (lots of i/o operations). That's
why we have got this dicussion.
I suggest giving up on the original attempt to make it more convenient
by hidden cache rebuilds, arguing that this is the underlying reason
for the problems.
The conveniency gain is actually pretty minimal. The users who know
how to copy font files can most often also start a program (click on an
icon?) as well.
The problem is of course the promise made long ago that explicit cache
updates are optional, which is certanly hardcoded into some software. :(
It would be useful to have references which software and when tries
to update the fonts, without knowing to run fc-cache.
Would you name some examples?
More information about the Fontconfig