Bug 621498 - please change fontconfig priority of gnu-free fonts from 60 to 67
please change fontconfig priority of gnu-free fonts from 60 to 67
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: gnu-free-fonts (Show other bugs)
13
All Linux
low Severity medium
: ---
: ---
Assigned To: Gwyn Ciesla
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2010-08-05 06:06 EDT by Pravin Satpute
Modified: 2010-09-01 07:02 EDT (History)
4 users (show)

See Also:
Fixed In Version: gnu-free-fonts-20090104-12.fc14
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-08-17 01:45:01 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Pravin Satpute 2010-08-05 06:06:39 EDT
Description of problem:

since .conf priority of gnu-free font is overriding, default fedora fonts, so please change it

see bug #621445 for more information

Version-Release number of selected component (if applicable):
gnu-free-*-fonts-20090104-11.fc12.noarch

How reproducible:
everytime

Steps to Reproduce:
1. fc-match :lang=ta / fc-match :lang=bn
2.
3.
  
Actual results:
it is not taking lohit

Expected results:
it should take lohit

Additional info:

This is really bug from gnu-free fonts, they should not use this priority
see "/usr/share/fontconfig/templates/fontconfig-priorities.txt"

"65-69 Fonts with less common encodings, ending with fonts that provide,       
coverage of exotic unicode blocks at the expense of drawing,quality"
Comment 1 Gwyn Ciesla 2010-08-05 10:39:00 EDT
Do you possibly mean 60 to 67?
Comment 2 Pravin Satpute 2010-08-06 00:02:25 EDT
yes, 67 will work fine
Comment 3 Gwyn Ciesla 2010-08-11 09:32:53 EDT
Build for rawhide, please test.  If it works, you want it in F-14 and F-13 as well, correct?
Comment 4 Pravin Satpute 2010-08-12 01:42:33 EDT
Yes, its working fine.

I am thinking to move samyak-fonts priority to 66
so it will get selected default for serif fonts

lohit default for sans
samyak for serif

will do that in next release

yes, it will be nice if you push it to f13 and f14 as well
Comment 5 Fedora Update System 2010-08-12 14:17:05 EDT
gnu-free-fonts-20090104-12.fc14 has been submitted as an update for Fedora 14.
http://admin.fedoraproject.org/updates/gnu-free-fonts-20090104-12.fc14
Comment 6 Fedora Update System 2010-08-12 14:17:11 EDT
gnu-free-fonts-20090104-12.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/gnu-free-fonts-20090104-12.fc13
Comment 7 Fedora Update System 2010-08-13 17:09:09 EDT
gnu-free-fonts-20090104-12.fc13 has been pushed to the Fedora 13 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update gnu-free-fonts'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/gnu-free-fonts-20090104-12.fc13
Comment 8 Fedora Update System 2010-08-17 01:44:56 EDT
gnu-free-fonts-20090104-12.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 9 Fedora Update System 2010-08-23 21:35:36 EDT
gnu-free-fonts-20090104-12.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 10 K. Sethu 2010-08-29 14:37:14 EDT
I wonder if on removal of 60-gnu-free-xxxx.conf (wherein xxxx =serif or sans or mono) the use of 67-gnu-free-xxxx.conf actually is a superfluous step since there is already a 69-unifont.conf which seems to do the same setting as 67-gnu-free-xxxx.conf files for sans, serif and mono

cat /etc/fonts/conf.d/69-unifont.conf  

[kaasethu@kaasethu ~]$ cat /etc/fonts/conf.d/69-unifont.conf 
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
	<alias>
		<family>serif</family>
		<prefer>
			<family>FreeSerif</family>
			<family>Code2000</family>
			<family>Code2001</family> <!-- plane1 and beyond -->
		</prefer>
	</alias>
	<alias>
		<family>sans-serif</family>
		<prefer>
			<family>FreeSans</family>
			<family>Arial Unicode MS</family>
			<family>Arial Unicode</family>
			<family>Code2000</family> <!-- almost everything; serif actually -->
			<family>Code2001</family> <!-- plane1 and beyond -->
		</prefer>
	</alias>
	<alias>
		<family>monospace</family>
		<prefer>
			<family>FreeMono</family>
		</prefer>
	</alias>
</fontconfig>

So each of serif, sans-serif and mono, at the installation of gnu-free fonts the above conf file sets FreeSerif, FreeSans and FreeMono as the respective fall backs which are superseded by higher elevation files such as 65-nonlatin.conf and 60-latin.conf . 

