Bug 477374 - [culmus-fonts] Please convert to new font packaging guidelines
Summary: [culmus-fonts] Please convert to new font packaging guidelines
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: culmus-fonts
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Parag Nemade
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F11-new-font-rules
TreeView+ depends on / blocked
 
Reported: 2008-12-21 00:25 UTC by Nicolas Mailhot
Modified: 2009-09-15 05:49 UTC (History)
5 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2009-09-15 05:49:31 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Nicolas Mailhot 2008-12-21 00:25:04 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:55:13 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 Nicolas Mailhot 2009-01-11 15:19:17 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 3 Nicolas Mailhot 2009-01-14 18:36:44 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 4 Rahul Bhalerao 2009-02-05 06:44:27 UTC
The package is now updated to new guidelines.

Comment 5 Nicolas Mailhot 2009-02-15 18:36:22 UTC
1. your -compat package needs to obsolete culmus-fonts < thisversion-thisrelease for the upgrade path to work
http://fedoraproject.org/wiki/Shipping_fonts_in_Fedora_%28FAQ%29#But_my_old_package_is_replaced_by_several_new_packages.21

2. if you don't add a suitably threatening description to your compat package people will do stupid stuff such as adding new deps on it
http://koji.fedoraproject.org/koji/buildinfo?buildID=82799

3. Your descriptions and summaries may need a little work, maybe ask the Hebrew localization team for help?
http://translate.fedoraproject.org/languages/he

4. I'd have followed
/usr/share/fontconfig/templates/substitution-font-template.conf

a bit more closely to make sure the fonts are registered in the correct generic families but that's your choice to make of course

The Obsolete bit is the only part which is likely to be a big problem short term

Comment 6 Rahul Bhalerao 2009-02-16 07:10:46 UTC
Nicholas, thanks for the suggestions. Here are the updates:
1. added obsoletes to -compat.
2. added the suitable description.
3. so far, I haven't been able to find any documentation on culmus project's website or anywhere to derive proper description for every subpackage. So keeping the same generic one.
4. the .conf are derived from the original files from the upstream project, only split between subpackages.

Hope that works for now.

Comment 7 Nicolas Mailhot 2009-02-18 19:31:57 UTC
This is a reminder for all the packagers that still have bugs open about adapting to font packaging guidelines there is only one month left before Fedora 11 beta:
http://fedoraproject.org/wiki/Releases/11/Schedule

A week of this month will see the Fedora 11 mass rebuild, that will load the build farm:
http://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

As already converted packages showed it is quite possible to make mistakes during the conversion. Please make releng and QA happy and don't wait till the last minute to do your changes (avoid pre-beta panic). If possible start before the mass rebuild so we don't burn cycles on incorrect packages.

The PackageKit enhancements stated for Fedora 11 assume fonts and font-using packages are sane (basically respect packaging guidelines). It is quite possible that not-converted packages will interact with the F11 font autoinstall feature in "interesting" ways.
http://fedoraproject.org/wiki/Features/AutomaticFontInstallation

We don't want that

There is extensive documentation on the wiki and most of your questions have likely already been answered there. Please do read the FAQ before making more work for the support team by asking questions answered there.
http://fedoraproject.org/wiki/Shipping_fonts_in_Fedora_%28FAQ%29

Comment 8 Oron Peled 2009-02-18 23:13:33 UTC
 * Someone called my name ;-) [yes, I'm the slow Hebrew l10n coordinator]
 * Historically the Culmus project distributed its fonts as:
   - Culmus (the regular fonts you just re-packaged)
   - Culmus fancy fonts. Extra free fonts. They are currently
     still packaged as: fonts-hebrew-fancy-0.20051122-4.fc10.noarch
   - Lately they added a third category -- Ancient fonts (for ancient
     Semitic scripts).
   All these are linked from: http://culmus.sourceforge.net/
   [it's a bit confusing as the normal "Download" links of sourceforge
    only lead you to the "regular" Culmus fonts]

 * Some of the fancy fonts are unique. E.g: the "Ktav-Yad" is the only
   free "hand-writing" font in Hebrew.

 * As for naming:
   - For consistency to end users, i think the fonts in the "fancy"
     category should be named just like the other Culmus fonts.
     Example: culmus-ktav-yad-fonts
     and not: culmus-fancy-ktav-yad-fonts.
     [the split to "fancy" was done for economy (bandwidth) reasons
      not really functional ones].

   - Of course we can group the "fancy" ones via a meta-package that
     requires each of them. But I don't think it worth the trouble
     and it may confuse people to think it's yet another font from
     this collection.

   - We can add the "Ancient" ones in this go (if you have time for this)
     But IMO their name should contain "ancient", as they actually
     represent different scripts). E.g:
        culmus-ancient-hebrew-paleo-gezer-fonts
     What? this is getting too much. Maybe settle for:
        ancient-hebrew-paleo-gezer-fonts

 * For any help/rants etc., just mail me (on
   http://translate.fedoraproject.org/languages/he
   you can see my email as my bugzilla account.

Thanks,

Comment 9 Nicolas Mailhot 2009-02-20 17:42:31 UTC
@oron

(In reply to comment #8)
>  * Someone called my name ;-) [yes, I'm the slow Hebrew l10n coordinator]
>  * As for naming:

Actually the problem is not the naming, we have pretty clear naming rules nowadays, the problem are the summaries/descriptions that need help from people who actually use the fonts to become useful to new users

@rahul

1. I'm 100% sure we'll have less maintenance load long term if all our font packages use the same kind of fontconfig rules

2. I think you misunderstood the Obsoleting stuff. The aim is not to have compat obsolete the new packages which should be fine, the aim is to have it obsolete the pre-split culmus-fonts < 0.101-6 to have yum update it automatically

Comment 10 Rahul Bhalerao 2009-02-24 09:40:21 UTC
Nicolas,
As I said earlier, the configuration files were adopted from the upstream ones. Besides, I do not see much syntactical  and semantic conflict between the template and given conf files. I don't even have any knowledge pertaining to the various other unavailable(to me) font families that are aliased or substituted by given fonts. Thus I may not be able to provide aliases of my own. Thus I really do not see any need to rewrite the configuration files and keep this bug open for that reason. 

About obsoleting, yep I was confused a bit there, and followed the documented stuff blindly. I will make that correction.

Comment 11 Bug Zapper 2009-06-09 10:21:22 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 11 development cycle.
Changing version to '11'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 13 Parag Nemade 2009-09-15 05:49:31 UTC
I think this is already fixed. If still any problem exists then either reopen this bug or create new bug.


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