Bug 1829187 - Hungarian language is missing from the selection list during installing process in Anaconda
Summary: Hungarian language is missing from the selection list during installing proce...
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: anaconda
Version: 32
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Vladimír Slávik
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 1832703 1839514 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-04-29 07:31 UTC by molnaratt
Modified: 2020-05-27 15:53 UTC (History)
13 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-05-11 15:43:07 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description molnaratt 2020-04-29 07:31:13 UTC
Description of problem:
Hungarian language is missing from the installer to choose. Therefor localization need to be set post install manually.

Version-Release number of selected component (if applicable):
Installer of Fedora 32.

How reproducible:
Start to install Fedora 32 and from the first page Hungarian is missing from the list of languages.

Steps to Reproduce:
1. Boot from installer media
2. Start installation
3. During select language Hungarian is missing.

Actual results:
No hungarian language can be selected. Installer language and the installed system language will be other then the required. So later the locales need to be changed manually to hu_HU.UTF8, and change the language under DE.

Expected results:
Expected should be too be able to select Hungarian from the list, so no other manual work is needed after installation.

Additional info:

Comment 1 Martin Kolman 2020-04-29 11:47:29 UTC
Two possible recent changes come to my mind that could have influenced this:
- we switched translations from Fedora Zanata to Fedora Weblate instance
- we switched more language code handling to Langtable

Maybe one of those is missing Hungarian for some reason ?

Comment 2 Vladimír Slávik 2020-05-04 20:27:54 UTC
I can reproduce, but only for the already-released F32 :(

Anyway, facts...

- Anaconda decides about languages based on existence of /usr/share/locale/*/LC_MESSAGES/anaconda.mo [1].

- The langtable change is irrelevant when a file with the translation does not even exist.

- The image I get for F32 Server at [2] has no anaconda.mo for locale hu, which confirms this bug. I did not look into more images.

- We do have the translation and the file [4][5].

- I verified that the current Rawhide build process does correctly propagate it all the way to RPM.

- The currently-last good Rawhide nightly from [3] does have the file and shows Magyar in the list.


[1] https://github.com/rhinstaller/anaconda/blob/master/pyanaconda/localization.py#L320
[2] https://download.fedoraproject.org/pub/fedora/linux/releases/32/Server/x86_64/iso/Fedora-Server-netinst-x86_64-32-1.6.iso
[3] https://kojipkgs.fedoraproject.org/compose/rawhide/Fedora-Rawhide-20200502.n.0/compose/Everything/x86_64/iso/Fedora-Everything-netinst-x86_64-Rawhide-20200502.n.0.iso
[4] https://translate.fedoraproject.org/translate/anaconda/master/hu/
[5] https://github.com/rhinstaller/anaconda-l10n/blob/master/f32/hu.po

Comment 3 Vladimír Slávik 2020-05-05 12:11:50 UTC
Looks like there was some glitch about the translation file: Historically it was there, some recent-ish composes lack it, and latest Rawhide (at the time of posting) has it again. So it seems "fixed".

I am not sure what exactly happened, and I think it's not really important. We drop translation files when they contain too little actual translation, or when they take too much liberty with format strings.Wealso changed the translation platform as mentioned. A lot could have happened.

Maybe the takeaway here is that we could test for translation presence, but that would require lots of assumptions.

Comment 4 Vladimír Slávik 2020-05-05 15:58:42 UTC
Team consensus is: We could add a new check or test for the RPM build, but that isn't a priority right now.

Comment 5 Vladimír Slávik 2020-05-07 18:19:42 UTC
Done! We configured Weblate to mark Python format string errors in [Anaconda] translations as "needs review". It only took three developers an hour of arguing, another hour RTFMing, and one hour searching the UI for the right button ;-)

This should give translation messages with broken python format strings the "fuzzy" status in generated po files. Fuzzy messages are then automatically removed from mo files generated during build. The subsequent checks that remove whole translation files will then not find anything, and translations will not be rejected because of a single bad message. At least that's the theory.

There are still ways for bad strings to get through, so the fix is not 100%. Also, it is possible that the new configuration applies only to changes made from now on, so existing bad format strings in the translations will only get slowly phased out.

Either way, the end result should be that the amount of dropped translations is substantially reduced, so I consider it a good enough fix for the problem.


PS: On the non-code side of things, any effort to check format string errors in translations would help this a lot.

Comment 6 Vladimír Slávik 2020-05-11 09:24:34 UTC
*** Bug 1832703 has been marked as a duplicate of this bug. ***

Comment 7 Vladimír Slávik 2020-05-11 15:43:07 UTC
I have verified that Weblate now adds the "fuzzy" flag correctly for translation messages with broken python format strings. The rest follows; there should be no more whole language translations removed now, except for these with too few translated messages, or due to some other yet unknown issue.

The F32 media will not be officially built again, while any non-official builds done from now on will automatically get the fix, same as rawhide. Thus, closing.


Molnaratt, sorry for not being able to fix this retroactively for F32, that is outside of what anaconda devs can do :(

Comment 8 Vladimír Slávik 2020-05-26 08:59:39 UTC
*** Bug 1839514 has been marked as a duplicate of this bug. ***

Comment 9 Vasiliy Glazov 2020-05-26 09:03:08 UTC
Is that solved in live respins?

Comment 10 Vladimír Slávik 2020-05-26 11:00:24 UTC
I don't know enough to answer with certainty, but I guess the answer is "no". The critical point for the fix is when translations are downloaded. That happens on (srpm) package (re)build, and I think there wasn't a reason to do that. I think.

Comment 11 Adam Williamson 2020-05-27 15:53:34 UTC
right, IIRC anaconda has to pull the updated translations into a new release and that needs to be packaged. if there's a newer anaconda build for F32 than there was at official release time it's possible this will change with a respin, if not, no.


Note You need to log in before you can comment on or make changes to this bug.