From Fedora Project Wiki
(metapackage->meta-package)
 
(6 intermediate revisions by 2 users not shown)
Line 23: Line 23:


== Summary ==
== Summary ==
Langpacks installations is re-designed using language metapackages langpacks-<langcode> and RPM weak dependencies (Supplements tag).
Langpacks installations is re-designed using language meta-packages langpacks-<langcode> and RPM weak dependencies (Supplements tag).


== Owner ==
== Owner ==
Line 33: Line 33:


* Email: jsilhan at fedoraproject dot org
* Email: jsilhan at fedoraproject dot org


* Release notes owner: <!--- To be assigned by docs team [[User:FASAccountName| Release notes owner name]] <email address> -->
* Release notes owner: <!--- To be assigned by docs team [[User:FASAccountName| Release notes owner name]] <email address> -->
Line 42: Line 41:
== Current status ==
== Current status ==
* Targeted release: [[Releases/24 | Fedora 24 ]]  
* Targeted release: [[Releases/24 | Fedora 24 ]]  
* Last updated: 25-Jan-2016
* Last updated: 26-Feb-2016
<!-- After the change proposal is accepted by FESCo, tracking bug is created in Bugzilla and linked to this page  
<!-- After the change proposal is accepted by FESCo, tracking bug is created in Bugzilla and linked to this page  
Bugzilla states meaning as usual:
Bugzilla states meaning as usual:
Line 51: Line 50:
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
-->
-->
* Tracker bug: []
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1308555 #1308555]


== Detailed Description ==
== Detailed Description ==
{{admon/note|This change will remove the need of having the dnf langpacks plugin in Fedora}}
This is similar to what we have dnf langpacks plugin which is already in Fedora but there is one missing thing that this plugin currently does not provide automatic installation of langpacks. E.g. if you enable or install Fedora in Japanese language then installation of any base package like libreoffice-core or man-pages are not installing automatically libreoffice-langpack-ja or man-pages-ja. This is because dnf is not providing required hook to re-resolve the transaction unlike yum.
This is similar to what we have dnf langpacks plugin which is already in Fedora but there is one missing thing that this plugin currently does not provide automatic installation of langpacks. E.g. if you enable or install Fedora in Japanese language then installation of any base package like libreoffice-core or man-pages are not installing automatically libreoffice-langpack-ja or man-pages-ja. This is because dnf is not providing required hook to re-resolve the transaction unlike yum.
But now with using RPM tags or weak dependencies like Supplements, we just need to ensure we have langpacks-xx metapackage is already installed on the system and when a base package is getting installed, it will pull its langpack for that xx language automatically in the transaction set.
But now with using RPM tags or weak dependencies like Supplements, we just need to ensure we have langpacks-xx meta-package is already installed on the system and when a base package is getting installed, it will pull its langpack for that xx language automatically in the transaction set.


This will help in anaconda installation also. When particular set of languages are selected in anaconda then anaconda should pull all the required langpacks in the same initial installation.
This will help in anaconda installation also. When particular set of languages are selected in anaconda then anaconda should pull all the required langpacks in the same initial installation.
There are no plans to remove/retire dnf-langpacks package in Fedora yet.


== Benefit to Fedora ==
== Benefit to Fedora ==
Users will get langpacks for the given language installed. This Change provides language metapackages which user need to just install and they will get all available langpacks for which base package is already installed on the system.  
Users will get langpacks for the given language installed. This Change provides language meta-packages which user need to just install and they will get all available langpacks for which base package is already installed on the system.  


