# Firefox fonts jagged and ugly



## i-bsd (Jan 3, 2018)

This topic really needs an up-to-date, comprehensive How-To.

Font rendering in Firefox is hideous. The webfonts pkg does not change it and every suggestion I've found does not work. 

Chromium looks fine.

Can anyone advise how to fix this and get font rendering for Firefox working as it should be?


----------



## tobik@ (Jan 3, 2018)

i-bsd said:


> The webfonts pkg does not change it and every suggestion I've found does not work.


It would be helpful if you told us what you've tried.

Try disabling bitmap fonts if you haven't already: `cd /usr/local/etc/fonts/conf.d && ln -s ../conf.avail/70-no-bitmaps.conf`


----------



## michael_hackson (Jan 3, 2018)

Hi! Can't at the moment give you any direct fix but I am joining this thread with the same interest. Out of the box, when newly installed and updated (without any font packages) Firefox renders well to me. My rendering issues started as soon I installed emulators/wine because their font packages actually override systemwise. This has been an ongoing issue for a while (would link but using secondary PC).

I am quite glad that fonts work and render well on my 2 systems apart from the wine override. It could be luck with the standard settings of my x11-wm/awesome but I think an idea would be to deinstall your fonts altogether and start clean. *Though, *if the fonts in Chrome looks clean and nice, have you tried changing to the same fonts in Firefox's settings?

If you indeed are a wine user I realised that the fonts from emulators/wine-staging render better than the ones from emulators/wine. Not really a direct fix as stated before but this saved my lazy hiney for going into some fonts config nitpicking.

Have you checked out this discussion already?
Thread HOWTO-Nicefonts.2021

Especially: "You just have to go to /usr/local/etc/fonts/conf.d and link to all the features you want in /usr/local/etc/fonts/conf.avail." – As stated by user kamikaze.


----------



## Snurg (Jan 3, 2018)

tobik@
I have not had this problem for a long time, so I just ask.
LibreOffice for example as well suffers from the problem also that under some circumstances embedded bitmap fonts intended for very small character sizes are being displayed instead of the vector fonts.
Will putting that link you suggested also disable these embedded bitmap fonts?

Edit: It will not. But there is a way to do that, see aragats post here


----------



## grahamperrin@ (Feb 18, 2018)

(Details posted to Reddit, not to this forum, because I use FreeBSD-CURRENT.)


----------



## giahung1997 (Feb 18, 2018)

i-bsd said:


> This topic really needs an up-to-date, comprehensive How-To.
> 
> Font rendering in Firefox is hideous. The webfonts pkg does not change it and every suggestion I've found does not work.
> 
> ...


I'm not expert so my answer could not help, but I try my best with my knowledge. On Linux, I observed that FF obeys fonts setting from the environment more than Chromium so usually it picked up the ugly fonts. I go to it preference, change default fonts to: Serif - Free Serif, Sans (Sans Serif) - Liberation Sans, Mono - Liberation Mono and uncheck allow site choose their own setting. Worked for me well.

p/s: with FreeSerif it look not very readable with small size so I'm also using Nosquint Plus addon


----------



## dkmueller (Aug 17, 2018)

tobik@ said:


> It would be helpful if you told us what you've tried.
> 
> Try disabling bitmap fonts if you haven't already: `cd /usr/local/etc/fonts/conf.d && ln -s ../conf.avail/70-no-bitmaps.conf`



That did the trick for me. Thank you very much!


----------



## strider (Jan 22, 2019)

This fixed my firefox problem with fonts too !
Thanks !


----------



## drhowarddrfine (Jul 13, 2019)

badbrain said:


> my shell for this user is plain old sh.


It's supposed to be. Nothing wrong with that.


badbrain said:


> When I switch to tcsh and become root first everything went right


As root, it's supposed to be tcsh. Why wasn't it on your system?


----------



## drhowarddrfine (Jul 15, 2019)

badbrain said:


> I use sudo -s guy. Don't do nitpicking.


You complained a user had sh as his shell. That's the default. So questioning your statement is not nitpicking.


----------



## badbrain (Jul 15, 2019)

Sorry for being OT but the problem is not the plain sh.

I use: sudo cd /usr/local/etc/fonts/conf.d && ln -s ../conf.avail/70-no-bitmaps.conf
This is wrong as it just cd to /usr/local/etc/fonts/conf.d as root and run ln -s as the normal user, and the symlink to 70-no-bitmaps.conf also being created on the local user's homedir.
My fault, the correct way is cd /usr/local/etc/fonts/conf.d && sudo ln -s ../conf.avail/70-no-bitmaps.conf


----------



## SirDice (Jul 15, 2019)

drhowarddrfine said:


> As root, it's supposed to be tcsh.


It's csh(1) actually. 

While both /bin/tcsh and /bin/csh refer to the same binary there is a difference in the way they are handled. Similar to how /bin/bash and /bin/sh are the same binary on a lot of Linux systems (not all of them have this). 

The command actually looks at how it's called and switches features on/off accordingly.


----------



## SirDice (Jul 15, 2019)

badbrain said:


> I use: sudo cd /usr/local/etc/fonts/conf.d && ln -s ../conf.avail/70-no-bitmaps.conf
> This is wrong as it just cd to /usr/local/etc/fonts/conf.d as root and run ln -s as the normal user, and the symlink to 70-no-bitmaps.conf also being created on the local user's homedir.
> My fault, the correct way is cd /usr/local/etc/fonts/conf.d && sudo ln -s ../conf.avail/70-no-bitmaps.conf


