Bug 1069976

Summary: locales specified by kickstart option "lang --addsupport" doesn't survive the reboot
Product: [Fedora] Fedora Reporter: Edgar Hoch <edgar.hoch>
Component: yumAssignee: Packaging Maintenance Team <packaging-team-maint>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: unspecified    
Version: 20CC: admiller, ffesti, mattdm, packaging-team-maint
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-06-29 19:06:22 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
ks.cfg kickstart file used for installation
none
anaconda.packaging.log from the installation with lang --addsupport=...
none
/etc/yum/pluginconf.d/langpacks.conf after kickstart installation is finished and machine was rebooted none

Description Edgar Hoch 2014-02-26 02:07:13 UTC
Created attachment 867719 [details]
ks.cfg kickstart file used for installation

Description of problem:

The list of locales specified by the new kickstart option (since Fedora 20)

  lang <id> --addsupport=<LANGLIST>

is recognized and used while kickstart package installation, but is lost after kickstart is finished and the host is rebooted. But the specified locales should be saved by yum / kickstart / anaconda (?) to be available for other package installations after reboot.


Description of the kickstart option:
https://fedoraproject.org/wiki/Anaconda/Kickstart#lang

Version-Release number of selected component (if applicable):
Fedora 20

How reproducible:
Always.

Steps to Reproduce:
1. Create a kickstart file for Fedora 20 using 
     lang <id> --addsupport=<LANGLIST>
   <LANGLIST> should be a komma separated list of locales from the output of "yum langavailable" or listed in the file /usr/share/system-config-language/locale-list .
   For an example, see the kickstart file in the attachments.

2. Do a Fedora 20 kickstart installation using the kickstart file specified in step 1.
3. Reboot after kickstart installation has finished.
4. Login as root on the new installed machine and enter the following commands:
     yum langlist
     yum langavailable
     less /var/log/anaconda/anaconda.packaging.log
     less /etc/yum/pluginconf.d/langpacks.conf
     less /var/lib/yum/plugins/langpacks/installed_langpacks


Actual results:
In step 4:
- Output of "yum langlist" is empty.
- File /var/lib/yum/plugins/langpacks/installed_langpacks should contain the list of installed locales that tches the list of locales in the kickstart option "lang <id> --addsupport=<LANGLIST>". But the file is empty.


Expected results:
In step 4:
- Output of "yum langlist" is a list of all the locales specified in the kickstart option in step 1.
- File /var/lib/yum/plugins/langpacks/installed_langpacks contains the list of installed locales. It matches the list of locales in the kickstart option "lang <id> --addsupport=<LANGLIST>".


Additional info:
This bug report is the result of discussion in bug #1051816#c11 .

Comment 1 Edgar Hoch 2014-02-26 02:11:15 UTC
Created attachment 867720 [details]
anaconda.packaging.log from the installation with lang --addsupport=...

Search for lines "Adding .* to language list" to see that the locales listed in the kickstart option "lang <id> --addsupport=<LANGLIST>" are recognized and used while the kickstart package installation.

Comment 2 Edgar Hoch 2014-02-26 02:13:21 UTC
Created attachment 867721 [details]
/etc/yum/pluginconf.d/langpacks.conf after kickstart installation is finished and machine was rebooted

Comment 3 Edgar Hoch 2014-02-26 02:37:32 UTC
Additional infos:

The file /var/lib/yum/plugins/langpacks/installed_langpacks is empty after kickstart installation and reboot.

If I add locales using the command "yum langinstall <locale>", then
- the output of "yum langlist" contains <locale>
- the file /var/lib/yum/plugins/langpacks/installed_langpacks contains <locale>
- the command triggers the installations of language packages for that <locale>


Suppose that after kickstart installation and reboot I have installed a list of other packages (I have a script that add some packages using yum). I also have a script that has added the languages de_DE,en_US,es_ES,fr_FR,it_IT,pl_PL using yum langinstall. This is the list of installed languages:

# yum -d 0 -e 0 langlist
Installed languages:
German (Germany)
Spanish (Spain)
French (France)
Italian (Italy)
	Polish (Poland)

Now the package list for languages "de" (added using yum langinstall) and "sv" (not added using yum langinstall) are:

# yum -d 0 -e 0 langinfo de
Language-Id=de
  LabPlot-doc-de
  aspell-de
  autocorr-de
  calligra-l10n-de
  drascula-de
  eclipse-nls-de
  gcompris-sound-de
  gimp-help-de
  gnome-getting-started-docs-de
  hunspell-de
  hyphen-de
  kde-i18n-German
  kde-l10n-German
  kicad-doc-de
  libreoffice-langpack-de
  man-pages-de
  mythes-de
  nqc-doc-de
  sagemath-doc-de
  tagainijisho-dic-de
  tkgate-de

# yum -d 0 -e 0 langinfo sv
Language-Id=sv
  LabPlot-doc-sv
  aspell-sv
  autocorr-sv
  calligra-l10n-sv
  eclipse-nls-sv
  gcompris-sound-sv
  gimp-help-sv
  hunspell-sv
  hyphen-sv
  kde-i18n-Swedish
  kde-l10n-Swedish
  libreoffice-langpack-sv
  mythes-sv


Now do a manual installation of language "sv" using "yum langinstall sv".
See that the package "tesseract-langpack-swe" was added by this command:

# yum -d 0 -e 0 langinfo sv
Language-Id=sv
  LabPlot-doc-sv
  aspell-sv
  autocorr-sv
  calligra-l10n-sv
  eclipse-nls-sv
  gcompris-sound-sv
  gimp-help-sv
  hunspell-sv
  hyphen-sv
  kde-i18n-Swedish
  kde-l10n-Swedish
  libreoffice-langpack-sv
  mythes-sv


It seems that the other languages packages was installed during kickstart installation (see output of anaconda.packageing.log).

The list of available languages (output of "yum langavailable") tells me that there are other languages available that the system (yum?) thinks that they are not installed (as "yum langlist" differs).

To summarize:

- Kickstart option "lang <id> --addsuport=<LANGLIST>" works fine during kickstart installation, but the language list is not saved to be available for yum after reboot.

- I have to add each languages explicit (using "yum langinstall ...") for each desired language after finishing kickstart installation (e.g. after reboot).

- Kickstart option "lang <id> --addsuport=<LANGLIST>" should do what "yum langinstall ..." would do for each listed locale, so that "yum langlist" "knows" these languages after reboot, too.

Comment 4 Edgar Hoch 2015-03-13 11:48:43 UTC
Update for Fedora 21:

The list of languages in kickstart option "lang <id> --addsuport=<LANGLIST>" is saved in /etc/yum/pluginconf.d/langpacks.conf now. This parts seems to be solved.

I have not tested the other problems in Fedora 21 (yum langinstall, if /etc/yum/pluginconf.d/langpacks.conf is used, etc.) up to now, I will do it sometimes later.

Comment 5 Fedora End Of Life 2015-05-29 11:03:46 UTC
This message is a reminder that Fedora 20 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 20. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '20'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 20 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 6 Fedora End Of Life 2015-06-29 19:06:22 UTC
Fedora 20 changed to end-of-life (EOL) status on 2015-06-23. Fedora 20 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.