Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#1028897: fontconfig-config: default latin fonts changed from DejaVu to Noto

206 views
Skip to first unread message

Raphaël Halimi

unread,
Jan 14, 2023, 9:10:05 AM1/14/23
to
Package: fontconfig-config
Version: 2.14.1-3

Dear developers,

In the recent upgrade from fontconfig 2.13 to 2.14, the default latin
fonts changed from DejaVu to Noto, in the file
"/usr/share/fontconfig/conf.avail/60-latin.conf".

The default fonts in Debian is still supposed to be DejaVu, as stated in
the debconf template :

"Select 'Native' if you mostly use DejaVu (the default in Debian)"

The difference is very slight for the serif and sans families used in
most graphical applications like Firefox or Thunderbird, but for the
monospace family, it makes terminals look ugly : gnome-terminal handles
the spacing somewhat right, but the resulting window is square-shaped,
far from what one could be accustomed to; and in Xterm (if configured to
use whatever TrueType font aliased to "Monospace") it's even worse, it
handles the spacing completely wrong, resulting in over-spaced
characters and a comically large shaped window.

I don't know if this change is intentional (to follow upstream
configuration) or if it's an overlook; of course feel free to close the
bug as wontfix if the change is intentional (and maybe update the
debconf template), but if that's the case, please at least mention
somewhere the "right" way to revert that change, as it's not intuitive.

I created "/etc/fonts/conf.avail/60-latin.conf" which switches DejaVu
and Noto to make the former the default, and I initially thought that
re-configuring the package would pick up the file by itself (seeing that
the filename is the same, the file in "/etc" superseding the one in
"/usr", like other tools usually do), but it's not the case, and I had
to symlink it manually in "/etc/fonts/conf.d", overwriting the original
one linking to "/usr/share/fontconfig/conf.avail/60-latin.conf", which
belongs to the package. Is that the correct way of changing default
fontconfig settings ?

Regards,

--
Raphaël Halimi

Raphaël Halimi

unread,
Jan 14, 2023, 1:52:15 PM1/14/23
to
reassign -1 fontconfig
merge -1 1028643
tags -1 patch
thanks

Sorry, I checked the bugs reported against fontconfig-config before
filing this one, I didn't think to check fontconfig also.

If you wish to keep DejaVu as default, here is a simple patch to do that.

Regards,

--
Raphaël Halimi
keep-dejavu-as-default.patch

Raphaël Halimi

unread,
Jan 14, 2023, 4:12:10 PM1/14/23
to
reassign -1 fontconfig
retitle -1 fontconfig: wrong name for the Noto monospace font
merge -1 1028643
tags -1 patch
thanks

Le 14/01/2023 à 19:45, Raphaël Halimi a écrit :
> If you wish to keep DejaVu as default, here is a simple patch to do that.

