Re: omitting collection-fontsextra installation by default? (RFC)

Karl Berry <[email protected]> Wed, 22 Jul 2026 15:00:33 -0600
Newsgroups gmane.comp.tex.live
Message-ID <[email protected]>
Hi Eric - thanks for the note. Here's what I see:

1) Package rsfs (the fonts) is part of collection-fontsrecommended, not
c-fontsextra. I would hope that Arch does(did) not omit c-fontsrecommended.

2) mathrsfs.sty (the latex file) is part of TL package jknapltx, not its
own package.  This is unfortunate (as are the random file names in
jknapltx, but that's history), but it's not likely to change.

3) jknapltx is already part of c-latexrecommended.

Anyway, I added an explicit dependency to package rsfs for package
jknapltx (r79739).  I doubt this will make any difference to Arch, but
that's the only change I could see to make at present.

   I suggest is to just add only the fonts that a collection needs to
   that collection.

It would be nice. Unfortunately, it is essentially impossible to ensure
that a collection is closed wrt dependencies. There is no feasible way I
know of to automatically determine dependencies.  Furthermore, many
packages load a particular font only if they are given an option. If all
those optional fonts were also included, I surmise it would end up being
everything.

For native TL, the best solution would be to have some sort of dynamic
package loading a la miktex. Implementing that is not going to happen
any time soon, if ever (https://puszcza.gnu.org.ua/bugs/?668#comment0).
Although that, I imagine, wouldn't help with distro TeX installations
anyway.

The only other definite solution I know of is simply to install
everything, which is presumably what you were (understandably) trying to
avoid in the first place.

    The only potential problem I see is some kind of conflict if a package
    is in two collections.  But that shouldn't be a problem.

It is fundamental to the TL infrastructure implementation that every
package is in exactly one collection. Not 0, and not 2 or more.

In any case, for similar reasons advanced by other folks, I've already
concluded that TL should not change its default of "install everything".

Thanks again for writing. --karl