Bug 2093080 - Default fonts for Arabic do not match the font packages list
Summary: Default fonts for Arabic do not match the font packages list
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: fontconfig
Version: 39
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Akira TAGOH
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: openqa
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-06-02 21:33 UTC by Adam Williamson
Modified: 2024-03-15 11:52 UTC (History)
12 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2024-03-07 11:09:50 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker FC-582 0 None None None 2022-09-02 16:58:08 UTC

Description Adam Williamson 2022-06-02 21:33:03 UTC
There's a test case:

https://fedoraproject.org/wiki/QA:Testcase_i18n_default_fonts

which requires checking the default fonts for various languages against a list, http://tagoh.fedorapeople.org/fonts/fc-test.sh .

The current default fonts for Arabic installs do not match the list. The list states sans should be DejaVu Sans, serif should be FreeSerif or MPH 2B Damase, and mono should be DejaVu Sans Mono. These may have been changed recently, as our openQA reference text file expects them to be Noto Naskh Arabic (for both sans and serif?) and PakType Naskh Basic for mono.

In any case, what we actually see doesn't match either the list or the openQA reference file. We see "Noto Sans Arabic" and "PakType Naqsh" in the output from the test, I think for serif (yes really) and monospace respectively.

Comment 1 Adam Williamson 2022-06-03 16:29:40 UTC
This is the actual output we get, for sans, serif and monospace respectively:

NotoSansArabic-VF.ttf: "Noto Sans Arabic" "Regular"
NotoNaskhArabic-VF.ttf: "Noto Naskh Arabic" "Regular"
PakTypeNaqsh.ttf: "PakType Naqsh" "Regular"

That doesn't match anything I can see in the list. I gave the wrong link for the list, sorry - it's https://tagoh.fedorapeople.org/fonts/fedora-current-defaultfonts.html .

Comment 2 Akira TAGOH 2022-06-06 07:07:25 UTC
Apparently that testcase is outdated. the latest one would be https://tagoh.fedorapeople.org/fonts/status/36.html though, it isn't reflected packages from langpacks. I'm updating the list for other purpose. sorry for inconvenience.

