After the Fedora 44 mass rebuild the gnu-free-fonts are broken. The sizes of the fonts in Fedora 43 from gnu-free-fonts-20120503-36.fc43 are: $ ls -l 43/usr/share/fonts/gnu-free/ totalt 10584 -rw-r--r--. 1 ellert ellert 299140 23 jul 2025 FreeMonoBoldOblique.ttf -rw-r--r--. 1 ellert ellert 299116 23 jul 2025 FreeMonoBold.ttf -rw-r--r--. 1 ellert ellert 395352 23 jul 2025 FreeMonoOblique.ttf -rw-r--r--. 1 ellert ellert 593372 23 jul 2025 FreeMono.ttf -rw-r--r--. 1 ellert ellert 342592 23 jul 2025 FreeSansBoldOblique.ttf -rw-r--r--. 1 ellert ellert 416260 23 jul 2025 FreeSansBold.ttf -rw-r--r--. 1 ellert ellert 763524 23 jul 2025 FreeSansOblique.ttf -rw-r--r--. 1 ellert ellert 1563984 23 jul 2025 FreeSans.ttf -rw-r--r--. 1 ellert ellert 609144 23 jul 2025 FreeSerifBoldItalic.ttf -rw-r--r--. 1 ellert ellert 1311812 23 jul 2025 FreeSerifBold.ttf -rw-r--r--. 1 ellert ellert 917244 23 jul 2025 FreeSerifItalic.ttf -rw-r--r--. 1 ellert ellert 3304596 23 jul 2025 FreeSerif.ttf While the sizes in Fedora 44 from gnu-free-fonts-20120503-37.fc44 are: $ ls -l 44/usr/share/fonts/gnu-free/ totalt 2284 -rw-r--r--. 1 ellert ellert 43092 16 jan 01.00 FreeMonoBoldOblique.ttf -rw-r--r--. 1 ellert ellert 46052 16 jan 01.00 FreeMonoBold.ttf -rw-r--r--. 1 ellert ellert 49536 16 jan 01.00 FreeMonoOblique.ttf -rw-r--r--. 1 ellert ellert 95620 16 jan 01.00 FreeMono.ttf -rw-r--r--. 1 ellert ellert 72136 16 jan 01.00 FreeSansBoldOblique.ttf -rw-r--r--. 1 ellert ellert 101960 16 jan 01.00 FreeSansBold.ttf -rw-r--r--. 1 ellert ellert 201376 16 jan 01.00 FreeSansOblique.ttf -rw-r--r--. 1 ellert ellert 187348 16 jan 01.00 FreeSans.ttf -rw-r--r--. 1 ellert ellert 179192 16 jan 01.00 FreeSerifBoldItalic.ttf -rw-r--r--. 1 ellert ellert 485028 16 jan 01.00 FreeSerifBold.ttf -rw-r--r--. 1 ellert ellert 220964 16 jan 01.00 FreeSerifItalic.ttf -rw-r--r--. 1 ellert ellert 633068 16 jan 01.00 FreeSerif.ttf I.e. much smaller, indicating there is missing information. If I try to open one of the fonts from Fedora 44 in fontforge $ fontforge 44/usr/share/fonts/gnu-free/FreeSans.ttf I get the error. "FreeSans.ttf is not in a known format (or uses features of that format fontforge does not support, or is so badly corrupted as to be unreadable)" While the font in Fedora 43 can be opened without problems. When using the font no glyphs are displayed. Reproducible: Always Steps to Reproduce: 1. Open the font files from Fedora 44 in fontforge 2. See the error message Actual Results: Broken fonts. Expected Results: Working fonts.
Do any of these commands yield output? rpm --verify gnu-free-fonts-common rpm --verify gnu-free-fonts-mono-fonts rpm --verify gnu-free-fonts-sans-fonts rpm --verify gnu-free-fonts-serif-fonts
(In reply to Gwyn Ciesla from comment #1) > Do any of these commands yield output? > > rpm --verify gnu-free-fonts-common > rpm --verify gnu-free-fonts-mono-fonts > rpm --verify gnu-free-fonts-sans-fonts > rpm --verify gnu-free-fonts-serif-fonts (I assume there is an extra "font" in the last three commands) <mock-chroot> sh-5.3# rpm --verify gnu-free-fonts-common <mock-chroot> sh-5.3# rpm --verify gnu-free-mono-fonts <mock-chroot> sh-5.3# rpm --verify gnu-free-sans-fonts <mock-chroot> sh-5.3# rpm --verify gnu-free-serif-fonts <mock-chroot> sh-5.3# rpm -q gnu-free-fonts-common gnu-free-fonts-common-20120503-37.fc44.noarch <mock-chroot> sh-5.3# rpm -q gnu-free-mono-fonts gnu-free-mono-fonts-20120503-37.fc44.noarch <mock-chroot> sh-5.3# rpm -q gnu-free-sans-fonts gnu-free-sans-fonts-20120503-37.fc44.noarch <mock-chroot> sh-5.3# rpm -q gnu-free-serif-fonts gnu-free-serif-fonts-20120503-37.fc44.noarch
$ python3 Python 3.14.2 (main, Dec 5 2025, 00:00:00) [GCC 15.2.1 20251111 (Red Hat 15.2.1-4)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> from fontTools import ttLib >>> tt43 = ttLib.TTFont("43/usr/share/fonts/gnu-free/FreeSans.ttf") >>> tt44 = ttLib.TTFont("44/usr/share/fonts/gnu-free/FreeSans.ttf") >>> tt43.keys() ['GlyphOrder', 'head', 'hhea', 'maxp', 'OS/2', 'hmtx', 'cmap', 'fpgm', 'prep', 'cvt ', 'loca', 'glyf', 'kern', 'name', 'post', 'gasp', 'FFTM', 'GDEF', 'GPOS', 'GSUB'] >>> tt44.keys() ['GlyphOrder', 'head', 'hhea', 'maxp', 'OS/2', 'hmtx', 'cmap', 'fpgm', 'prep', 'cvt ', 'loca', 'kern', 'name', 'post', 'gasp', 'FFTM', 'GDEF', 'GPOS', 'GSUB'] I.e. the 'glyf' table is missing in ths Fedora 44 version.
The build create both .ttf and .otf files. The .ttf files are not working, but the .otf files are. Can those be packaged instead? It is not clear to me why the .ttf files that used to be create correctly in Fedora 43 no longer are so in Fedora 44. The source package has not changed, but the fonts-rpm-macros and fontforge packages have both been updated between F43 and F44. diff --git a/gnu-free-fonts.spec b/gnu-free-fonts.spec index f27c862..e9a2905 100644 --- a/gnu-free-fonts.spec +++ b/gnu-free-fonts.spec @@ -96,7 +96,7 @@ make %install pushd sfd install -m 0755 -d %{buildroot}%{_fontdir} -install -p -m 644 *.ttf %{buildroot}%{_fontdir} +install -p -m 644 *.otf %{buildroot}%{_fontdir} install -m 0755 -d %{buildroot}%{_fontconfig_templatedir} \ %{buildroot}%{_fontconfig_confdir} @@ -128,11 +128,11 @@ install -Dm 0644 -p %{SOURCE7} \ install -Dm 0644 -p %{SOURCE8} \ %{buildroot}%{_datadir}/appdata/%{fontname}-serif.metainfo.xml -%_font_pkg -n mono -f %{fontconf}-mono.conf FreeMono*.ttf +%_font_pkg -n mono -f %{fontconf}-mono.conf FreeMono*.otf %{_datadir}/appdata/%{fontname}-mono.metainfo.xml -%_font_pkg -n sans -f %{fontconf}-sans.conf FreeSans*.ttf +%_font_pkg -n sans -f %{fontconf}-sans.conf FreeSans*.otf %{_datadir}/appdata/%{fontname}-sans.metainfo.xml -%_font_pkg -n serif -f %{fontconf}-serif.conf FreeSerif*.ttf +%_font_pkg -n serif -f %{fontconf}-serif.conf FreeSerif*.otf %{_datadir}/appdata/%{fontname}-serif.metainfo.xml %files common
I suspect there are many packages that symlink to the ttf fonts. I can also include the otf fonts, but the ttf fonts still probably need fixing.
@pnemade Can you shed any light on the fontforge and fonts-rpm-macros changes?
Created attachment 2128466 [details] Patch removing no-hints Removing the 'no-hints' from the flags in the build script results in working fonts.
Excellent, thank you! I'll get this to f45 and f44 ASAP.