From Fedora Project Wiki
(Adding Release Notes Tracker)
 
(45 intermediate revisions by 6 users not shown)
Line 2: Line 2:


= Use Noto fonts for Indic (Indian language) scripts =
= Use Noto fonts for Indic (Indian language) scripts =
{{Change_Proposal_Banner}}


== Summary ==
== Summary ==
Line 20: Line 18:
* Name: Sudip Shill
* Name: Sudip Shill
* Email: <sshil@redhat.com>
* Email: <sshil@redhat.com>
* Name: [[User:Tagoh| Akira Tagoh]]
* Email: <tagoh@redhat.com>
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo)
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo)
* FESCo shepherd: [[User:FASAccountName| Shehperd name]] <email address>
* FESCo shepherd: [[User:FASAccountName| Shehperd name]] <email address>
Line 25: Line 25:


== Current status ==
== Current status ==
[[Category:ChangePageIncomplete]]
[[Category:ChangeAcceptedF39]]
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
Line 43: Line 43:
ON_QA -> change is fully code complete
ON_QA -> change is fully code complete
-->
-->
* [<will be assigned by the Wrangler> devel thread]
* [https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/UF2JL7GSXRJBC7GIFLUC4HLR7SIPJIQY/ devel thread]
* FESCo issue: <will be assigned by the Wrangler>
* FESCo issue: https://pagure.io/fesco/issue/3048
* Tracker bug: <will be assigned by the Wrangler>
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=2233271 #2233271]
* Release notes tracker: <will be assigned by the Wrangler>
* Release notes tracker: [https://pagure.io/fedora-docs/release-notes/issue/1003 #1003]


== Detailed Description ==
== Detailed Description ==
Currently the Lohit fonts are installed and used by default for Indian languages (Indic scripts).
Currently the Lohit fonts are installed and used by default for Indian languages (Indic scripts).
However the Lohit project is essentially inactive and maintenance mode at best.
However the Lohit project is essentially inactive and at best in maintenance mode now.
So we will change the default to Google's Noto fonts, which are available in multiple weights
So we will change the default to Google's Noto Indic fonts, which are available in both Sans and Serif faces with multiple weights and as variable fonts.
and both Sans and Serif faces, and also as variable fonts.
This should provide a more flexible modern maintained set of fonts for Indic language scripts.
This should provide a more flexible modern maintained set of fonts for Indic scripts.
 
{| class="wikitable"
|+ Default Indic fonts changes
|-
! Language script !! Old default !! New default !! Serif font
|-
| Devanagari || lohit-devanagari-fonts || google-noto-sans-devanagari-vf-fonts || google-noto-serif-devanagari-vf-fonts
|-
| Bengali || lohit-bengali-fonts || google-noto-sans-bengali-vf-fonts || google-noto-serif-bengali-vf-fonts
|-
| Gujrati || lohit-gujarati-fonts || google-noto-sans-gujarati-vf-fonts || google-noto-serif-gujarati-vf-fonts
|-
| Kannada || lohit-kannada-fonts || google-noto-sans-kannada-vf-fonts || google-noto-serif-kannada-vf-fonts
|-
| Odia || lohit-odia-fonts || google-noto-sans-oriya-vf-fonts || google-noto-serif-oriya-vf-fonts
|-
| Tamil || lohit-tamil-fonts || google-noto-sans-tamil-vf-fonts || google-noto-serif-tamil-vf-fonts
|-
| Telugu || lohit-telugu-fonts || google-noto-sans-telugu-vf-fonts || google-noto-serif-telugu-vf-fonts
|-
| Assamese || lohit-assamese-fonts || google-noto-sans-bengali-vf-fonts || google-noto-serif-bengali-vf-fonts
|-
| Marathi || lohit-marathi-fonts || google-noto-sans-devanagari-vf-fonts || google-noto-serif-devanagari-vf-fonts
|-
| Maithili || lohit-devanagari-fonts || google-noto-sans-devanagari-vf-fonts || google-noto-serif-devanagari-vf-fonts
|}
 
(Note that Noto is already default for Punjabi (Gurmukhi) and Sinhala, as well as Divehi, whereas Malayalam defaults to RIT fonts)


== Feedback ==
== Feedback ==
There was some initial discussion on fonts list, etc: https://lists.fedoraproject.org/archives/list/fonts@lists.fedoraproject.org/thread/LEFRXQCTXXRENR3GJW3NERVPGQNMYDZZ/ which was generally positive.
There was some [https://lists.fedoraproject.org/archives/list/fonts@lists.fedoraproject.org/thread/LEFRXQCTXXRENR3GJW3NERVPGQNMYDZZ/ initial discussion on fonts list, etc], which was generally positive.


This included:
This started with:
* comparison screenshots: https://sshil.fedorapeople.org/lohit-vs-noto-comparison.html
* comparison screenshots: https://sshil.fedorapeople.org/lohit-vs-noto-comparison.html
* a copr repo for testing: http://copr.fedorainfracloud.org/coprs/sshil/indic-fonts-test
* a copr repo for testing: http://copr.fedorainfracloud.org/coprs/sshil/indic-fonts-test
Line 65: Line 92:


== Benefit to Fedora ==
== Benefit to Fedora ==
Wider range of Indic (Indian) fonts will be available by default as variable fonts in both sans and serif faces in various styles of weights.
Wider range of Indic (Indian) fonts will be available by default as variable fonts in both sans and serif faces with various weight styles.


== Scope ==
== Scope ==
* Proposal owners:
* Proposal owners:
** update langpacks and default-fonts in comps @fonts from Lohit to the corresponding Noto Indic fonts
** update Indic langpacks (default-fonts) to use Noto fonts [draft [https://src.fedoraproject.org/rpms/langpacks/pull-request/31 PR]]
** update the Noto and Lohit fonts packages so that Noto Indic fonts have higher priority
** change comps @fonts (through default-fonts) from Lohit to the corresponding Noto Indic fonts
** update ostree desktops to use Noto Indic
** update lorax to use Noto for Indic fonts
** update lorax to use Noto for Indic fonts
** update the Noto and Lohit fonts packages so that Noto Indic fonts have higher priority


* Other developers: N/A<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Other developers: N/A<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->


* Release engineering: [https://pagure.io/releng/issues #Releng issue number] <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Release engineering: [https://pagure.io/releng/issue/11502 #11502] <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuild required?  include a link to the releng issue.  
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuild required?  include a link to the releng issue.  
The issue is required to be filed prior to feature submission, to ensure that someone is on board to do any process development work and testing and that all changes make it into the pipeline; a bullet point in a change is not sufficient communication -->
The issue is required to be filed prior to feature submission, to ensure that someone is on board to do any process development work and testing and that all changes make it into the pipeline; a bullet point in a change is not sufficient communication -->
Line 90: Line 119:


== Upgrade/compatibility impact ==
== Upgrade/compatibility impact ==
Lohit fonts will continue to be available.
Lohit fonts will continue to be available, but assuming the
[https://fedoraproject.org/wiki/Changes/ImproveDefaultFontHandling default-fonts] Change is implemented
users will be moved to use Noto Indic fonts by default on upgrade.
 
Nevertheless advanced users can use `fonts-tweak-tool` to change the priority of one or more Lohit fonts to be higher than Noto if they so wish.
<!-- What happens to systems that have had a previous versions of Fedora installed and are updated to the version containing this change? Will anything require manual configuration or data migration? Will any existing functionality be no longer supported? -->
<!-- What happens to systems that have had a previous versions of Fedora installed and are updated to the version containing this change? Will anything require manual configuration or data migration? Will any existing functionality be no longer supported? -->


<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->


== How To Test ==
== How To Test ==
* install default/Noto fonts
* install/test default/Noto fonts on various desktops and their applications
* remove/install Lohit fonts
* test Noto Indic with and without Lohit fonts installed
* test rendering of Indic scripts in applications/websites
* test rendering of Indic scripts in applications/websites
 
* test upgrades from Fedora 38
* test if removing Noto Indic (and (re-)installing Lohit) still allows using Lohit as a second default.
* (advanced) revert the font priorities using the user fonts-tweak-tool.
* Compare default font installed for mr_IN language
    On Fedora 38 you will see <pre>$ LANG=mr_IN fc-match
Lohit-Marathi.ttf: "Lohit Marathi" "Regular"
</pre>
    On Fedora 39 you will see    <pre>$ LANG=mr_IN fc-match
NotoSansDevanagari[wght].ttf: "Noto Sans Devanagari" "Regular"
</pre>
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->


== User Experience ==
== User Experience ==
Line 118: Line 158:


== Dependencies ==
== Dependencies ==
Not really a direct dependency, but we currently plan to implement this using the new `default-fonts` metapackages.
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this change depends?  In other words, completion of another change owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel change)? -->
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this change depends?  In other words, completion of another change owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel change)? -->


<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->


== Contingency Plan ==
== Contingency Plan ==


<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
* Contingency mechanism: (What to do?  Who will do it?) Change oweners will revert to use Lohit by default  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency mechanism: Change owners will revert the changes back to using Lohit by default  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
* Contingency deadline: before final freeze  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency deadline: before final freeze  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->

Latest revision as of 14:44, 12 September 2023


Use Noto fonts for Indic (Indian language) scripts

Summary

Google Noto fonts for Indic (Indian) languages replace the default Lohit fonts


Owner

  • Name: Jens Petersen
  • Email: <petersen@redhat.com>
  • Name: Sudip Shill
  • Email: <sshil@redhat.com>
  • Name: Akira Tagoh
  • Email: <tagoh@redhat.com>

Current status

Detailed Description

Currently the Lohit fonts are installed and used by default for Indian languages (Indic scripts). However the Lohit project is essentially inactive and at best in maintenance mode now. So we will change the default to Google's Noto Indic fonts, which are available in both Sans and Serif faces with multiple weights and as variable fonts. This should provide a more flexible modern maintained set of fonts for Indic language scripts.

Default Indic fonts changes
Language script Old default New default Serif font
Devanagari lohit-devanagari-fonts google-noto-sans-devanagari-vf-fonts google-noto-serif-devanagari-vf-fonts
Bengali lohit-bengali-fonts google-noto-sans-bengali-vf-fonts google-noto-serif-bengali-vf-fonts
Gujrati lohit-gujarati-fonts google-noto-sans-gujarati-vf-fonts google-noto-serif-gujarati-vf-fonts
Kannada lohit-kannada-fonts google-noto-sans-kannada-vf-fonts google-noto-serif-kannada-vf-fonts
Odia lohit-odia-fonts google-noto-sans-oriya-vf-fonts google-noto-serif-oriya-vf-fonts
Tamil lohit-tamil-fonts google-noto-sans-tamil-vf-fonts google-noto-serif-tamil-vf-fonts
Telugu lohit-telugu-fonts google-noto-sans-telugu-vf-fonts google-noto-serif-telugu-vf-fonts
Assamese lohit-assamese-fonts google-noto-sans-bengali-vf-fonts google-noto-serif-bengali-vf-fonts
Marathi lohit-marathi-fonts google-noto-sans-devanagari-vf-fonts google-noto-serif-devanagari-vf-fonts
Maithili lohit-devanagari-fonts google-noto-sans-devanagari-vf-fonts google-noto-serif-devanagari-vf-fonts

(Note that Noto is already default for Punjabi (Gurmukhi) and Sinhala, as well as Divehi, whereas Malayalam defaults to RIT fonts)

Feedback

There was some initial discussion on fonts list, etc, which was generally positive.

This started with:


Benefit to Fedora

Wider range of Indic (Indian) fonts will be available by default as variable fonts in both sans and serif faces with various weight styles.

Scope

  • Proposal owners:
    • update Indic langpacks (default-fonts) to use Noto fonts [draft PR]
    • update the Noto and Lohit fonts packages so that Noto Indic fonts have higher priority
    • change comps @fonts (through default-fonts) from Lohit to the corresponding Noto Indic fonts
    • update ostree desktops to use Noto Indic
    • update lorax to use Noto for Indic fonts
  • Other developers: N/A
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with Community Initiatives:

Upgrade/compatibility impact

Lohit fonts will continue to be available, but assuming the default-fonts Change is implemented users will be moved to use Noto Indic fonts by default on upgrade.

Nevertheless advanced users can use fonts-tweak-tool to change the priority of one or more Lohit fonts to be higher than Noto if they so wish.


How To Test

  • install/test default/Noto fonts on various desktops and their applications
  • test Noto Indic with and without Lohit fonts installed
  • test rendering of Indic scripts in applications/websites
  • test upgrades from Fedora 38
  • test if removing Noto Indic (and (re-)installing Lohit) still allows using Lohit as a second default.
  • (advanced) revert the font priorities using the user fonts-tweak-tool.
  • Compare default font installed for mr_IN language

On Fedora 38 you will see

$ LANG=mr_IN fc-match
Lohit-Marathi.ttf: "Lohit Marathi" "Regular"

On Fedora 39 you will see

$ LANG=mr_IN fc-match
NotoSansDevanagari[wght].ttf: "Noto Sans Devanagari" "Regular"
 

User Experience

Dependencies

Not really a direct dependency, but we currently plan to implement this using the new default-fonts metapackages.


Contingency Plan

  • Contingency mechanism: Change owners will revert the changes back to using Lohit by default
  • Contingency deadline: before final freeze
  • Blocks release? Yes

Documentation

https://sshil.fedorapeople.org/lohit-vs-noto-comparison.html

Release Notes

Google Noto fonts are now installed and used for Indic scripts (Indian language) by default instead of Lohit fonts.