Bug 477427 - Please convert to new font packaging guidelines
Summary: Please convert to new font packaging guidelines
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: moodle
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Gwyn Ciesla
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 477408
Blocks: F11-new-font-rules
TreeView+ depends on / blocked
 
Reported: 2008-12-21 00:34 UTC by Nicolas Mailhot
Modified: 2009-01-28 14:06 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-01-28 14:06:00 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Nicolas Mailhot 2008-12-21 00:34:20 UTC
This bug has been filed because we've detected your package includes one or several font files:                                                                                                                                                             repoquery -C --repoid=rawhide -f '*.ttf' -f '*.otf' -f '*.pfb' -f '*.pfa' --qf='%{SOURCERPM}\n' |sed -e 's+-[0-9.-]*\.fc[123456789]\(.*\)src.rpm++g'|sort|uniq                                                                                                                                                             Unfortunately the script does not detect symlinks to other packages, so if that's your case, you can close this bug report now.                                                                                                                                                              Otherwise, you should know that:                                                                                                                                                              - Fedora guidelines demand the packaging of fonts in a separate package or subpackage: http://fedoraproject.org/wiki/Packaging/Guidelines#Avoid_bundling_of_fonts_in_other_packages                                                                                - our font packaging guidelines recently changed, and every package that ships fonts must be adapted to the new templates available in the fontpackages-devel package. http://fedoraproject.org/wiki/PackagingDrafts/Fonts_packaging_automation_(2008-11-18) 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                                                                                                                                                              Please make your package conform to the current guidelines in rawhide.                                                                                                                                                             If your package is not principaly a font package, depending on a separate font package or subpackage is the prefered solution. If your application does not use fontconfig you can always package symlinks to the files provided by the font package and installed in the correct fontconfig directories.                                                                                                                                                              It is preferred to make a font package or subpackage per font family, though it is not currently a hard guidelines requirement (it may become before Fedora 11 is released). The definition of a font family is given on http://fedoraproject.org/wiki/Fonts_spec_template_notes/font-family                                                                                                                                                              The new templates should make the creation of font subpackages easy and safe.                                                                                                                                                              The following packages have already been converted and can serve as examples: - 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                                                                                                                                                           If you have any remaining questions about the new guidelines please ask them on fedora-fonts-list at redhat.com

Comment 1 Nicolas Mailhot 2008-12-21 00:56:30 UTC
[Since the bot made a mess of the text here it is again in properly indented form.]

This bug has been filed because we've detected your package includes one or several font files:

repoquery -C --repoid=rawhide -f '*.ttf' -f '*.otf' -f '*.pfb' -f '*.pfa' --qf='%{SOURCERPM}\n' |sed -e 's+-[0-9.-]*\.fc[123456789]\(.*\)src.rpm++g'|sort|uniq

Unfortunately this script does not detect symlinks to other packages, so if that's your case, you can close this bug report now.

Otherwise, you should know that:

— Fedora guidelines demand the packaging of fonts in a separate package (or subpackage):
http://fedoraproject.org/wiki/Packaging/Guidelines#Avoid_bundling_of_fonts_in_other_packages

— our font packaging guidelines recently changed, and every package that ships fonts must be adapted to the new templates available in the fontpackages-devel package:
  – http://fedoraproject.org/wiki/PackagingDrafts/Fonts_packaging_automation_(2008-11-18)
  – http://fedoraproject.org/wiki/Fedora_fonts_policy_packagehttp://fedoraproject.org/wiki/Simple_fonts_spec_templatehttp://fedoraproject.org/wiki/Fonts_spec_template_for_multiple_fonts

Please make your package conform to the current guidelines in rawhide (you can use the fontpackages package in F9 or F10 to test, but only submit changes to rawhide please).

If your package is not principaly a font package, depending on a separate font package or subpackage is the prefered solution. If your application does not use fontconfig you can always package symlinks to the files provided by the font package and installed in the correct fontconfig directories.

It is preferred to create a font package or subpackage per font family, though it is not currently a hard guidelines requirement (it may become before Fedora 11 is released). The definition of a font family is given on:
http://fedoraproject.org/wiki/Fonts_spec_template_notes/font-family

The new templates should make the creation of font subpackages easy and safe.

The following packages have already been converted by their packager and can serve as examples:
❄ 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

If you have any remaining questions about the new guidelines please ask them on:
fedora-fonts-list at redhat.com

Comment 2 Gwyn Ciesla 2008-12-31 16:35:54 UTC
Moodle's fonts are these:

./lang/sm_utf8/fonts/default.ttf
./lang/km_utf8/fonts/default.ttf
./lang/to_utf8/fonts/default.ttf
./lib/default.ttf


The first three are already in language pack subpackages, and the last is apparently custom and not provided elsewhere, AFAICT.  It's also only 503k.  I understand and support both the new font guidelines and the reasons for them, but is a subpackage really the best solution here?  If it were more fonts, I'd just do it, but I question the utility for one file.

Would it be sufficient for me to document my reasoning in the spec and close the bug?

Comment 3 Nicolas Mailhot 2009-01-02 14:45:40 UTC
Given the number of problem packages I'll try to get a nagbot sending warnings about misplaces fonts so it'll be more hassle for you not to convert (I think)