Isn't the purpose of each of  67-gnu-free-xxxx.conf already served by this 69-unifont.conf  anyway ? Or is there an additonal setting for each of the 3 generics with 67-gnu-free-xxxx.conf files?

~Sethu
Comment 11 Pravin Satpute 2010-08-30 04:19:48 EDT
aha, yeah
upstream is already providing .conf rules from 69-unifont.conf file for this family and they have took care that it will not conflict with other fonts priority by giving is lowest priority at 69

i.e FreeSerif, FreeSans, FreeMono
Comment 12 Gwyn Ciesla 2010-08-30 09:51:37 EDT
So should the ones provided by gnu-free-fonts simply be dropped?  Will the 69-unifont.conf be reliably present?
Comment 13 K. Sethu 2010-08-31 02:09:53 EDT
(In reply to comment #12)
> So should the ones provided by gnu-free-fonts simply be dropped?  Will the
> 69-unifont.conf be reliably present?

Well lets compare the content of 67-gnu-free-sans.conf (in bug fix) and the block for sans-serif in 69-unifont.conf

==========================
/usr/share/fontconfig/conf.avail/67-gnu-free-sans.conf:

<fontconfig>
−
<alias>
<family>sans-serif</family>
−
<prefer>
<family>FreeSans</family>
</prefer>
</alias>
−
<alias>
<family>FreeSans</family>
−
<default>
<family>sans-serif</family>
</default>
</alias>
</fontconfig>
==========================
==========================
/etc/fonts/conf.avail/69-unifont.conf : 
(serif and mono blocks snipped indicated as [..] for brevity here)
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
[..]
	<alias>
		<family>sans-serif</family>
		<prefer>
			<family>FreeSans</family>
			<family>Arial Unicode MS</family>
			<family>Arial Unicode</family>
			<family>Code2000</family> <!-- almost everything; serif actually -->
			<family>Code2001</family> <!-- plane1 and beyond -->
		</prefer>
	</alias>
[..]
</fontconfig>
=================================
The first <alias>....<prefer> .. </prefer>....</alias> block in 67-gnu-free-sans.conf is present in  69-unifont.conf with latter having FreeSans as top priority over other fonts and former only with FreeSans.

A significant difference between the two is that 67-gnu-free-sans.conf has an additonal block which is not in the other:

<alias>
<family>FreeSans</family>
−
<default>
<family>sans-serif</family>
</default>
</alias>

The question is what was the intended purpose of this additonal  block originally?

In Ubuntu as well as Fedora I see that 69-unifont.conf comes from fontconfig source itself. In Ubuntu installation of ttf-freefont debian package which installs the FreeSans, FreeSerif and FreeMono fonts and their bold, italic companions. But conf files  analogous to those 60 (or 67 now) numbered conf files in Fedora installed by the gnu-free rpms are not installed in UBUNTU and I do not see any problems yet due the absence of them.

So what needs to be discovered is the original purpose of those additonal blocks in those conf files in Fedora ? 

If they do not serve any necessary purpose then I think 67-gnu-free conf files can be dropped.
Comment 14 Akira TAGOH 2010-08-31 02:55:38 EDT
(In reply to comment #13)
> The question is what was the intended purpose of this additonal  block
> originally?

See http://fedoraproject.org/wiki/Fontconfig_packaging_tips

You can see the answer for your question there.

(In reply to comment #12)
> So should the ones provided by gnu-free-fonts simply be dropped?  Will the
> 69-unifont.conf be reliably present?

No. I basically agree with having separate fontconfig config files in the font packages. it flexibly works. if something duplicates with the config file in fontconfig, we should consider to disable it in fontconfig instead of getting rid of one in the font packages.
Comment 15 K. Sethu 2010-09-01 07:02:15 EDT
(In reply to comment #14)
> 
> See http://fedoraproject.org/wiki/Fontconfig_packaging_tips
> 
> You can see the answer for your question there.
> 

Yes I see it in the following tips:

//Generic names

Fontconfig is usually able to detect the font characteristics itself. Sometimes it needs a little help though:

<alias>
  <family>Name of your font</family>
  <default>
    <family>Generic like sans-serif, serif, monospace, fantasy or cursive</family>
  </default>
</alias>

Adding this rule to your package will help fontconfig choose the right generic family to substitute glyphs from if the coverage of your font is insufficient for a run of text.//

Thanks for guiding.

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