Font package lifecycle

From FedoraProject

(Difference between revisions)
Jump to: navigation, search
(s'PackageMaintainers/CVSAdminProcedure'Package SCM admin requests)
(29 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{CompactHeader|fonts}}
+
{{CompactHeader|fonts-sig}}
 
''Putting it all together.''
 
''Putting it all together.''
  
 
The following is a quick summary to help newcomers undertand the [[:Category:Fonts SIG| Fonts SIG]] workflow.
 
The following is a quick summary to help newcomers undertand the [[:Category:Fonts SIG| Fonts SIG]] workflow.
 +
 +
 +
{{Admon/note | Who are they? |
 +
''Requester'' and ''Packager'' can be the same person. ''Reviewer'' must be different from the ''Packager''.}}
  
  
 
{|
 
{|
|+ Our font packages lifecycle
+
|+ A font package lifecycle
 
|-
 
|-
 
! Phase
 
! Phase
 +
! #
 
! Who
 
! Who
 
! Actions
 
! Actions
 
! Requirements
 
! Requirements
|-
+
|- valign="top"
| [[:Category:Font_wishlist|Emergence]]
+
| {{Anchor|1}}[[:Category:Font_wishlist|Conception]]
 +
| [[#1|1]]
 
| Requester
 
| Requester
 
|
 
|
Line 22: Line 28:
 
{{Admon/caution | Don't stop there |
 
{{Admon/caution | Don't stop there |
 
This is a simplistic summary, '''do''' read our [[Legal_considerations_for_fonts| legal page]] before proposing new fonts.}}
 
This is a simplistic summary, '''do''' read our [[Legal_considerations_for_fonts| legal page]] before proposing new fonts.}}
* fills a packaging request in the wiki using the current [[Font_description_template|template]]
+
* fills a [[:Category:Font wishlist|packaging request]] in the wiki using the current [[Font_description_template|template]]
 
** a complete and accurate request will increase packaging and adoption potential
 
** a complete and accurate request will increase packaging and adoption potential
 
* notifies the SIG [[Fonts_SIG_mailing_lists | mailing list]] of the new packaging request (optional but recommended)
 
* notifies the SIG [[Fonts_SIG_mailing_lists | mailing list]] of the new packaging request (optional but recommended)
Line 28: Line 34:
 
* a [https://admin.fedoraproject.org/accounts/user/new Fedora account], to edit the wiki ([[Infrastructure/AccountSystem|help]]),
 
* a [https://admin.fedoraproject.org/accounts/user/new Fedora account], to edit the wiki ([[Infrastructure/AccountSystem|help]]),
 
* subscription to the [[Fonts_SIG_mailing_lists | main SIG list]], to send the request notification.
 
* subscription to the [[Fonts_SIG_mailing_lists | main SIG list]], to send the request notification.
|-
+
|- valign="top"
| rowspan="2" | [[:Category:In-progress fonts|Conception]]
+
| rowspan="4" | {{Anchor|2}}[[:Category:In-progress fonts|Gestation]]
 +
| {{Anchor|2.a}}[[#2.a|2.a]]
 
| Packager
 
| Packager
 
|
 
|
 
* picks up a packaging request in the [[:Category:Font wishlist|wishlist]],
 
* picks up a packaging request in the [[:Category:Font wishlist|wishlist]],
 
* corrects and completes the information the requester provided
 
* corrects and completes the information the requester provided
** using the '''Packager''' notes in the [[Font_description_template|template]] for guidance
+
** using the ''Packager'' notes in the [[Font_description_template|template]] for guidance
 
* packages the fonts:
 
* packages the fonts:
** using our [[Annotated_fonts_spec_template|spec template]],
 
 
** following our official [[:Category:Fonts_packaging| font packaging policies]],
 
** following our official [[:Category:Fonts_packaging| font packaging policies]],
* uploads the result somewhere
+
** using our fonts spec templates ([[Simple fonts spec template|1]],[[Fonts spec template for multiple_fonts|2]]),
 +
# yum install fontpackages-devel
 +
* self-checks the result:
 +
** builds the package in [[Projects/Mock|Mock]] or (if he's already a packager) in a [[Koji]] scratch build
 +
** checks the resulting packages with [[Common_Rpmlint_issues|rpmlint]]
 +
# yum install rpmlint
 +
$ rpmlint package1.rpm … packageN.rpm
 +
** checks the resulting packages with repo-font-audit:
 +
# yum install fontpackages-tools createrepo
 +
$ mkdir /tmp/testrepo
 +
$ mv package1.rpm … packageN.rpm /tmp/testrepo
 +
$ createrepo /tmp/testrepo
 +
$ repo-font-audit testrepo file:///tmp/testrepo
 +
* uploads the fixed packages somewhere
 
** for example on his [http://fedorapeople.org/ fedorapeople] space,
 
** for example on his [http://fedorapeople.org/ fedorapeople] space,
 
* requests a review
 
* requests a review
** fills a ticked in [https://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Fedora&format=extras-review bugzilla], CC-ing the [[Fonts_SIG_mailing_lists | bugs list]],
+
** fills a ticked in [https://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Fedora&format=fedora-review bugzilla], CC-ing the [[Fonts_SIG_mailing_lists | bugs list]],
 
** adds the review request reference to the original packaging request in the wiki,
 
** adds the review request reference to the original packaging request in the wiki,
 
** changes the packaging request category to [[:Category:In-progress fonts]].
 
** changes the packaging request category to [[:Category:In-progress fonts]].
Line 47: Line 66:
 
|
 
|
 
* the full [[Joining_the_Fonts_SIG|joining the fonts SIG]] list,
 
* the full [[Joining_the_Fonts_SIG|joining the fonts SIG]] list,
* if the packager is not a ''cvsextras'' member yet, the way his membership request will be acted on depends on the quality of the new package he proposes.
+
* if the packager is not a ''packager'' member yet, the way his membership request will be acted on depends on the quality of the new package he proposes.
  
  
 
{{Admon/tip | Font packages are normal packages |
 
{{Admon/tip | Font packages are normal packages |
 
Most packaging steps are detailed on the general [[PackageMaintainers/Join|new fedora packager]] page.}}
 
Most packaging steps are detailed on the general [[PackageMaintainers/Join|new fedora packager]] page.}}
|-
+
|- valign="top"
 +
| {{Anchor|2.b}}[[#2.b|2.b]]
 
| Reviewer
 
| Reviewer
 
|
 
|
 +
* makes sure the steps outlined in previous phases have been completed, [[#1|1]] included
 
* [[Package_Review_Process|reviews]] the package
 
* [[Package_Review_Process|reviews]] the package
* makes the requester fix eventual problems
+
* ask the requester fix eventual problems
* approves the package
+
 
|
 
|
 +
* membership of the [https://admin.fedoraproject.org/accounts/group/view/fedorabugs fedorabugs] group.
 
* good knowledge of [[:Category:Fonts_packaging| font packaging policies]],
 
* good knowledge of [[:Category:Fonts_packaging| font packaging policies]],
 
* general Fedora [[Package_Review_Process#Reviewer| reviewer]] requirements.
 
* general Fedora [[Package_Review_Process#Reviewer| reviewer]] requirements.
|-
+
|- valign="top"
| rowspan="2" | Birth
+
| {{Anchor|2.c}}[[#2.c|2.c]]
 +
| Packager
 +
| colspan="2" |
 +
* acts on reviewer requests
 +
|- valign="top"
 +
| {{Anchor|2.d}}[[#2.d|2.d]]
 +
| Reviewer
 +
| colspan="2" |
 +
* checks the fixes
 +
* approves the package
 +
|- valign="top"
 +
| rowspan="2" | {{Anchor|3}}Birth
 +
| {{Anchor|3.a}}[[#3.a|3.a]]
 
| Packager
 
| Packager
|
+
| colspan="2" |
* [[PackageMaintainers/Join#Install_the_Client_Tools|publishes]] his package in the fedora-devel branch, then in other branches (stable release, EPEL branch, etc)
+
* requests a [[Package SCM admin requests|VCS root]] for his package, declaring the [[pkgdbu:fonts-sig|fonts-sig]] user in the default CC list.
 +
* [[PackageMaintainers/Join#Check_out_the_module|publishes]] his package in the fedora-devel branch, then in other branches (stable release, EPEL branch, etc)
 
* completes the distribution [[PackageMaintainers/CompsXml#Fonts | comps files]]
 
* completes the distribution [[PackageMaintainers/CompsXml#Fonts | comps files]]
* adds the koji and bodhi references to the original wiki packaging request
+
* adds the koji and pkgdb references to the original wiki packaging request
 
* changes its category to [[:Category:Packaged fonts]]
 
* changes its category to [[:Category:Packaged fonts]]
 
* notifies the SIG mailing list of the new package (optional but recommended)
 
* notifies the SIG mailing list of the new package (optional but recommended)
|
+
* notifies the font upstream its font has been packaged in Fedora (optional but recommended)
|-
+
|- valign="top"
 +
| {{Anchor|3.b}}[[#3.b|3.b]]
 
| Requester
 
| Requester
|
+
| colspan="2" |
 
* thanks the packager publicly. Small things count too.
 
* thanks the packager publicly. Small things count too.
|
+
|- valign="top"
|
+
| rowspan="2" | {{Anchor|4}}[[:Category:Packaged fonts|Life]]
|-
+
| {{Anchor|4.a}}[[#4.a|4.a]]
| rowspan="2" | [[:Category:Packaged fonts|Life]]
+
 
| Packager
 
| Packager
 
|
 
|
Line 89: Line 123:
 
{{Admon/caution | Don't leave now |
 
{{Admon/caution | Don't leave now |
 
Please avoid fire and forget packaging.}}
 
Please avoid fire and forget packaging.}}
|-
+
|- valign="top"
 +
| {{Anchor|4.b}}[[#4.b|4.b]]
 
| Users
 
| Users
 
|
 
|
Line 97: Line 132:
 
{{Admon/caution | Bugzilla is required |
 
{{Admon/caution | Bugzilla is required |
 
Packagers are not psychic, they don't monitor the whole web for problems, if you want them to address yours, please use our bugzilla.}}
 
Packagers are not psychic, they don't monitor the whole web for problems, if you want them to address yours, please use our bugzilla.}}
 +
|- valign="top"
 +
| {{Anchor|5}}[[:Rejected and retired fonts|Death]]
 +
| [[#5|5]]
 +
| Fedora QA
 +
| colspan="2" | A change in Fedora policies or a problem missed earlier may cause a font package to be retired.
 
|}
 
|}
  
{{:Fonts_SIG_signature}} [[Category:Fonts SIG|Lifecycle]]
+
{{:Fonts_SIG_signature}} [[Category:Fonts packaging|Lifecycle, font packages]]

Revision as of 15:42, 7 September 2011

A page of the Fonts Special Interest Group

Putting it all together.

The following is a quick summary to help newcomers undertand the Fonts SIG workflow.


Note.png
Who are they?
Requester and Packager can be the same person. Reviewer must be different from the Packager.


A font package lifecycle
Phase # Who Actions Requirements
Conception 1 Requester
  • finds a nice font to package in Fedora,
  • checks its licensing is acceptable, basically that:
    • redistribution, including commercial is allowed, and
    • modification, including of existing glyphs is allowed too
Stop (medium size).png
Don't stop there
This is a simplistic summary, do read our legal page before proposing new fonts.
  • fills a packaging request in the wiki using the current template
    • a complete and accurate request will increase packaging and adoption potential
  • notifies the SIG mailing list of the new packaging request (optional but recommended)
Gestation 2.a Packager
  • picks up a packaging request in the wishlist,
  • corrects and completes the information the requester provided
    • using the Packager notes in the template for guidance
  • packages the fonts:
# yum install fontpackages-devel
  • self-checks the result:
    • builds the package in Mock or (if he's already a packager) in a Koji scratch build
    • checks the resulting packages with rpmlint
# yum install rpmlint
$ rpmlint package1.rpm … packageN.rpm
    • checks the resulting packages with repo-font-audit:
# yum install fontpackages-tools createrepo
$ mkdir /tmp/testrepo
$ mv package1.rpm … packageN.rpm /tmp/testrepo
$ createrepo /tmp/testrepo
$ repo-font-audit testrepo file:///tmp/testrepo
  • uploads the fixed packages somewhere
  • requests a review
  • notifies the SIG mailing list of the new review request (optional but recommended).
  • the full joining the fonts SIG list,
  • if the packager is not a packager member yet, the way his membership request will be acted on depends on the quality of the new package he proposes.


Idea.png
Font packages are normal packages
Most packaging steps are detailed on the general new fedora packager page.
2.b Reviewer
  • makes sure the steps outlined in previous phases have been completed, 1 included
  • reviews the package
  • ask the requester fix eventual problems
2.c Packager
  • acts on reviewer requests
2.d Reviewer
  • checks the fixes
  • approves the package
Birth 3.a Packager
  • requests a VCS root for his package, declaring the fonts-sig user in the default CC list.
  • publishes his package in the fedora-devel branch, then in other branches (stable release, EPEL branch, etc)
  • completes the distribution comps files
  • adds the koji and pkgdb references to the original wiki packaging request
  • changes its category to Category:Packaged fonts
  • notifies the SIG mailing list of the new package (optional but recommended)
  • notifies the font upstream its font has been packaged in Fedora (optional but recommended)
3.b Requester
  • thanks the packager publicly. Small things count too.
Life 4.a Packager
  • monitors new upstream releases, new fedora bugs,
  • updates his package in fedora-devel accordingly,
  • pushes the updates to other Fedora branches when they're worth it
Idea.png
Be conservative
Users to not like continuous updates for small changes. Update in fedora-devel (rawhide) early and often. Think twice before pushing changes to other branches.
Stop (medium size).png
Don't leave now
Please avoid fire and forget packaging.
4.b Users
  • a bugzilla account
Stop (medium size).png
Bugzilla is required
Packagers are not psychic, they don't monitor the whole web for problems, if you want them to address yours, please use our bugzilla.
Death 5 Fedora QA A change in Fedora policies or a problem missed earlier may cause a font package to be retired.


Idea.png
Fonts in Fedora
The Fonts SIG takes loving care of Fedora fonts. Please join this special interest group if you are interested in creating, improving, packaging, or just suggesting a font. Any help will be appreciated.