Ok, scratch this patch. I know that Debian don't like to diverge from
upstream (and I'm a maintainer myself), so this was not a good idea.
Moreover, the change from DejaVu to Noto was not the root cause of the
problem.

The problem is that the monospace Noto font is actually "Noto Mono" and
not "Noto Sans Mono" (probably a typo on upstream's part).

If you use a font manager you'll see that there is indeed a font called
"Noto Sans Mono", but if you filter them out to list only the monospace
fonts, you can see that there's no font called "Noto Sans Mono" among
them, but there is one called "Noto Mono".

Using this one (which I now believe is the "real" monospace font from
Noto) as default for the monospace family does fix both Xterm and
gnome-terminal (and probably other terminals too).

This new patch fixes what I think is actually a bug (and which probably
needs to be forwarded to upstream).

Regards,

--
Raphaël Halimi
fix-default-monospace-font.patch

Raphaël Halimi

unread,
Jan 14, 2023, 4:12:10 PM1/14/23
to
reassign 1028897 fontconfig
retitle 1028897 fontconfig: wrong name for the Noto monospace font
merge 1028897 1028643
tags 1028897 patch
thanks

--
Raphaël Halimi
fix-default-monospace-font.patch

Gunnar Hjalmarsson

unread,
Aug 16, 2023, 11:40:05 AM8/16/23
to
Hi Raphaël!

Raphaël Halimi wrote:
> The problem is that the monospace Noto font is actually "Noto Mono" and
> not "Noto Sans Mono" (probably a typo on upstream's part).
>
> If you use a font manager you'll see that there is indeed a font called
> "Noto Sans Mono", but if you filter them out to list only the monospace
> fonts, you can see that there's no font called "Noto Sans Mono" among
> them, but there is one called "Noto Mono".

That's a misconception, and upstream is to blame for it. Not
Freedesktop, though, but Google.

Noto Sans Mono is a monospace font shipped by the fonts-noto-mono
package in Debian. So is Noto Mono (previously named Droid Mono). The
problem is that Noto Sans Mono does not declare itself as such properly.
Please see this upstream gnome-terminal issue:

https://gitlab.gnome.org/GNOME/gnome-terminal/-/issues/7960

That should make you understand what it is I'm trying to say. :/

> Using this one (which I now believe is the "real" monospace font from
> Noto) as default for the monospace family does fix both Xterm and
> gnome-terminal (and probably other terminals too).

So you have found that the older Noto Mono font looks better in
terminals than Noto Sans Mono. That's interesting.

In any case I'm pretty sure that there is no typo in 60-latin.conf, so
your patch is based on false premises.

But with that said, if other users are of the same opinion as you, it
may be motivated to consider a Debian patch as regards the default
monospace font for latin scripts. Personally I can think that going back
to DejaVu Sans Mono should should be a more natural step, in that case.
Noto Mono isn't even mentioned in 60-latin.conf.

--
Cheers,
Gunnar Hjalmarsson

Gunnar Hjalmarsson

unread,
Aug 19, 2023, 10:10:04 AM8/19/23
to
Hi again,

As you may have seen, I submitted <https://bugs.debian.org/1050043> and
fixed it. Thanks for mentioning it!

On 2023-08-17 15:34, Raphaël Halimi wrote:
> IMHO, if Debian wants to follow the upstream fontconfig default to
> use the Noto fonts, the system should work without the DejaVu
> packages installed, so it would make more sense to patch fontconfig
> to use Noto Mono as a default and keep the "Noto look" across the
> whole system, than to go back to DejaVu Sans Mono.

As regards "Noto look", and despite of the name "Noto Mono", personally
I think that DejaVu Sans Mono aligns better with Noto Sans/Serif than
Noto Mono does. Look at the letter 'g', for instance.

Also:

* If Debian would change the default monospace font, we would not follow
upstream. That's true whether we would pick Noto Mono or DejaVu Sans Mono.

* There were reasons why I broke out DejaVu Sans Mono to its own
package. :) Given that change, it's possible to install
fonts-dejavu-mono without installing fonts-dejavu-core.

For those reasons I disagree with the quoted statement.

Another question is if the Noto Sans Mono deficiency is important enough
to motivate a Debian level change in this respect. I don't know.
@Fabian, I sent this reply to you as well in the hope to broaden the
discussion a bit.

It's worth mentioning that the fonts-noto packages in Debian ship almost
3 years old fonts. An update to latest upstream would be highly
desirable. Possibly Noto Sans Mono has improved.

--
Cheers,
Gunnar

Gunnar Hjalmarsson

unread,
Aug 20, 2023, 6:40:04 AM8/20/23
to
Control: owner -1 gunn...@debian.org
Control: tags -1 + pending

On 2023-08-19 17:01, Raphaël Halimi wrote:
> Le 19/08/2023 à 16:04, Gunnar Hjalmarsson a écrit :
>> It's worth mentioning that the fonts-noto packages in Debian ship
>> almost 3 years old fonts. An update to latest upstream would be
>> highly desirable. Possibly Noto Sans Mono has improved.
>
> I didn't know that. Thanks for mentioning it.
>
> So, I just downloaded NotoSansMono-Regular.ttf from its new home [1]
> (the old repository in the Debian copyright file has been archived),
> opened it in font-viewer and... Sadly, the spacing is still
> "Proportional" and not "Monospace" :(

Thanks for doing that. So we will probably need to live with it for the
foreseeable future. And yes, it's a bit sad.

Anyway, I'm now convinced that the status of Noto Sans Moto motivates a
change of the default monospace font in Debian. Well, you and I haven't
agreed on what to put there instead, so how about a compromise where we
pick both? :)

https://salsa.debian.org/freedesktop-team/fontconfig/-/commit/6fae069d

While I still hesitate, since the change affects so many users, I have
decided to act. After all we are in the beginning of the trixie
development cycle, so there is plenty of time to change it later. By
making the change in unstable and testing, we expose it to the users.
Many will probably not even notice and some will like it. And if some
users disapprove of the change, the broader discussion we haven't had
may happen later.

Thanks for your perseverance!

--
Cheers,
Gunnar

Gunnar Hjalmarsson

unread,
Aug 20, 2023, 4:20:06 PM8/20/23
to
On 2023-08-20 21:34, Raphaël Halimi wrote:
> As I understand it, this will make fontconfig select DejaVu Sans Mono
> on most desktop installations (since libreoffice depends on both
> sets), and Noto Mono on a handful of installations, namely, minimal
> installations which will have only fonts-noto-{core,mono} installed,
> and not fonts-dejavu-{core,mono}.

That's my understanding too.

> Thus, the default font for the "Monospace" alias will depend on the
> installed packages.

That's always the case, isn't it? The output of "fc-match" or "fc-match
mono" depends on a combo of available fonts and the font configuration.

As an example, and since I work with Ubuntu as well, Ubuntu 23.04 also
has fontconfig 2.14, but most users haven't noticed since
fonts-noto-core is not installed by default (neither is the libreoffice
binary, which explains the difference to Debian in this respect). Ubuntu
23.10 will include fonts-noto-core, though, so there is an ongoing work
with deciding both the set of pre-installed font packages and possible
adjustments of the configuration.

> I'm okay with that.

Good. :)

> Thanks for fixing it :)

