Bug 550874

Summary: Region is US, on Danish installation
Product: [openSUSE] openSUSE 11.2 Reporter: Martin Schlander <martin.schlander>
Component: Live MediumAssignee: Jiri Srain <jsrain>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Critical    
Priority: P1 - Urgent CC: coolo, jsrain, jsuchome, novellbmw, rastislav.krupansky
Version: FactoryFlags: coolo: SHIP_STOPPER+
Target Milestone: ---   
Hardware: i686   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: y2logs of build339 kde live usb install, reverting to US while Danish is used live and selected at grub and during install

Description Martin Schlander 2009-10-28 23:32:01 UTC
User-Agent:       Mozilla/5.0 (X11; U; Linux x86_64; da-DK; rv:1.9.0.14) Gecko/2009090900 SUSE/3.0.14-0.1.2 Firefox/3.0.14

I installed i686 kde4 livecd (build 337).

During installation I select Danish language and keyboard layout. But on first boot the KDE region is US - make dates, times, currencies etc. wrong.

Reproducible: Always

Steps to Reproduce:
1.
2.
3.
Comment 1 Martin Schlander 2009-10-29 20:50:02 UTC
I did a new fresh install using usb live with kde - build 339.

Same situation.

At Grub I select Danish language.

In the live session I have Danish keyboard layout, Danish language is set in yast (though not installed of course at this point), and my KDE regional settings are set to Danish. Everything seems fine.

During the installation Danish language and keyboard layout is preselected. Everything seems fine.

Installation completes without incident, autoconfiguration runs. But once the installed system is booted, I have have U.S. keyboard, Language is set to en_US in YaST, and my regional settings in KDE are U.S. too.
Comment 2 Stephan Kulow 2009-10-30 08:55:16 UTC
no installation bug without yast logs please
Comment 3 Martin Schlander 2009-10-30 09:26:30 UTC
Created attachment 324831 [details]
y2logs of build339 kde live usb install, reverting to US while Danish is used live and selected at grub and during install
Comment 4 Stephan Kulow 2009-10-30 09:33:25 UTC
The sysconfig is correct:

2009-10-29 22:23:08 <1> linux(3768) [YCP] Misc.ycp:194 .sysconfig.language.RC_LANG: 'da_DK.UTF-8'
2009-10-29 22:23:08 <1> linux(3768) [YCP] Language.ycp:494 language from sysconfig: da_DK
2009-10-29 22:23:08 <1> linux(3768) [YCP] Language.ycp:429 original language: en_US; setting to lang:da_DK
2009-10-29 22:23:08 <1> linux(3768) [YCP] Encoding.ycp:62 SetEncLang da_DK
2009-10-29 22:23:08 <1> linux(3768) [YCP] Language.ycp:474 Setting default language: da_DK
2009-10-29 22:23:08 <1> linux(3768) [YCP] Misc.ycp:194 .sysconfig.language.ROOT_USES_LANG: 'ctype'
2009-10-29 22:23:08 <1> linux(3768) [YCP] Misc.ycp:194 .sysconfig.language.RC_LANG: 'da_DK.UTF-8'
2009-10-29 22:23:08 <1> linux(3768) [YCP] Misc.ycp:194 .sysconfig.language.INSTALLED_LANGUAGES: ''


And then later it fails

2009-10-29 23:33:40 <1> linux(2041) [YCP] Misc.ycp:194 .sysconfig.language.RC_LANG: 'en_US.UTF-8'
2009-10-29 23:33:40 <1> linux(2041) [YCP] Language.ycp:494 language from sysconfig: en_US
2009-10-29 23:33:40 <1> linux(2041) [YCP] Language.ycp:429 original language: en_US; setting to lang:en_US
2009-10-29 23:33:40 <1> linux(2041) [YCP] Language.ycp:474 Setting default language: en_US
2009-10-29 23:33:40 <1> linux(2041) [YCP] Misc.ycp:194 .sysconfig.language.ROOT_USES_LANG: 'ctype'
2009-10-29 23:33:40 <1> linux(2041) [YCP] Misc.ycp:194 .sysconfig.language.RC_LANG: 'en_US.UTF-8'
2009-10-29 23:33:40 <1> linux(2041) [YCP] Misc.ycp:194 .sysconfig.language.INSTALLED_LANGUAGES: ''
Comment 5 Stephan Kulow 2009-10-30 09:34:10 UTC
not sure if it's live installer specific
Comment 6 Jiří Suchomel 2009-10-30 09:45:47 UTC
It is.

The problem is described here
https://bugzilla.novell.com/show_bug.cgi?id=547930

.. YaST correctly writes it, but after boot, old (or default) settings are back.
Comment 7 Jiří Suchomel 2009-10-30 09:48:22 UTC
*** Bug 547930 has been marked as a duplicate of this bug. ***
Comment 8 Vincent Untz 2009-10-30 11:09:48 UTC
*** Bug 550791 has been marked as a duplicate of this bug. ***
Comment 9 Jiri Srain 2009-10-30 11:36:21 UTC
Did some experiments, on installation in Czech and watching the language setting, however, this bug seems to be general to more locale settings.

After the live installation finished, before reboot, I changed the GRUB configuration to add 'init=/bin/bash'. When bash came up, the language in /etc/sysconfig/language was set properly. This proofs that during first stage, language is set properly.

Then I removed that addition and updated /etc/init.d/boot so that it starts /bin/bash just before starting YaST and rebooted. Language in /etc/sysconfig/language was set to English. This proofs that we cannot blame even blame YaST in 2nd stage.

The suspect at this point of time are the start-up scripts. Since they are the same in live installation as in normal, the only idea I have is that there are some additional scripts for the live media which are not deactivated in the installed system and which rewrite the settings (even the modification time of /etc/sysconfig/language matches this idea).
Comment 10 Jiří Suchomel 2009-10-30 11:38:18 UTC
Stephan?
Comment 11 Jiri Srain 2009-10-30 11:41:35 UTC
Just in case it helps: There is a clean-up script on the live media, which is run after the second stage - therefore it is already too late.
Comment 12 Jiri Srain 2009-10-30 11:47:00 UTC
/etc/langset.sh, being called via /etc/init.d/boot.langset

boot.langset is disabled after 2nd stage
Comment 13 Stephan Kulow 2009-10-30 12:19:24 UTC
So we need a script that runs _before_ 2nd stage. If you can't think of a clean solution, I can also patch a random inst_ client - e.g. the live installer, it's removed after installation anyway .)
Comment 14 Jiri Srain 2009-10-30 12:26:09 UTC
I can imagine two solutions:

- some actions are not taken if /var/lib/YaST2/runme_at_boot exists (which means, 2nd stage will run)

- you provide yet another clean-up script, which YaST will call in chroot; this script cleans up what will break first boot
Comment 15 Stephan Kulow 2009-10-30 12:49:35 UTC
new kiwi config provides /usr/bin/correct_live_for_reboot
Comment 16 Jiri Srain 2009-10-30 12:58:53 UTC
and YaST is calling it before reboot in chroot
Comment 17 Bernhard Wiedemann 2016-04-15 10:27:46 UTC
This is an autogenerated message for OBS integration:
This bug (550874) was mentioned in
https://build.opensuse.org/request/show/23493 Factory / yast2-live-installer