Hi Leo, Follow-up news on font info in PDF: On 2023/06/16 20:05, Akira Yokosawa wrote: > On 2023/06/16 15:07, Leonardo Brás wrote: >> On Thu, 2023-06-15 at 19:43 +0900, Akira Yokosawa wrote: >>> [+To: Leo] >>> >>> On 2023/06/15 18:48, Akira Yokosawa wrote: >>>> Hi Paul, >>>> >>>> Commit a80a57b21a5e ("fixsvgfonts.sh: Convert sans-serif into 'DejaVu Sans'") >>>> assumed that having "DejaVu Sans Mono" is sufficent for "DejaVu Sans". >>>> >>>> It turns out that docker/Dockerfile.fedora doesn't cover "DejaVu Sans". >>>> Fedora's dejavu-sans-mono-fonts package doesn't contain "DejaVu Sans Mono"! >>>> There is a meta package of the name dejavu-fonts-all which covers them >>>> both as well as dejavu-serif-fonts. >>>> >>>> It also turns out that Answer to #9 in FAQ-BUILD.txt saying: >>>> >>>> As for Ubuntu and Fedora, packages listed in #5 should cover >>>> all the font families needed. >>>> >>>> is wrong on the Fedora front. DejaVu and Liberation fonts need >>>> font packages dejavu-fonts-all and liberation-fonts. >>>> >>>> Furthermore, Fedora 38 (released this April) has a regression of >>>> Inkscape where font markup is corrupted in SVG --> PDF conversion. >>> >>> Leo, just for you info, I see the same regression under Arch Linux. >> >> Hello Akira, thanks for letting me know! >> >>> >>> Pick a perfbook.pdf from your gitlab-ci build, and run: >>> >>> pdffonts perfbook.pdf >>> >>> You will see something like (I don't know how the corrupted encoding >>> will work in your mailbox...): >>> >>> name type encoding emb sub uni object ID >>> ------------------------------------ ----------------- ---------------- --- --- --- --------- >>> WGDPYX+LMMono8-Regular Type 1 Custom yes yes yes 1722 0 >>> ULGKTM+TeXGyreTermesX-Regular Type 1 Custom yes yes yes 1725 0 >>> OTFSIT+LMMono12-Regular Type 1 Custom yes yes yes 1726 0 >>> IYVMBP+TeXGyreTermesX-Bold Type 1 Custom yes yes yes 1741 0 >>> PSUFXP+TeXGyreTermes-Regular Type 1 Custom yes yes yes 1742 0 >>> IMBSNT+NimbusRomNo9L-Regu-Slant_167 Type 1 Custom yes yes yes 1929 0 >>> NWEUXR+LMMonoLt10-Bold Type 1 Custom yes yes yes 2227 0 >>> EOPMEH+LinBiolinumTI Type 1 Custom yes yes yes 2673 0 >>> UHVCIJ+LinBiolinumT Type 1 Custom yes yes yes 2674 0 >>> EOPMEH+LinBiolinumTI Type 1 Custom yes yes yes 2677 0 >>> OIRARM+LMMono10-Regular Type 1 Custom yes yes yes 2764 0 >>> TLODOC+txsys Type 1 Builtin yes yes yes 2828 0 >>> UFJTMD+StandardSymL Type 1 Builtin yes yes yes 2830 0 >>> IGSKIX+NewTXMI5 Type 1 Builtin yes yes yes 2831 0 >>> VVGNAR+TeXGyreTermesX-Italic Type 1 Custom yes yes yes 2921 0 >>> YFRDMR+NimbusSanL-Regu Type 1 Custom yes yes no 2980 0 >>> YFRDMR+NimbusSanL-Regu Type 1 Custom yes yes no 3012 0 >>> JZAPTL+k湌顕 CID Type 0C Identity-H yes yes yes 3038 0 >>> XCILRI+i湌顕 Type 1C WinAnsi yes yes yes 3039 0 >>> CZRRGJ+=潌顕 CID Type 0C Identity-H yes yes yes 3040 0 >>> LAEXLB+o湌顕 Type 1C WinAnsi yes yes yes 3041 0 >>> WJVJMV+NimbusSans-Regular Type 1C Custom yes yes no 3066 0 >>> WGDQZH+NimbusSans-Regular Type 1C WinAnsi yes yes no 3129 0 >>> LSRNIT+NimbusSans-BoldItalic Type 1C WinAnsi yes yes no 3130 0 >>> WGDQZH+NimbusSans-Regular Type 1C WinAnsi yes yes no 3159 0 >>> LSRNIT+NimbusSans-BoldItalic Type 1C WinAnsi yes yes no 3160 0 >>> DEIMBC+j솛慕 TrueType WinAnsi yes yes yes 3209 0 >>> RWADWA+蛒ୖ TrueType WinAnsi yes yes yes 3238 0 >>> HDCMTE+蛒ୖ TrueType WinAnsi yes yes yes 3239 0 >>> JGKXJS+½���䕖 Type 1C WinAnsi yes yes yes 3269 0 >>> ANXDLC+Xۨ㝖 TrueType WinAnsi yes yes yes 3320 0 >>> RUPDBM+ѓ㡖 Type 1C WinAnsi yes yes yes 3553 00 >>> LWHAZS+秞煕 Type 1C WinAnsi yes yes yes 3560 0 >>> RQGRST+A绞煕 TrueType WinAnsi yes yes yes 3561 0 >>> >>> [...] >>> >>> Expected output is: >>> >>> name type encoding emb sub uni object ID >>> ------------------------------------ ----------------- ---------------- --- --- --- --------- >>> WGDPYX+LMMono8-Regular Type 1 Custom yes yes yes 1722 0 >>> ULGKTM+TeXGyreTermesX-Regular Type 1 Custom yes yes yes 1725 0 >>> ICXLWS+LMMono12-Regular Type 1 Custom yes yes yes 1726 0 >>> IYVMBP+TeXGyreTermesX-Bold Type 1 Custom yes yes yes 1741 0 >>> PSUFXP+TeXGyreTermes-Regular Type 1 Custom yes yes yes 1742 0 >>> IMBSNT+NimbusRomNo9L-Regu-Slant_167 Type 1 Custom yes yes yes 1929 0 >>> NUKNCC+LMMonoLt10-Bold Type 1 Custom yes yes yes 2227 0 >>> EOPMEH+LinBiolinumTI Type 1 Custom yes yes yes 2673 0 >>> UHVCIJ+LinBiolinumT Type 1 Custom yes yes yes 2674 0 >>> EOPMEH+LinBiolinumTI Type 1 Custom yes yes yes 2677 0 >>> OIRARM+LMMono10-Regular Type 1 Custom yes yes yes 2764 0 >>> TLODOC+txsys Type 1 Builtin yes yes yes 2828 0 >>> UFJTMD+StandardSymL Type 1 Builtin yes yes yes 2830 0 >>> IGSKIX+NewTXMI5 Type 1 Builtin yes yes yes 2831 0 >>> VVGNAR+TeXGyreTermesX-Italic Type 1 Custom yes yes yes 2921 0 >>> YFRDMR+NimbusSanL-Regu Type 1 Custom yes yes no 2980 0 >>> YFRDMR+NimbusSanL-Regu Type 1 Custom yes yes no 3012 0 >>> QNDHMI+NimbusSans-Regular CID Type 0C Identity-H yes yes yes 3038 0 >>> JKBTOX+NimbusSans-Regular Type 1C WinAnsi yes yes yes 3039 0 >>> BIKSFC+NimbusSans-Bold CID Type 0C Identity-H yes yes yes 3040 0 >>> XFXZKY+NimbusSans-Bold Type 1C WinAnsi yes yes yes 3041 0 >>> WJVJMV+NimbusSans-Regular Type 1C Custom yes yes no 3066 0 >>> WGDQZH+NimbusSans-Regular Type 1C WinAnsi yes yes no 3129 0 >>> LSRNIT+NimbusSans-BoldItalic Type 1C WinAnsi yes yes no 3130 0 >>> WGDQZH+NimbusSans-Regular Type 1C WinAnsi yes yes no 3159 0 >>> LSRNIT+NimbusSans-BoldItalic Type 1C WinAnsi yes yes no 3160 0 >>> KPAYFY+steelcitycomic TrueType WinAnsi yes yes yes 3209 0 >>> IGYOWD+steelcitycomic TrueType WinAnsi yes yes yes 3238 0 >>> LVRVOR+steelcitycomic TrueType WinAnsi yes yes yes 3239 0 >>> OCNFNQ+FreeMonoBold Type 1C WinAnsi yes yes yes 3269 0 >>> DHHOAV+DejaVuSans TrueType WinAnsi yes yes yes 3320 0 >>> RVTHEX+DejaVuSansMono-Bold TrueType WinAnsi yes yes yes 3479 0 >>> ODJFYL+FreeMonoBold Type 1C WinAnsi yes yes yes 3553 0 >>> HAXSLA+URWGothic-DemiOblique Type 1C WinAnsi yes yes yes 3560 0 >>> [...] >>> >> >> IIUC, the issue is the appearing of non-ascii chars in the output of pdffonts, >> is that correct? > > Right. > >> >> Arch Linux provides two packages for DejaVu fonts: >> ttf-dejavu and ttf-dejavu-nerd, and both seem to provide DejaVu-Sans-mono >> >> In this test, I install them both, just for the sake of trying to fix the issue: >> https://gitlab.com/linux-kernel/perfbook/-/jobs/4485677006 >> >> I also added pdffonts command in the end to make it easier to verify if >> everything is fine, which still outputs non-ascii names. >> >> When I grep for DejaVuSansMono I see them appearing in the output of the job, >> and also in a previous pdf I have downloaded. >> >> I don't quite understand this, but maybe the issue is missing other fonts? >> >> Please help me understand the issue. > > As far as I see, there is no font problem on your side. > I think this is regression of Inkscape. > > As a matter of fact, Inkscape packages on most rolling-release distros > are having a more annoying regression, random SIGSEGV when run from > CLI under Gnome desktop environment. > > See: https://gitlab.com/inkscape/inkscape/-/issues/4177 > "glib2 2.76.0 breaks Command Line export" > > This issue was opened back on January 24, 2023. > It was once believed to have been resolved with a fix in gtk3, but the > issue still remains after the fixed version of gtk3 reached Fedora 38. > > For gitlab-ci, where there is no Gnome desktop involved, this issue > has never affected, but the font markup corruption has sneaked in > without being reported by anyone. > > I happened to test Dockerfile.fedora (from fedora:38) and checked if > "DejaVu Sans" was used in Intel_Core2_arch-simplified.pdf as intended, > and failed to see the font markup. > > So, I think there is nothing wrong in your gitlab-ci.yaml script. > You need to wait until the regression is fixed in the Arch Linux > Inkscape or its dependency. It turns out there was a regression in Cairo 1.17.8 (released Feb 2, 2023). It was fixed in upstream Cairo on Feb 8, 2023. Soon-to-be-released Cairo 1.18.0 should have the fix. I guess Arch Linux will get the Cairo upgrade soon after. See: https://gitlab.freedesktop.org/cairo/cairo/-/issues/806 Thanks, Akira > > I have no idea how long that would take, though. > > Or you could switch the container to a fedora:37 or ubuntu:jammy > based one for the moment. > > Thanks, Akira > >> >> Best regards, >> Leo >> >> >> >>> >>> Thanks, Akira [...]