N.p.

> Yes, let's see what users think of the change. I have good hope that
> most people will be satisfied.

Let's keep our fingers crossed.

/ Gunnar

fab...@greffrath.com

unread,
Aug 21, 2023, 3:00:06 AM8/21/23
to
Hi Gunnar,

Am 2023-08-19 16:04, schrieb Gunnar Hjalmarsson:
> Another question is if the Noto Sans Mono deficiency is important
> enough to motivate a Debian level change in this respect. I don't know.
> @Fabian, I sent this reply to you as well in the hope to broaden the
> discussion a bit.

thanks for asking my opinion!

Well, to be honest, the first thing I did after the change of the
default monospace font in fontconfig was to manually change my terminal
font back to DejaVu Sans Mono (I use FiraCode in my text editor anyway,
so no need to change anythere there). I just can't stand the look of the
Noto font family, and Noto Mono in particular.

However, I don't think that the upstream change to prefer Noto Mono over
DejaVu Sans Mono was a decision based on aesthetics, but on sheer number
of available glyphs. I guess they want to make sure that the default
font chosen is the one that's available for the most script types.

However, we, in Debian, as a distribution, have all the rights to aim
for the most aesthetically pleasing view of our default installation and
thus I support the change back to DejaVu Sans Mono as the default
monospace font. This, and we already support a localized installation
and install some additional font packages based on the locale set during
D-I. So, in the end, we always end up with more than just the default
font, and thus can prefer one that "looks better" and gets supported by
other fonts for additional glyph coverage.

Cheers,

- Fabian

Gunnar Hjalmarsson

unread,
Aug 21, 2023, 4:10:04 AM8/21/23
to
On 2023-08-21 08:52, fab...@greffrath.com wrote:
> However, we, in Debian, as a distribution, have all the rights to aim
> for the most aesthetically pleasing view of our default installation
> and thus I support the change back to DejaVu Sans Mono as the default
> monospace font. This, and we already support a localized
> installation and install some additional font packages based on the
> locale set during D-I. So, in the end, we always end up with more
> than just the default font, and thus can prefer one that "looks
> better" and gets supported by other fonts for additional glyph
> coverage.

Thanks for your comment, Fabian. Since you have managed font packages in
Debian for several years, your blessing of the change is important to
me. The quoted part above put it into context.

--
Cheers,
Gunnar
0 new messages