Common mistake. `sudo "cd /usr/local/etc/fonts/conf.d && ln -s ../conf.avail/70-no-bitmaps.conf"` should also do as expected. 

`cd /usr/local/etc/fonts/conf.d && sudo ln -s ../conf.avail/70-no-bitmaps.conf` can fail if the user isn't allowed in that directory. This isn't the case here but could happen in similar situations.


----------



## blackhaz (Jul 15, 2019)

Stepped on that landmine too. I wonder why bitmap fonts are not switched off by default. If FreeBSD has a goal of attracting more users then it's a reasonable default. Is there a reason to leave them switched on?


----------



## drhowarddrfine (Jul 16, 2019)

blackhaz Start reading from the beginning. FreeBSD imposes nothing on the user. If it defaulted to Comic Sans, some people wouldn't be happy and would complain and want instructions on how to change that. Bitmap fonts work everywhere. Comic Sans, Noto, Liberation fonts do not. You can get any system up and running on any hardware with Bitmap fonts but not necessarily with the others.

FreeBSD is a professional operating system for professionals and computer enthusiasts. They are not trying to compete with Windows or PlayStation like Linux does.


----------



## blackhaz (Jul 16, 2019)

Once an OS is installed it already imposes a set of defaults. There's no way an OS can impose "nothingness." Besides, can you think of any "professional" applications of bitmap fonts via GUI in this century? FreeBSD, in order to stay relevant, must impose a relevant set of defaults.


----------



## Beastie (Jul 16, 2019)

blackhaz said:


> Once an OS is installed it already imposes a set of defaults.


Yeah well, speaking of imposing stuff, changing the default PAGER caused quite a ruckus a while back. That's hmm... a 4-letters change. Just an anecdote that crossed my mind.



blackhaz said:


> There's no way an OS can impose "nothingness."


Of course FreeBSD can refrain from imposing anything by doing what it has always done, that is, keeping ports as close to the upstream as possible. If you check the ports tree, you'll notice most ports seldom differ greatly from the defaults and patches are mostly used to fix Linuxisms that cause problems.
FreeBSD is not "Yet Another Linux Distribution". If you're not ready for that, you'll either have to learn how to do things the FreeBSD way or use something more suitable to your needs if this is not your cup of tea.



blackhaz said:


> Besides, can you think of any "professional" applications of bitmap fonts via GUI in this century? FreeBSD, in order to stay relevant, must impose a relevant set of defaults.


And what would this "relevant set of defaults" be? Your own perhaps? I doubt it'll be the same as _my_ "relevant set of defaults"... or anyone else's for that matter. How do you reconcile thousands of different opinions and preferences? Especially when your core business is not even the desktop. The best way is to keep the upstream defaults and let every user set their own system the way they want it. Like WOPR would say, "the only winning move is not to play."


----------



## blackhaz (Jul 16, 2019)

Ah, if it's a default in the X port then this makes sense. Thanks.


----------



## drhowarddrfine (Jul 16, 2019)

blackhaz said:


> FreeBSD, in order to stay relevant, must impose a relevant set of defaults.


It does. And you can change them to whatever you want. As I said--twice already, I believe--no matter what font you set it to, not everyone will like it and will change it anyway. Even in this thread it was mentioned they like Noto fonts and Liberation font. If FreeBSD picked Noto then someone would complain about that being the default--probably cause it's Google's font. If they picked DejaVu, an excellent longtime relevant font, people would complain because it's old.

There are thousands of fonts available on Google Fonts. Which one would you pick to be the one and only font that will keep everyone happy as the default? Keep in mind that not everyone has a graphics card and you MUST keep them happy, too.

In any case, it doesn't matter! You can easily change the font to whatever you want including what any other operating system uses!


----------



## drhowarddrfine (Jul 17, 2019)

Related to a point I was trying to make earlier. It's related to my point about basic fonts as default versus newer, popular fonts.



> The reason for having those pieces of software in the base system is that they're deemed important enough that many (or even most) users will benefit from them being available out of the box, without having to download additional software. For example, almost everybody will need ssh. There are also some cases where a piece of software is kept for historical reasons or “BSD tradition”. For example, sendmail has been part of BSD UNIX for almost 40 years.
> 
> Such software is usually also available from the Ports Collection (and as binary packages). The reason for that is that the versions included in the base system are often stripped down and somewhat limited. For example, the version of ntpd included in the base system is perfectly fine to be used as a client or simple server. However, the version of ntpd in the Ports Collection includes wider support for various kinds of hardware reference clocks, and it supports SNMP and a few other things that most people won't need. Also, software in the Ports Collection is easier to update, so it is often a newer version than the one in the base system.


----------



## grahamperrin@ (Oct 23, 2021)

tobik@ said:


> … Try disabling bitmap fonts if you haven't already: `cd /usr/local/etc/fonts/conf.d && ln -s ../conf.avail/70-no-bitmaps.conf`



Is that workaround still required on some systems? 

<https://old.reddit.com/r/freebsd/comments/7kqr5l/-/hhqmt28/?context=1>

<https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=238482#c27>


----------

