Dear all,
As some of you may know, after more than a month of consultation, feedback and tweaking new font packaging guidelines have been approved by FESCO.
http://fedoraproject.org/wiki/PackagingDrafts/Fonts_packaging_automation_(20...) http://fedoraproject.org/wiki/Fedora_fonts_policy_package http://fedoraproject.org/wiki/Simple_fonts_spec_template http://fedoraproject.org/wiki/Fonts_spec_template_for_multiple_fonts
New font packages in review must now conform to the new templates, and current packages be converted in rawhide by their maintainers. To track the conversion progress I will henceforth file tickets in bugzilla.
The following packages have already been converted in rawhide and can serve as examples if the templates in the fontpackages-devel package are not clear enough:
❄ andika-fonts ❄ apanov-heuristica-fonts ❄ bitstream-vera-fonts ❄ charis-fonts ❄ dejavu-fonts ❄ ecolier-court-fonts ❄ edrip-fonts ❄ gfs-ambrosia-fonts ❄ gfs-artemisia-fonts ❄ gfs-baskerville-fonts ❄ gfs-bodoni-classic-fonts ❄ gfs-bodoni-fonts ❄ gfs-complutum-fonts ❄ gfs-didot-classic-fonts ❄ gfs-didot-fonts ❄ gfs-eustace-fonts ❄ gfs-fleischman-fonts ❄ gfs-garaldus-fonts ❄ gfs-gazis-fonts ❄ gfs-jackson-fonts ❄ gfs-neohellenic-fonts ❄ gfs-nicefore-fonts ❄ gfs-olga-fonts ❄ gfs-porson-fonts ❄ gfs-solomos-fonts ❄ gfs-theokritos-fonts ❄ stix-fonts ❄ yanone-kaffeesatz-fonts
Note that the discussed renames and splits have not been submitted for approval yet (I'm waiting for the rename process to be clarified), so the current change is purely technical.
Nevertheless the new templates make creation of sub-packages considerably easier and safer, so I advice packagers to perform a split by family now if they don't mind. There was a broad consensus for the splitting in general, and the only thing that remains to be clarified before submission FPC-side is the wording of the few exceptions.
Sincerely,
On Sat, Dec 20, 2008 at 05:13:35PM +0100, Nicolas Mailhot wrote:
Dear all,
As some of you may know, after more than a month of consultation, feedback and tweaking new font packaging guidelines have been approved by FESCO.
http://fedoraproject.org/wiki/PackagingDrafts/Fonts_packaging_automation_(20...) http://fedoraproject.org/wiki/Fedora_fonts_policy_package http://fedoraproject.org/wiki/Simple_fonts_spec_template http://fedoraproject.org/wiki/Fonts_spec_template_for_multiple_fonts
New font packages in review must now conform to the new templates, and current packages be converted in rawhide by their maintainers. To track the conversion progress I will henceforth file tickets in bugzilla.
Hello,
Two of my packages are TeX fonts (tetex-font-kerkis and tetex-font-cm-lgc), which contain .pfb files (postscript type 1 from what I could find out).
My questions are: - Should I place the .pfb files ( e.g. /usr/share/texmf/fonts/type1/kerkis/Kerkis-Bold.pfb) in /usr/share/fonts/kerkis/ and symlink them to their old (original) place or the reverse. - What about the other TeX relevant files? Should I do something with them or are they indifferent to the rest of the system.
If there is an example TeX font package switched to the new format, it is not obvious from the package names.
Please advise.
Thanks,
-- Sarantis
Le lundi 22 décembre 2008 à 14:56 +0200, Sarantis Paskalis a écrit :
On Sat, Dec 20, 2008 at 05:13:35PM +0100, Nicolas Mailhot wrote:
Hi Sarantis,
As some of you may know, after more than a month of consultation, feedback and tweaking new font packaging guidelines have been approved by FESCO.
Two of my packages are TeX fonts (tetex-font-kerkis and tetex-font-cm-lgc), which contain .pfb files (postscript type 1 from what I could find out).
We've known for quite a while TEX had a problem with fonts installation and licensing. However repoquery unearthed many non-font packages that shipped fonts (not only TEX packages, and a lot more than I expected :(), so I'm going to write a general answer if you permit.
1. The target font management stack on Fedora is fontconfig. It has “near universal” support including emacs-side¹.
2. If your app is fontconfig-aware you just need to package the fonts it needs as a normal guidelines-compliant font package. Fontconfig will then locate them for your app no matter on how the font files are named or renamed.
3. If your app is not fontconfig-aware, you should politely remind your upstream it has a problem.
4. If your app is not fontconfig-aware, and there is no solution upstream in the short term, you still need to package the fonts using the normal Fedora fonts packaging guidelines. And then either patch your app to look for its fonts in the guidelines-compliant location or package a set of symlinks pointing to this location.
5. The preferred way to package fonts is to locate their original font upstream and package the original font release in a separate fonts-only package.
6. However, for fonts that are bundled in a software package with no other form of release, or fonts which have some additional non-standard stuff bundled with them (such as TEX packages), I don't think anyone will complain too loudly if you package them as subpackage(s) of your main package. As long as the subpackage(s) are clean, guidelines-compliant, and can be used by Fedora users without dragging with them your app or TEX or other non-general-purpose stuff.
For example, for a “tex-foo” TEX package, you could have:
tex-foo-fonts-fontname1 (normal font subpackage #1) tex-foo-fonts-fontname2 (normal font subpackage #2) […] tex-foo-fonts-common (common font subpackage that owns the fonts dirs and the fonts-licensing files²) tex-foo (main TEX package that depends on the tex-foo-fonts packages, includes symlinks to the font files in standard locations and other TEX stuff)
The subpackaging logic is pretty much the same as in the spectemplate-fonts-multi.spec template included in fontpackages-devel http://fedoraproject.org/wiki/Fonts_spec_template_for_multiple_fonts
Please note that the current guidelines say that font packagers: “SHOULD package each font family separately, and avoid font collections that mix fonts of different history, licensing, or origin”³
There is some wiggle room between SHOULD and MUST, and it has posed problems in the past six months, so I've pushed the simpler http://fedoraproject.org/wiki/PackagingDrafts/Font_package_splitting_rules_(... FPC-side yesterday.
I hope that answers all your questions.
¹ After a period of “‘utter luddites’ shock” to quote a well-known xorg contributor http://thread.gmane.org/gmane.comp.freedesktop.xorg/34322/focus=34334
² of course if you're shipping a single font family, that requires a single font subpackage, there's no need to separate directory and licensing handling in a -common subpackage. Just create a single tex-foo-fonts-fontname in that case.
³ http://fedoraproject.org/wiki/Packaging/Guidelines#Avoid_bundling_of_fonts_i...
Sincerely,
Le lundi 22 décembre 2008 à 15:08 +0100, Nicolas Mailhot a écrit :
Le lundi 22 décembre 2008 à 14:56 +0200, Sarantis Paskalis a écrit :
On Sat, Dec 20, 2008 at 05:13:35PM +0100, Nicolas Mailhot wrote:
Hi Sarantis,
- However, for fonts that are bundled in a software package with no
other form of release, or fonts which have some additional non-standard stuff bundled with them (such as TEX packages), I don't think anyone will complain too loudly if you package them as subpackage(s) of your main package. As long as the subpackage(s) are clean, guidelines-compliant, and can be used by Fedora users without dragging with them your app or TEX or other non-general-purpose stuff.
For example, for a “tex-foo” TEX package, you could have:
tex-foo-fonts-fontname1 (normal font subpackage #1) tex-foo-fonts-fontname2 (normal font subpackage #2) […] tex-foo-fonts-common (common font subpackage that owns the fonts dirs and the fonts-licensing files²) tex-foo (main TEX package that depends on the tex-foo-fonts packages, includes symlinks to the font files in standard locations and other TEX stuff)
The subpackaging logic is pretty much the same as in the spectemplate-fonts-multi.spec template included in fontpackages-devel http://fedoraproject.org/wiki/Fonts_spec_template_for_multiple_fonts
Also, I'm pretty sure the other TEX packagers would be delighted if someone documented this stuff from the TEX POW.
On Mon, Dec 22, 2008 at 03:08:21PM +0100, Nicolas Mailhot wrote:
Le lundi 22 décembre 2008 à 14:56 +0200, Sarantis Paskalis a écrit :
On Sat, Dec 20, 2008 at 05:13:35PM +0100, Nicolas Mailhot wrote:
Hi Sarantis,
As some of you may know, after more than a month of consultation, feedback and tweaking new font packaging guidelines have been approved by FESCO.
Two of my packages are TeX fonts (tetex-font-kerkis and tetex-font-cm-lgc), which contain .pfb files (postscript type 1 from what I could find out).
We've known for quite a while TEX had a problem with fonts installation and licensing. However repoquery unearthed many non-font packages that shipped fonts (not only TEX packages, and a lot more than I expected :(), so I'm going to write a general answer if you permit.
- The target font management stack on Fedora is fontconfig. It has
“near universal” support including emacs-side¹.
- If your app is fontconfig-aware you just need to package the fonts it
needs as a normal guidelines-compliant font package. Fontconfig will then locate them for your app no matter on how the font files are named or renamed.
- If your app is not fontconfig-aware, you should politely remind your
upstream it has a problem.
- If your app is not fontconfig-aware, and there is no solution
upstream in the short term, you still need to package the fonts using the normal Fedora fonts packaging guidelines. And then either patch your app to look for its fonts in the guidelines-compliant location or package a set of symlinks pointing to this location.
- The preferred way to package fonts is to locate their original font
upstream and package the original font release in a separate fonts-only package.
- However, for fonts that are bundled in a software package with no
other form of release, or fonts which have some additional non-standard stuff bundled with them (such as TEX packages), I don't think anyone will complain too loudly if you package them as subpackage(s) of your main package. As long as the subpackage(s) are clean, guidelines-compliant, and can be used by Fedora users without dragging with them your app or TEX or other non-general-purpose stuff.
For example, for a “tex-foo” TEX package, you could have:
tex-foo-fonts-fontname1 (normal font subpackage #1) tex-foo-fonts-fontname2 (normal font subpackage #2) […] tex-foo-fonts-common (common font subpackage that owns the fonts dirs and the fonts-licensing files²) tex-foo (main TEX package that depends on the tex-foo-fonts packages, includes symlinks to the font files in standard locations and other TEX stuff)
The subpackaging logic is pretty much the same as in the spectemplate-fonts-multi.spec template included in fontpackages-devel http://fedoraproject.org/wiki/Fonts_spec_template_for_multiple_fonts
Please note that the current guidelines say that font packagers: “SHOULD package each font family separately, and avoid font collections that mix fonts of different history, licensing, or origin”³
There is some wiggle room between SHOULD and MUST, and it has posed problems in the past six months, so I've pushed the simpler http://fedoraproject.org/wiki/PackagingDrafts/Font_package_splitting_rules_(... FPC-side yesterday.
I hope that answers all your questions.
¹ After a period of “‘utter luddites’ shock” to quote a well-known xorg contributor http://thread.gmane.org/gmane.comp.freedesktop.xorg/34322/focus=34334
² of course if you're shipping a single font family, that requires a single font subpackage, there's no need to separate directory and licensing handling in a -common subpackage. Just create a single tex-foo-fonts-fontname in that case.
³ http://fedoraproject.org/wiki/Packaging/Guidelines#Avoid_bundling_of_fonts_i...
Thanks for the really detailed guidelines. My packages are just TeX fonts (and their TeX related configuration), so my actions boil down to moving the actual font files under /usr/share/fonts and symlink them to their original directory.
(I also have to rename the package but that is orthogonal to fonts and more related to TeX stuff after tetex EOL.)
Thanks again,
-- Sarantis
Dear all,
To help people deal with the new fonts guidelines, I've added the following FAQ to the wiki:
http://fedoraproject.org/wiki/Shipping_fonts_in_other_packages_(FAQ)
Feel free to complete it (or request additions)
Regards,