Bug 1220812
| Summary: | Console shows non-latin characters (such as from Greek and Japanese) as white rectangles | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Martin Kolman <mkolman> | ||||
| Component: | systemd | Assignee: | systemd-maint | ||||
| Status: | CLOSED ERRATA | QA Contact: | qe-baseos-daemons | ||||
| Severity: | unspecified | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 7.1 | CC: | awilliam, jscotka, jsynacek, lnykryn, mkolman, systemd-maint-list, systemd-maint | ||||
| Target Milestone: | rc | ||||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | systemd-219-1.el7 | Doc Type: | Bug Fix | ||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2015-11-19 15:01:18 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: | |||||||
| Bug Depends On: | |||||||
| Bug Blocks: | 1182562 | ||||||
| Attachments: |
|
||||||
|
Description
Martin Kolman
2015-05-12 14:00:54 UTC
It looks like https://bugzilla.redhat.com/show_bug.cgi?id=1150384. Note that the bug required systemd *and* dracut to be fixed. The dracut patch is in rhel since 7.1. This seems to be working now. Just set (for el_GR) FONT="iso07u-16" in /etc/vconsole.conf For QE I am not sure if this was broken before rebase, but it will be good to have a test for it. (In reply to Lukáš Nykrýn from comment #4) > This seems to be working now. Just set (for el_GR) > FONT="iso07u-16" in /etc/vconsole.conf > > For QE I am not sure if this was broken before rebase, but it will be good > to have a test for it. I've tried it out on the RHEL-7.2-20150625.n.0 nightly, which has systemd 219-4. Right after installation I would still get the white rectangles in the Greek and Japanese locales. After changing the font to iso07u-16 in /etc/vconsole.conf and rebooting Greek seems to be working but Japanese is still busted: https://m4rtink.fedorapeople.org/anaconda/screenshots/non-latin_console/console_non-latin_june29.png Also if I understand it correctly, this fix does not address the fact that without changing the default console font non-latin characters will still be displayed as rectangles ? This bug has been motivated by bug 1182562 - Anaconda & Initial Setup TUI showing as rectangles when the user selects a language with non-latin characters. It currently looks like this, for Greek: https://m4rtink.fedorapeople.org/anaconda/screenshots/non-latin_console/anaconda_tui_greek_june29.png And for Japanese: https://m4rtink.fedorapeople.org/anaconda/screenshots/non-latin_console/anaconda_tui_japanese_june29.png Do I understand it correctly we would need to change the console font at runtime (and somehow map language codes to the proper console font name) to make it show up correctly ? Or is there some "universal" font or other mechanism that could do that (show proper characters instead of rectangles based on locale) automatically ? (In reply to Martin Kolman from comment #7) > Also if I understand it correctly, this fix does not address the fact that > without changing the default console font non-latin characters will still be > displayed as rectangles ? How is the text supposed to be displayed correctly if the font is wrong? Merely changing the locale setting is not enough (in case of Greek or Japanese, that is). > Do I understand it correctly we would need to change the console font at > runtime (and somehow map language codes to the proper console font name) to > make it show up correctly ? Yes. > Or is there some "universal" font or other > mechanism that could do that (show proper characters instead of rectangles > based on locale) automatically ? AFAIK systemd uses it's own algorithm to approximate this. Some notes here: 1) There is no 'universal' console font. AFAIK there's a limited number of characters you can include in any console font, and it's not enough to cover all scripts. 2) EL 7's default console font is still, I believe, latarcyrheb-sun16 . 'latarcyrheb' is a contract of 'latin arabic cyrillic hebrew' - i.e. those are the scripts it can render. Note that neither 'greek' nor 'japanese' is in that list. Fedora changed its default console font to 'eurlatgr' - 'european-latin-greek' - in F22: see https://fedoraproject.org/wiki/Changes/NewDefaultConsoleFont . That provides better coverage for European languages and includes Greek, but sacrifices Cyrillic, Arabic and Hebrew rendering. 3) systemd-vconsole-setup takes care of loading the 'default' console font during boot. The 'default' font is actually just what's listed in /etc/vconsole.conf : if that file contains a FONT= line, systemd-vconsole-setup will load it. It also looks for a 'vconsole.font' kernel parameter. If neither of those things is set, systemd-vconsole-setup will not load any font, and the console font provided by the system firmware will still be used. Up till recently Fedora had a bug whereby there was no /etc/vconsole.conf in the anaconda environment, so the 'default' console font was not actually being loaded. Looking at EL 7, I believe it has the same bug: there is no /etc/vconsole.conf file, and Cyrillic characters are rendered as white boxes, even though latarcyrheb should be able to display them. As well as the fix from #1182562 , I think EL 7's lorax should be fixed to include /etc/vconsole.conf in the installer environment, as we did for Fedora 23: https://bugzilla.redhat.com/show_bug.cgi?id=1250260 Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2015-2092.html |