And 503k is already as big as many of our small packages

Comment 4 Gwyn Ciesla 2009-01-02 14:56:10 UTC
So one subpackage for the /lib/default.ttf, or one each for the ones in the langpacks as well?

Comment 5 Nicolas Mailhot 2009-01-03 09:22:05 UTC
Ideally, one per font family. It's not an obligation yet, but the obligation text is already in FPC's queue.

But do check with upstream the font origin and licensing. It may be they're not all licensed in a Fedora-compatible way, or that they're already packaged somewhere else.

Comment 7 Gwyn Ciesla 2009-01-05 14:57:20 UTC
So are you proposing:

moodle
moodle-fonts
<snip>
moodle-sm
moodle-sm-fonts
moodle-km
moodle-km-fonts
moodle-to
moodle-to-fonts

?  This is acceptable to me, if that's what you mean.

Putting them all into one -fonts would mean that every installation would require any language that included fonts, which is highly broken. Maybe I'm misunderstanding.

Comment 8 Nicolas Mailhot 2009-01-05 20:42:42 UTC
Actually, I think you can simplify your problem considerably.

Opening a few moodle fonts in the gnome font preview/in fontforge shows they are either arial narrow (not OK for Fedora licensing wise) or a khmerOS font (already packaged separately)

So I suggest you just check each font, see if it's legit for Fedora or already packaged, and report back if you actually find a font in moodle we can ship which is not already packaged somewhere else

BTW it's also a good idea to notify upstream they are shipping dubious material licensing-wise

Just shows this font audit was really needed :(

Comment 9 Gwyn Ciesla 2009-01-06 14:26:15 UTC
Here's what I found:

./lang/km_utf8/fonts/default.ttf
Packaged in khmeros-fonts-base, can be symlinked and required.

./lang/sm_utf8/fonts/default.ttf
./lang/to_utf8/fonts/default.ttf
Arial Narrow, not OK.  I can modify the source to strip this out, and then symlink to something, what would be a good replacement? 
I'll then notify upstream.

./lib/default.ttf - FreeSans - Copyleft, can be subpackaged, but it might be packaged already, what's a good way to check?

Comment 10 Nicolas Mailhot 2009-01-06 16:09:12 UTC
(In reply to comment #9)
> Here's what I found:
> 
> ./lang/km_utf8/fonts/default.ttf
> Packaged in khmeros-fonts-base, can be symlinked and required.

But make sure that the  khmeros-fonts packager converted to the new guidelines first

> ./lang/sm_utf8/fonts/default.ttf
> ./lang/to_utf8/fonts/default.ttf
> Arial Narrow, not OK.  I can modify the source to strip this out, and then
> symlink to something, what would be a good replacement? 
> I'll then notify upstream.

No idea, maybe ask Jens Petersen?

> ./lib/default.ttf - FreeSans - Copyleft, can be subpackaged, but it might be
> packaged already, what's a good way to check?

Is in the freefonts package, but it's better to require a dejavu variant when an app just wants a generic font without specific style needs.

Comment 11 Nicolas Mailhot 2009-01-07 23:09:25 UTC
(In reply to comment #10)
> (In reply to comment #9)

> > ./lang/sm_utf8/fonts/default.ttf
> > ./lang/to_utf8/fonts/default.ttf
> > Arial Narrow, not OK.  I can modify the source to strip this out, and then
> > symlink to something, what would be a good replacement? 
> > I'll then notify upstream.
> 
> No idea, maybe ask Jens Petersen?

In fact Tongan and Samoan are already 100% covered by Dejavu (all families), so this is not only illegal, but totally unecesary

Comment 12 Gwyn Ciesla 2009-01-08 15:39:44 UTC
Ok, I'll check out the khmeros-fonts packaging, and use freefont.

WRT ArialNarrow->Dejavu, how do I know which font file to use?

Comment 13 Nicolas Mailhot 2009-01-08 19:39:42 UTC
Just drop all fonts in the tongan and samoan packages, and use dejavu sans as the default app font

Comment 14 Gwyn Ciesla 2009-01-08 22:22:49 UTC
Waiting on 477408 for khmeros-fonts.  I'll work on the rest in the mean time.

Comment 15 Nicolas Mailhot 2009-01-11 15:19:57 UTC
To help packagers manage the transition to the new guidelines, we've published the following FAQ

http://fedoraproject.org/wiki/Shipping_fonts_in_other_packages_(FAQ)

Comment 16 Nicolas Mailhot 2009-01-14 18:37:34 UTC
FPC approved those two additional guidelines recently, please take them into account if you need to create or update a fonts package or subpackage:

– 2009-01-14: naming
http://fedoraproject.org/wiki/PackagingDrafts/Font_package_naming_%282009-01-13%29

— 2009-01-06: exact splitting rules
http://fedoraproject.org/wiki/PackagingDrafts/Font_package_splitting_rules_%282008-12-21%29

(packagers that can drop font files and just depend on an existing font package are not impacted)

Comment 17 Gwyn Ciesla 2009-01-28 14:06:00 UTC
khmeros-fonts, moodle updated in rawhide accordingly.


Note You need to log in before you can comment on or make changes to this bug.