Bug#981587: fontconfig prefers Bold and Oblique variants of DejaVu Sans Mono over Inconsolata or other regular monospace fonts

Daniel Kahn Gillmor dkg at fifthhorseman.net
Mon Feb 1 19:59:34 GMT 2021


Package: fontconfig
Version: 2.13.1-4.2
Severity: normal
Control: affects -1 src:fonts-dejavu

DejaVu Sans Mono font variants "Bold" and "Oblique" don't get
appropriately pruned when the user searches fontconfig for a "monospace"
font.

if i use `fc-match --all monospace` i see all Bitstream Vera Mono font
variants come first:

0 dkg at alice:~$ fc-match --all monospace | head
VeraMono.ttf: "Bitstream Vera Sans Mono" "Roman"
VeraMoBd.ttf: "Bitstream Vera Sans Mono" "Bold"
VeraMoIt.ttf: "Bitstream Vera Sans Mono" "Oblique"
VeraMoBI.ttf: "Bitstream Vera Sans Mono" "Bold Oblique"
DejaVuSansMono.ttf: "DejaVu Sans Mono" "Book"
DejaVuSansMono-Bold.ttf: "DejaVu Sans Mono" "Bold"
DejaVuSansMono-Oblique.ttf: "DejaVu Sans Mono" "Oblique"
DejaVuSansMono-BoldOblique.ttf: "DejaVu Sans Mono" "Bold Oblique"
Inconsolata.otf: "Inconsolata" "Medium"
Andale_Mono.ttf: "Andale Mono" "Regular"
0 dkg at alice:~$ 

But while using --sort (which applies pruning) removes the "Bold" and
"Oblique" and "Bold Oblique" variants of Bitstream Vera Mono, as i'd
expect:

0 dkg at alice:~$ fc-match --sort monospace | head
VeraMono.ttf: "Bitstream Vera Sans Mono" "Roman"
DejaVuSansMono.ttf: "DejaVu Sans Mono" "Book"
DejaVuSansMono-Bold.ttf: "DejaVu Sans Mono" "Bold"
DejaVuSansMono-Oblique.ttf: "DejaVu Sans Mono" "Oblique"
Inconsolata.otf: "Inconsolata" "Medium"
Andale_Mono.ttf: "Andale Mono" "Regular"
Courier_New.ttf: "Courier New" "Regular"
Courier_New_Italic.ttf: "Courier New" "Italic"
n022003l.pfb: "Nimbus Mono L" "Regular"
NimbusMonoPS-Regular.otf: "Nimbus Mono PS" "Regular"

But note that above, the "Bold" and "Oblique" variants of DejaVu Sans Mono
remain unpruned (the "Bold Oblique" variant is pruned, for some reason).

I confess i don't really understand fontconfig very well, but this seems
inconsistent and problematic.  Certainly, if the standard "Book" form of
DejaVu Sans Mono was unavailable for some reason, a fallback to the
"Medium" form of Inconsolata would be better than a fallback to "Bold"
or "Oblique" DejaVu Sans Mono.

Please do to reassign this to DejaVu Sans Mono if that's the appropriate
place for the fix.

       --dkg

PS i stumbled into this while researching https://bugs.debian.org/981577

-- System Information:
Debian Release: bullseye/sid
  APT prefers testing-debug
  APT policy: (500, 'testing-debug'), (500, 'testing'), (200, 'unstable-debug'), (200, 'unstable'), (1, 'experimental-debug'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.10.0-1-amd64 (SMP w/4 CPU threads)
Kernel taint flags: TAINT_WARN, TAINT_FIRMWARE_WORKAROUND
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages fontconfig depends on:
ii  fontconfig-config  2.13.1-4.2
ii  libc6              2.31-9
ii  libfontconfig1     2.13.1-4.2
ii  libfreetype6       2.10.4+dfsg-1

fontconfig recommends no packages.

fontconfig suggests no packages.

-- no debconf information
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 227 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-freedesktop-maintainers/attachments/20210201/98721f39/attachment.sig>


More information about the Pkg-freedesktop-maintainers mailing list