== Scope ==
== Scope ==
* Proposal owners: Check all langpacks providing packages add Supplements tag in their each langpack subpackage. Create metapackages like langpacks-<langcode>. We have submitted package review [https://bugzilla.redhat.com/show_bug.cgi?id=1300569 here].
* Proposal owners: Check all langpacks providing packages add Supplements tag in their each langpack subpackage. We have now added langpacks meta-package in F24+ which provides around 79 language meta-packages. We are tracking the progress [https://fedoraproject.org/wiki/I18N/Langpacks/WeakdepsImplementation here]
<!-- What work do the feature owners have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
<!-- What work do the feature owners have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->


* Other developers: To all other developers of packages who provides langpacks, they need to add the Supplements tag as given in this [https://fedoraproject.org/wiki/PackagingDrafts/Langpack draft guideline] to each langpack subpackage.
* Other developers: To all other developers of packages who provides langpacks, they need to add the Supplements tag as given in this [https://fedoraproject.org/wiki/Packaging:Langpacks Langpacks guideline] to each langpack subpackage.
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->


Line 72: Line 74:
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuid required?  If a rel-eng ticket exists, add a link here.  -->
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuid required?  If a rel-eng ticket exists, add a link here.  -->


* Policies and guidelines: Working with FPC on this new [https://fedoraproject.org/wiki/PackagingDrafts/Langpack langpacks guideline] <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Policies and guidelines: Worked with FPC on this new [https://fedoraproject.org/wiki/Packaging:Langpacks Langpacks guideline] <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- Do the packaging guidelines or other documents need to be updated for this feature?  If so, does it need to happen before or after the implementation is done?  If a FPC ticket exists, add a link here. -->
<!-- Do the packaging guidelines or other documents need to be updated for this feature?  If so, does it need to happen before or after the implementation is done?  If a FPC ticket exists, add a link here. -->


Line 83: Line 85:


== User Experience ==
== User Experience ==
Users will get langpacks installed when they do initial installation of Fedora using anaconda. Users can enable languages by installing metapackage langpacks-<langcode>. Users can find which languages are providing langpacks by executing following command.
Users will get langpacks installed when they do initial installation of Fedora using anaconda. Users can enable languages by installing meta-package langpacks-<langcode>. Users can find which languages are providing langpacks by executing following command.


<pre>dnf list "langpacks-*"</pre>
<pre>dnf list "langpacks-*"</pre>

Latest revision as of 13:24, 26 February 2016


Langpacks Installation With RPM Weak Dependencies

Summary

Langpacks installations is re-designed using language meta-packages langpacks-<langcode> and RPM weak dependencies (Supplements tag).

Owner

  • Email: pnemade at fedoraproject dot org
  • Email: jsilhan at fedoraproject dot org
  • Release notes owner:

Current status

Detailed Description

Note.png
This change will remove the need of having the dnf langpacks plugin in Fedora

This is similar to what we have dnf langpacks plugin which is already in Fedora but there is one missing thing that this plugin currently does not provide automatic installation of langpacks. E.g. if you enable or install Fedora in Japanese language then installation of any base package like libreoffice-core or man-pages are not installing automatically libreoffice-langpack-ja or man-pages-ja. This is because dnf is not providing required hook to re-resolve the transaction unlike yum. But now with using RPM tags or weak dependencies like Supplements, we just need to ensure we have langpacks-xx meta-package is already installed on the system and when a base package is getting installed, it will pull its langpack for that xx language automatically in the transaction set.

This will help in anaconda installation also. When particular set of languages are selected in anaconda then anaconda should pull all the required langpacks in the same initial installation.

There are no plans to remove/retire dnf-langpacks package in Fedora yet.

Benefit to Fedora

Users will get langpacks for the given language installed. This Change provides language meta-packages which user need to just install and they will get all available langpacks for which base package is already installed on the system.

Scope

  • Proposal owners: Check all langpacks providing packages add Supplements tag in their each langpack subpackage. We have now added langpacks meta-package in F24+ which provides around 79 language meta-packages. We are tracking the progress here
  • Other developers: To all other developers of packages who provides langpacks, they need to add the Supplements tag as given in this Langpacks guideline to each langpack subpackage.
  • Release engineering: N/A

Upgrade/compatibility impact

None.

How To Test

User Experience

Users will get langpacks installed when they do initial installation of Fedora using anaconda. Users can enable languages by installing meta-package langpacks-<langcode>. Users can find which languages are providing langpacks by executing following command.

dnf list "langpacks-*"

Dependencies

No Other Change depend on this.

Contingency Plan

  • Contingency mechanism: If this change is not completed by final development freeze then we need to target this for F25. We are just proposing to add additional information in langpacks packages that is Supplements tag. This should not affect individual langpacks packages installation by dnf or we have langpacks plugin which can be used to fully install langpacks for any language where base packages are already installed on the system.
  • Contingency deadline: I don't think we will need anything to revert or apply any contingency plan here if this is not completed by beta freeze.
  • Blocks release? No
  • Blocks product? N/A

Documentation

Release Notes