Bug 1228691

Summary: YaST2 Qt: Missing Chinese glyphs
Product: [openSUSE] openSUSE Tumbleweed Reporter: Poplar.at.twilight <poplar.cubic>
Component: InstallationAssignee: E-mail List <yast2-maintainers>
Status: CONFIRMED --- QA Contact: Jiri Srain <jsrain>
Severity: Normal    
Priority: P3 - Medium CC: ancor, poplar.cubic, snwint, zhaoym233
Version: CurrentKeywords: accessibility, Chinese_Simplified
Target Milestone: ---   
Hardware: x86   
OS: openSUSE Tumbleweed   
Whiteboard:
Found By: Community User Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: first installer screen with Chinese selected in boot loader
first installer screen with Chinese selected in installer

Description Poplar.at.twilight 2024-08-01 00:23:21 UTC
When installing openSUSE Tumbleweed on a UEFI-booted device and selecting a language, Chinese, Japanese, and other CJK characters are displayed as garbled characters.

This problem can be alleviated by editing the installed grub boot entry, adding lang=zh_CN to the end of the linux line, and then pressing Ctrl + X to make YaST2 display Chinese normally.

The above issues do not affect devices booted using legacy BIOS and Leap ISO.
Comment 1 Rika Suzuki 2024-08-01 01:55:38 UTC
This problem also exists in Legacy boot, but in Legacy boot, you can select the language in GRUB, and the result is the same as manually specifying the language as zh_CN at startup.
Comment 2 Ancor Gonzalez Sosa 2024-08-01 08:16:18 UTC
Steffen (as main maintaner of int-sys). Do you have any idea on how to improve this?

I personally wouldn't where to start.
Comment 3 Steffen Winterfeldt 2024-08-01 08:44:14 UTC
Note that parts of the UI show Chinese chars correctly. For example, the
license text looks ok to.

I would point in the general direction of bug 1216689.
Comment 4 Steffen Winterfeldt 2024-08-01 08:50:12 UTC
No, that's not it.

I have an idea, let me check.
Comment 5 Steffen Winterfeldt 2024-08-01 12:41:34 UTC
The issue here is that for languages like Chinese (and Japanese, Korean) YaST
dynamically loads the font package (arphic-uming-fonts.rpm for Chinese).

Then parts of the UI start using uming.ttc, and some parts don't. Not sure
if you have to 'refresh' QT widgets to make it aware of an updated font config
or something similar.

The problem is apparently not new and is also present in older Tumbleweed
versions - but not so visible.

I'll attach two screenshots to demonstrate the issue.
Comment 6 Steffen Winterfeldt 2024-08-01 12:44:37 UTC
Created attachment 876434 [details]
first installer screen with Chinese selected in boot loader

If you have Chinese pre-selected everything looks fine.
Comment 7 Steffen Winterfeldt 2024-08-01 12:47:53 UTC
Created attachment 876435 [details]
first installer screen with Chinese selected in installer

If you start with English and then switch to Chinese in the installer, you
see a mix of bitmap glyphs and truetype glyphs.

This was done with an old Tumbleweed version (20240131). With current Tumbleweed
you get missing glyphs at places where bitmap glyphs used to be.
Comment 8 Steffen Winterfeldt 2024-08-01 12:54:14 UTC
This is the font situation in TW-20240131:

1:vm4877:~ # fc-list :lang=zh
/usr/share/fonts/misc/b16.pcf.gz: Efont Biwidth:style=Regular
/usr/share/fonts/truetype/uming.ttc: AR PL UMing TW MBE:style=Light
/usr/share/fonts/truetype/uming.ttc: AR PL UMing TW:style=Light
/usr/share/fonts/truetype/uming.ttc: AR PL UMing CN:style=Light
/usr/share/fonts/truetype/uming.ttc: AR PL UMing HK:style=Light

But b16.pcf is now gone - this was the font used by fbiterm - which was dropped recently.

TL;DR: the YaST UI does not reflect (in all places) the updated font config
after adding the Chinese font package correctly. In the past, this led to a mix
of bitmap and truetype glyphs. Now that the bitmap font is gone, this leads
to missing glyphs.
Comment 9 Stefan Hundhammer 2024-08-02 15:43:51 UTC
This is on the Qt libs level. The YaST Qt UI does not handle fonts on that level.
Comment 10 Steffen Winterfeldt 2024-08-05 10:29:48 UTC
I can of course just put back b16.pcf and you are happy with bitmaps...
Comment 11 Stefan Hundhammer 2024-08-06 18:50:13 UTC
I guess that's much better than missing characters.
Comment 12 Ancor Gonzalez Sosa 2024-08-08 08:48:32 UTC
(In reply to Steffen Winterfeldt from comment #10)
> I can of course just put back b16.pcf and you are happy with bitmaps...

Please do so.
Comment 13 Steffen Winterfeldt 2024-08-08 10:05:56 UTC
here you go:

https://github.com/openSUSE/installation-images/pull/735