From Fedora Project Wiki

Revision as of 15:39, 26 July 2009 by Poelstra (talk | contribs) (accepted at 2009-07-24 FESCo meeting)

Yum Langpack Plugin

Summary

A yum plugin that allows langpacks to be automatically installed for your native language when base packages with langpacks get installed.

Owner

Current status

  • Targeted release: Fedora 12
  • Last updated: 2009-07-24
  • Percentage of completion: 30%

Detailed Description

Currently when users install packages with langpacks they have to install the langpacks themselves by hand (if they even know about them).

Last year in a related thread on fedora-devel-list Bill Nottingham posted an initial proof of concept of this plugin. This feature will polish that further and make it ready for general use. (See also this rfe bug.)

This feature will also allow firefox and thunderbird to earn langpacks as they deserve.

Here is an outline of the design and current assumptions:

  1. add langpack-support-<lang> metapackage for each language, which users can install if they want langpack support for the language
  2. the langpack metapackages will all require yum-plugin-langpacks
  3. langpack-support-<lang> metapackages will be added to the comps lang support groups
  4. when user activates yum (eg through PackageKit) the plugin will check if langpacks are needed or available for the packages involved in the transaction
  5. maybe keep conditional lang entries for now in F12 and drop them later in F13 say

Optional/longer term ideas (likely deferred for later).

  1. allow for whitelisting/blacklisting of specific langpacks
  2. setting for which langs appear by default in gdm lang top menu (rfe bug)
  3. recommendation for Packaging Guideline for standard naming of langpacks (eg <basename>-langpack-<lang>)
  4. (longterm) extend to handling gettext translation .mo files

anaconda

Anaconda will need to require yum-plugin-langpacks and enable it by default (as outlined in the above mail).

Additionally the plugin must be able to take into account new langpack-support metapackages being added in an rpm transaction when determining langpacks (not just currently installed langpack-support metapackages).

pungi

For pungi, since all the langpack-support metapackages will be listed in comps if it also requires and enables yum-plugin-langpacks it should be able to pull in the corresponding langpacks needed to compose Fedora trees, etc.

livecd-tools

livecd-tools probably also needs to require yum-plugin-langpacks and enable it. Currently the official Live Spins don't actually include any @lang-support groups. Localized spins should list any required langpack-support-<lang> meta package or @<lang>-support group anyway in their kickstart file.

comps

Once the feature is available in Rawhide all the metapackages will be added to the respective language support groups in comps.

yum

Rather than making changes to each of the tools using Yum (as outlined above) it might be easier just to enable the langpack plugin in yum by default to avoid having to change Yum code in multiple places?

Benefit to Fedora

Users will get langpacks for their language installed automatically if they wish.

Scope

  1. Write yum plugin, test, wash, rinse, repeat
  2. Add yum-plugin-langpacks package to fedora or yum-utils upstream
  3. Add metapackages package to fedora: see pkgreview
  4. Include in comps

Test Plan

Test various scenarios

  1. Do a Japanese Fedora install, and then later add kde and eclipse
  2. Do English Fedora install and groupinstall some lang support and add openoffice
  3. etc

User Experience

  1. Installation of langpacks will Just Work.

Dependencies

None

Contingency Plan

Keep langpacks listed in comps as conditional packages in addition to the new metapackages, or just revert.

Documentation

none yet

Release Notes

to be documented in the I18n docsbeat