xlsfonts cant see fonts that chkfontpath has listed
Hi, I asked this in the CentOS forums but didnt get a reply, so ill try here:
Recently one of my apps started complaining it couldnt find the 6x10 font it used by default. I started poking around and saw that no apps could see the font, and then noticed they couldnt see most of my other fonts either. These fonts listed by xlsfonts are the only ones the system can see, but chkfontpath lists folders that have tons of fonts in them.
[blah@blah ~]$ xlsfonts
-misc-fixed-medium-r-semicondensed--0-0-75-75-c-0-iso8859-1
-misc-fixed-medium-r-semicondensed--13-100-100-100-c-60-iso8859-1
-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1
6x13
cursor
fixed
These are the font folders:
[blah@blah ~]$ chkfontpath
/usr/share/X11/fonts/misc:unscaled
/usr/share/X11/fonts/75dpi:unscaled
/usr/share/X11/fonts/100dpi:unscaled
/usr/share/X11/fonts/Type1
/usr/share/X11/fonts/TTF
/usr/share/fonts/default/Type1
/usr/share/fonts/bitmap-fonts
Those folders have tons of fonts in them. Ive restarted xfs but nothings changed. Its a CentOS5 box.
Any suggestions?
Comments
-
I don't run Centos, but, from what I can remember from Fedora with Gnome 2, one needs to install the fonts in System-Settings in order for the system to see them. You can also use gconf-editor (I hope I remembered that name correctly) to change the font settings.
You need to point the configuration files to the font folders in order to use them.0 -
You can add directories to directory list the /etc/fonts/fonts.conf file, after the directories have been modified run the command "/usr/bin/fc-cache -f &" as root to update the font database.0
-
Thanks for the help guys, but something still isnt right somewhere:
These are the font folders the system thinks is there:
chkfontpath
/usr/share/X11/fonts/misc:unscaled
/usr/share/X11/fonts/75dpi:unscaled
/usr/share/X11/fonts/100dpi:unscaled
/usr/share/X11/fonts/Type1
/usr/share/X11/fonts/TTF
/usr/share/fonts/default/Type1
/usr/share/fonts/bitmap-fonts
I dont need to add any folders, my font folders are all listed and each has hundreds of fonts in it:
ls /usr/share/X11/fonts/misc | wc -l
286
I update the cache:
/usr/bin/fc-cache -f
But xlsfonts still only lists a few fonts, and these the only fonts the system can see:
xlsfonts
-misc-fixed-medium-r-semicondensed--0-0-75-75-c-0-iso8859-1
-misc-fixed-medium-r-semicondensed--13-100-100-100-c-60-iso8859-1
-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1
6x13
cursor
fixed
These 6 fonts are all in /usr/share/X11/fonts/misc, but theres over 200 other fonts in that same folder that its not seeing.0 -
The command I gave you should have scanned all directories listed in the config file, have you checked the other options for fc-cache and scanned another directory or used the verbose option such as "fc-cache -v /usr/share/fonts/TTF"?0
-
I started looking into what you were saying...I see one problem...at least I think I do...I could be totally wrong about all this, but this is how it seems to me as of right this second:
On CentOS "xlsfonts" will look at the XFS subsystem. Command like fc-list and fc-cache are looking at the fontconfig subsystem. It has both. They use different config files and were pointing to different folders. XFS was looking at /usr/share/X11/fonts and fontconfig is looking at /usr/share/fonts.
So xlsfonts still isnt picking up the fonts it should, but using fc-list or fc-cache doesnt change that.
It also seems like fontconfig and xls dont really agree on font names. xls will call it the filename like "6x10.pcf" and fontconfig will call it "-misc-miscfixed-medium-r-normal--10-100-75-75-c-60-iso10646-1"
I dont have it fixed but at least im getting somewhere now. Thank you so much!! Ive been working on this for a few weeks!!
0 -
Here are is the first line of the man files for each app.
xlsfonts - server font list displayer for X
fc-cache - build font information cache files
fc-list - list available fonts
It is my understanding that the fc* applications are registering all fonts on the system, xlsfonts displays fonts for the X window system not for XFS as it works for me and I am using the ext4 filesystem.
You may find the information you need in the article at http://www.math.utah.edu/~beebe/fonts/X-Window-System-fonts.html
0 -
CentOS uses both font systems and they use different folders: http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-x-fonts.htmlRed Hat Enterprise Linux uses two subsystems to manage and display fonts under X: Fontconfig and xfs.The newer Fontconfig font subsystem simplifies font management and provides advanced display features, such as anti-aliasing. This system is used automatically for applications programmed using the Qt 3 or GTK+ 2 graphical toolkit.For compatibility, Red Hat Enterprise Linux includes the original font subsystem, called the core X font subsystem. This system, which is over 15 years old, is based around the X Font Server (xfs).
On CentOS5/Redhat it seems that XFS gets its fonts from the X config file /etc/X11/fs/config which points to /usr/share/X11/fonts, and fontconfig gets its config from /etc/fonts/font.conf which points to /usr/share/fonts. By default neither font system sees the fonts from the other system.
Seems that RH wants to move to fontconfig but still has some things that use XFS. Why they didnt just put all the fonts in 1 folder and pointed everything there so that both font systems had all the same fonts is a mystery.
0 -
You found good information, what is bugging me about your issue is the application that is having problems. Can you tell me what program is having the issue so we can investigate which font system it was using?0
Categories
- All Categories
- 177 LFX Mentorship
- 177 LFX Mentorship: Linux Kernel
- 769 Linux Foundation IT Professional Programs
- 379 Cloud Engineer IT Professional Program
- 175 Advanced Cloud Engineer IT Professional Program
- 75 DevOps IT Professional Program - Discontinued
- 7 DevOps & GitOps IT Professional Program
- 102 Cloud Native Developer IT Professional Program
- 7.6K Training Courses & Learning Paths
- 6 AI & ML Training
- 1 Blockchain & Decentralized Identity Training
- 14 Cloud & Containers Training
- 1 Cybersecurity Training
- 2 DevOps & Site-Reliability Training
- 1 Linux Kernel Development Training
- 2 Networking Training
- 2 Open Source Best Practice Training
- 3 System Administration Training
- 1 System Engineering Training
- 2 Web & Application Development Training
- 796 Hardware
- 202 Drivers
- 68 I/O Devices
- 37 Monitors
- 95 Multimedia
- 173 Networking
- 91 Printers & Scanners
- 91 Storage
- 771 Linux Distributions
- 81 Debian
- 68 Fedora
- 23 Linux Mint
- 13 Mageia
- 24 openSUSE
- 151 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 356 Ubuntu
- 465 Linux System Administration
- 31 Cloud Computing
- 73 Command Line/Scripting
- Github systems admin projects
- 98 Linux Security
- 78 Network Management
- 101 System Management
- 46 Web Management
- 125 Mobile Computing
- 20 Android
- 90 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 396 Off Topic
- 121 Introductions
- 31 Study Material
- 1K Programming and Development
- 310 Kernel Development
- 703 Software Development
- 1K Software
- 406 Applications
- 182 Command Line
- 5 Compiling/Installing
- 70 Games
- 318 Installation
- Archived
- 183 Small Talk
- 2 LFD140 Class Forum
- 1.4K LFS258 Class Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)