Comment 3 Lukas Ruzicka 2022-10-13 08:56:42 UTC
(In reply to Akira TAGOH from comment #2)
> Apparently that testcase is outdated. the latest one would be
> https://tagoh.fedorapeople.org/fonts/status/36.html though, it isn't
> reflected packages from langpacks. I'm updating the list for other purpose.
> sorry for inconvenience.

Hello, coming back to this bug once again. We have this test failing again because it seems that the font list on the system differs from what we expected.

What the system tells us:
Sans -> NotoSansArabic-VF.ttf: "Noto Sans Arabic" "Regular"
Serif -> NotoNaskhArabic-VF.ttf: "Noto Naskh Arabic" "Regular"
Mono -> Vazirmatn[wght].ttf: "Vazirmatn" "Regular"

What the table provides and what we expect:
Sans -> NotoNaskhArabic-VF.ttf "Noto Naskh Arabic" "Regular"
Serif -> NotoNaskhArabic-VF.ttf: "Noto Naskh Arabic" "Regular"
Mono -> PakTypeNaskhBasic.ttf: "PakType Naskh Basic" "Regular"

Can you tell us, what the correct combination is for Fedora 37 and if the tables are correct, why there are different defaults on the installed system?

thanks.

Comment 4 Akira TAGOH 2022-10-18 05:01:57 UTC
I have updated the test case. please check again.

Comment 5 Lukas Ruzicka 2022-10-25 07:46:31 UTC
So, I have checked again and I am still getting different results than expected.

On a freshly installed system, I am getting these defaults:

NotoSansArabic-VF.ttf: "Noto Sans Arabic" "Regular"
NotoNaskhArabic-VF.ttf: "Noto Naskh Arabic" "Regular"
Vazirmatn[wght].ttf: "Vazirmatn" "Regular"

However, the table linked to the suggested test case (https://fedoraproject.org/wiki/QA:Testcase_i18n_default_fonts) located at https://tagoh.fedorapeople.org/fonts/status/current.html
shows the following:

Noto Sans Arabic 	
Noto Naskh Arabic 	
KacstBook

While Serif and Sans font defaults do match, there is a difference in the Mono default Vazirmatn versus KacstBook.

Please, make sure the correct fonts are used on the system or (if you wish so) update the table to match the reality.

Comment 6 Akira TAGOH 2022-10-27 11:40:18 UTC
How did you install that?

Comment 7 Lukas Ruzicka 2022-10-27 13:44:28 UTC
The Server DVD is used to start the Anaconda in which I choose to install Fedora Workstation, after the installation the system is rebooted and the test is performed.

The test run is here: https://openqa.fedoraproject.org/tests/1540613

You can see the Video from that test here: https://openqa.fedoraproject.org/tests/1540613/video?filename=video.ogv

Comment 8 Akira TAGOH 2022-12-12 06:25:22 UTC
Well, the table was generated with all the langpacks installed. if the result of the test case is different, it would means there are some font packages which affects default fonts for other languages accidentally. that is a bug in those fonts packages.

Comment 9 Ben Cotton 2023-04-25 18:24:35 UTC
This message is a reminder that Fedora Linux 36 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora Linux 36 on 2023-05-16.
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
'version' of '36'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, change the 'version' 
to a later Fedora Linux version. Note that the version field may be hidden.
Click the "Show advanced fields" button if you do not see it.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora Linux 36 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 Linux, you are encouraged to change the 'version' to a later version
prior to this bug being closed.

Comment 10 Adam Williamson 2023-04-28 00:02:16 UTC
Still an issue in current Rawhide.

Comment 11 Jens Petersen 2023-05-22 04:54:48 UTC
See for example current https://tagoh.fedorapeople.org/fonts/status/38-diff-comps-vs-langpacks.html
So the results vary depending whether the related langpacks are installed or not.

We have some major plans in the pipeline for how we install default fonts for F39,
so it may be better to revisit this thereafter (during this cycle).

Comment 12 Jens Petersen 2023-05-22 04:57:28 UTC
Also for QA release testing it might be enough to focus mainly on Sans results across all languages for now?
This could then be extended to Serif once that hopefully stabilizes
(for a lot of scripts Mono is less meaningful anyway).

Comment 13 Akira TAGOH 2023-05-29 08:29:10 UTC
Sorry for taking a long time on it. I have updated https://fedoraproject.org/wiki/QA:Testcase_i18n_default_fonts too.
Particularly speaking of this case, paktype-naskh-basic-fonts (and kacst-book-fonts in f38 too) affected vazirmatn-fonts which is our default font. we need a fix for them not to make them higher priority than vazirmatn-fonts.

Comment 14 Fedora Release Engineering 2023-08-16 08:08:36 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 39 development cycle.
Changing version to 39.

Comment 15 Akira TAGOH 2024-03-07 11:09:50 UTC
Please use this instead: https://fedoraproject.org/wiki/QA:Testcase_default_font_installation

No difference is reported for ar locale on f40:

$ fontquery-diff -l ar 40
* Comparison between 40 and local
* This may take some time...
  Language                    default sans                default serif               default mono               
  Arabic(ar)                  Noto Sans Arabic            Noto Naskh Arabic           Vazirmatn                  

FWIW if there are some difference detected, it looks like:

$ fontquery-diff -l he 40
* Comparison between 40 and local
* This may take some time...
  Language                    default sans                default serif               default mono               
- Hebrew(he)                  Noto Sans Hebrew            Noto Serif Hebrew           Noto Sans Hebrew           
+                                                                                     Liberation Mono            

As known as Bug#2267629

Comment 16 Adam Williamson 2024-03-07 20:01:53 UTC
Thanks for that, but now it's a bit confusing. We have both https://fedoraproject.org/wiki/QA:Testcase_i18n_default_fonts and https://fedoraproject.org/wiki/QA:Testcase_default_font_installation . Does QA:Testcase_default_font_installation completely replace QA:Testcase_i18n_default_fonts ? Should I update the validation pages to use the newer test, and rewrite the openQA test to do what it says?

Thanks!

Comment 17 Akira TAGOH 2024-03-08 10:49:57 UTC
Yes, please! Sorry for confusing.

Comment 18 Adam Williamson 2024-03-09 00:46:39 UTC
OK. How does this tool work, exactly? It seems to be comparing the local system against a container image, right? How is the container image generated? How do we make sure that *it* is correct? I'm worried about a situation where a bug is introduced into Fedora somehow which will cause *both* the reference container image *and* the clean installed system that openQA tests from to be wrong, in which case they'd match and the script would report no error?

Comment 19 Akira TAGOH 2024-03-15 11:52:25 UTC
Yes, this assumes that default-fonts metapackages from langpacks provides expected default fonts.
If fontquery reports some difference between local and container image, that would means some font packages which may be pulled in by other deps affected default fonts. I'd say that may be more or less a bug.

For example, taking a look at https://bugzilla.redhat.com/show_bug.cgi?id=2267629, we see difference for Hebrew monospace which isn't expected in langpacks.
If we use liberation-mono-fonts as default monospace for Hebrew, we need to update langpacks. If we want to see Noto Sans Hebrew as default monospace, we should add substitute config in google-noto-fonts then.

For more details of fontquery, the container image is generated by https://github.com/fedora-i18n/fontquery/blob/main/fontquery/data/Containerfile and https://github.com/fedora-i18n/fontquery/blob/main/fontquery/scripts/fontquery-setup.sh for real package installation.
There are three variants for images though, minimal would be the same to what we usually have on the system. others are basically to test consistency in config proactively.

The container images are supposed to be updated weekly by GitHub Actions. If something failed, images won't be updated.

As this relies on langpacks, we need to pay more attentions on updating langpacks to avoid breakage right.


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