Detailed Description

Since the Fonts special interest group was created rules on the legal and technical aspects have been progressively written and refined. Thanks to the fine Fedora review process they've mostly been applied to font packages created since.

However a lot of pre-existing font packages have never been changed to conform to those rules, and packagers that shipped fonts as part of some other whole have largely ignored them. Targeted licensing or packaging audits happened, but never distribution-wide.

The aim of this Feature is to clean up the cruft and try to make sure we follow our own packaging guidelines.

Benefit to Fedora

purging the distribution of fonts we distribute under unclear, inappropriate[2] or plain unlawful[3] licensing conditions.

exposing all our fonts in our primary font system, fontconfig. It is unacceptable that years after fontconfig was generalised some fonts are still segregated inside apps, especially since the packaging of many of them was requested by users meanwhile. Just making sure existing Fedora fonts are properly exposed in fontconfig would increase our user-visible font offering tremendously.

fixing all the packaging bugs which have been introduced by the free-form variations on fontconfig scriptlets our packagers have unfortunately been fond of in the past. The new guidelines are much more rigid and only allow the exact pattern our fontconfig maintainer approved.

clearly signalling upstreams what our target font system is so they stop procrastinating and clinging to brittle marginal font resolution systems that increase our maintenance burden.

reducing our spin, mirror and bandwidth requirements, by identifying and removing the unnecessary duplication of the same big font files in multiple packages[4].

cleanly separating each font family in a specific package, to present users a uniform font selection granularity and stop forcing the installation of unrelated material just to get a particular font.

presenting users consistent discoverable font package names.

preparing for Features/AutomaticFontInstallation and increasing its effectiveness. Having the infrastructure to perform automatic font installation is useless without a pool of clean font packages to install. Features/AutomaticFontInstallation will require rebuilding of font packages to add autoinstall-related metadata. This can only be automated if the font packages are sane in the first place.

removing new packager uncertainty by exposing them to a pool of consistent packages.

sensitising non-fonts packagers to the constraints induced by the fonts they ship.

Check that the fontconfig rules packagers wrote are sane, do not substitute their font to unrelated ones in fontconfig-aware apps such as firefox, and do not pre-empt better fonts for a particular locale (especially for unicode blocks shared by multiple scripts, typically CJK locales).

Check a clean install works fine too, and that no spin references a font package name that will disappear in Fedora 11.

Check the problems in the bugzilla tracker are properly taken care of, and add new entries if necessary[6]

User Experience

Pros:

users will (hopefully) notice a much larger font complement in applications, with more flexible installation possibilities.

more fonts we do not provide will be substituted properly.

the need for third-party sites advising to install other fonts outside Fedora packages will diminish.

Cons:

kickstart files and other howtos and third party scripts that reference our old package names will need to be updated.

it is a large change, even with lots of QA some new problems are likely to make it to the final release

many fonts that were left to rot in peace inside obscure applications will now be exposed to a larger public, who is bound to identify new problems.

Dependencies

The changes are spread over more than a hundred of existing source packages. They range from trivial (changing a font package dependency name), easy (adapting a recent guidelines-compliant package to the latest guidelines changes) and hard (untangling packages which have accumulated many fonts without installing them in the proper place, and without checking their licensing properly[7]).

They can only be performed in a distributed manner by each packager with a QA team checking no big mistakes are made.

The completion of this feature is thus dependant on the goodwill of every packager dealing with fonts in the distribution. It is unfortunately probable some of them will decide they're not concerned, and will hamper the change by not cleaning up their font dependencies or font installation.

Contingency Plan

None needed. The effectiveness of this feature does depend on the number of packages changed, and it would be better for Fedora and its derivatives if those changes were cleanly concentrated in a single release cycle, but continuing it the next cycle is not a technical problem.

Release Notes

Fedora font packages underwent a massive reorganisation for Fedora 11. Many pre-existing font packages have been renamed or split. Fonts are now systematically exposed in fontconfig the primary Fedora font system.

You should now have access to more fonts in Fedora, with a font-family granularity, both in the installer and in applications.

As usual the complete list of font package changes and additions is available here.