You are not logged in.
Hi, sorry for the stupid title, but I'm not quite sure how else to call this.
After my last system upgrade (quite a few packages, so I can't specifically say which one broke it), font rendering in the following applications is heavily broken:
- Google Chrome
- Thunderbird
- Firefox
- SDDM
(possibly some more, but at least all KDE and most plain Qt and GTK applications are working fine).
In Chrome, the main effect is that numbers are rendered in white with a barely visible gray outline and large spaces in between. Parts of the GUI are totally unreadable (such as the address and bookmarks bar as well as the right-click context menu). Chrome is also lagging quite annoyingly.
Screenshot:
https://i.imgur.com/dotOuKn.png
Thunderbird, on the other hand is completely broken. Screenshot 2 shows my full screen. The window's minimum size is larger than that and the application is completely unusable:
https://i.imgur.com/aviNM0Q.png
I also can't take a screenshot of just the Thunderbird window without KWin crashing (screenshotting the whole screen works, though).
To fix this, I tried already:
- downgrading nvidia drivers to a known working version
- reinstalling freetype2, pango, cairo
- reinstalling all installed packages to ensure consistency
- deleting GTK config files
- downgrading kernel to LTS version
- switching from nvidia to nvidia-dkms and back
- turning off subpixel rendering
None of these steps brought me any closer to a solution and I'm running out of ideas. The fact that I'm not getting any error messages, neither in one of the affected application's terminal output nor in my system or xsession logs, isn't helping either. Otherwise I'd probably have found a working solution with the help of Google by now.
KWin compositing and glxgears work just fine.
Do you have any ideas what the problem might be or what I could try next? Thanks!
Mod note: changed oversized images to urls. Please read the Code of Conduct and only post thumbnails. -- WorMzy
Last edited by phoerious (2017-10-06 21:18:22)
Offline
Have you tried another theme?
Moving to NC...
Offline
Ah, yes. Forgot to add that to the list. I tried all installed GTK themes, but the behavior is the same as with Breeze-GTK.
BTW this is not a newbie problem.
Last edited by phoerious (2017-10-06 21:43:54)
Offline
Post the file ~/.config/gtk-3.0/settings.ini
Maybe it is since: upgraded gtk3 (3.22.21-1 -> 3.22.24-1)
Personally I use the Breeze theme in openbox and it works with Chromium and Thunderbird.
Last edited by berbae (2017-10-07 08:48:32)
Offline
Maybe I wasn't clear enough. It's not a theming issue. It's to do with font loading / font rendering being messed up in only some applications. SDDM is not GTK and other GTK applications work fine. Again, I also don't know why this is in the Newbie Corner now. If it was just some messed up GTK theme, I wouldn't be posting at all.
To reconcile: fonts are not loaded or displayed correctly. Numbers are especially bad. Some parts of the GUI render no fonts at all (or with the background's color, who knows). The most recent version of Chrome also renders large gaps in between words.
I noticed that web fonts are rendered mostly right, but any fonts loaded from the system are not. They are replaced by a standard font that is rendered in the most broken way imaginable. The DOM view of the Chrome web developer tools is rendered with the same font and not the usual monospace font. Applying a font-family style to an element on a website has no effect if it's not a web font. Chrome is also lagging quite badly.
In Thunderbird it's even worse. Some fonts are gigantic and mess up the whole layout making the application unusable.
I suspect some sort of bug in freetype, cairo or the Nvidia driver or any interaction between these. But I'm not sure. Maybe it's some misconfiguration somewhere. But it's certainly not a theming problem. I tried resetting configurations in my ~/.config/fontconfig folder, but without success.
Last edited by phoerious (2017-10-07 09:43:35)
Offline
Alright, I found the problem. Until recently, the following (global) fontconfig worked perfectly fine to enable color emoji and override the standard DejaVu emoji:
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<match target="pattern">
<edit name="family" mode="prepend">
<string>Noto Color Emoji</string>
</edit>
</match>
</fontconfig>This doesn't seem to work anymore with the most recent fontconfig / freetype2 versions (or maybe the new noto-fonts-emoji package is to blame). The current noto-fonts-emoji package, however, appears to ship another /etc/fonts/conf.avail/66-noto-color-emoji.conf which does work. But unfortunately, it only defines aliases for emoji fonts and does not prepend the emoji font to the default sans-serif font. Therefore I still see the ugly B/W DejaVu emoji and only missing glyphs are replaced by Noto emoji.
Adding the following match section seems to do the job:
<match>
<test name="family"><string>sans-serif</string></test>
<edit name="family" mode="prepend" binding="strong">
<string>DejaVu Sans No Emoji</string>
<string>Noto Color Emoji</string>
</edit>
</match>but it only works in Chrome and breaks font rendering again in Thunderbird (although not as badly as before, since it's restricted to match sans-serif).
I'd be much obliged if someone has any tips how to get it working again in a way that doesn't break my email client.
Last edited by phoerious (2017-10-07 10:57:59)
Offline
I know that a recent cairo update included native support for coloured emoji, what happens if you remove all of your custom fontconfig settings?
Offline
Well, that's how I found the problem in the first place. If I remove all configs, I get standard font rendering in all its ugliness with embedded bitmaps fonts here and there and with the default font's built-in B/W emoji glyphs.
Offline
I had a similar problem a while ago with fonts in urxvt.
It seems that freetype 2.8.1 refuses to load some fonts. Looks like it could be a problem with the fonts themselves.
For the time being I downgraded to freetype2 2.8-2
Offline