Re: [PATCH -perfbook 0/6] Update Dockerfiles

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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?

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.

Best regards,
Leo



> 
>         Thanks, Akira
> 
> > 
> > So Deckerfile.fedora should stay with Fedora 37 for the moment.
> > 
> > Quick search of upstream Inkscape's issue tracker didn't hit the
> > font markup regression.  I'll open an issue there unless somebody
> > else beats me to it.
> > 
> > So, this patch set consists of the following
> > 
> > Patch 1/6 adds check of "DejaVu Sans" as nice-to-have font.
> > 
> > Patch 2/6 updates FAQ-BUILD.txt and Dockerfile.fedora for nice-to-have
> > font packages.
> > 
> > Patch 3/6 updates Dockerfile.fedora to stay with Fedora 37, using an ARG
> > variable so that building from fedora:38 can be possible.
> > It also adds popller-utils to check the font markup info in PDF properties.
> > 
> > Patch 4/6 updates Dockerfile (from ubuntu) so that the default base
> > image is the "latest" (jammy at the moment).  There is no reason to stick
> > with focal (20.04).
> > 
> > Patch 5/6 adds poppler-utils to Dockerfile (from ubuntu) to detect
> > Inkscape regression early in case it actually sneaks in.
> > (Note: Ubuntu 23.04 is safe at the moment.)
> > 
> > Patch 6/6 changes the default uid:gid pair of container images built
> > from Dockerfiles to 0:0, which is for rootless mode docker/podman.
> > Repository at dockerhub for prebuilt images is changed to
> > akiyks/perfbook-build, where the tags "latest" and "fedora" have
> > uid:gid pair of 0:0.
> > 
> >         Thanks, Akira
> > --
> > Akira Yokosawa (6):
> >   Makefile: Add 'DejaVu Sans' to nice-to-have fonts
> >   FAQ-BUILD: Update nice-to-have fonts for SVG figures
> >   docker/Dockerfile.fedora: Stay with Fedora 37 for the moment
> >   docker/Dockerfile: Use 'latest' as the default tag
> >   docker/Dockerfile: Add poppler-utils package
> >   Dockerfile: Make uid:gid = 0:0 the default
> > 
> >  FAQ-BUILD.txt            | 37 ++++++++++++++++++++-----------------
> >  Makefile                 | 15 ++++++++++++---
> >  docker/Dockerfile        |  9 +++++----
> >  docker/Dockerfile.fedora | 16 +++++++++++-----
> >  4 files changed, 48 insertions(+), 29 deletions(-)
> > 
> > 
> > base-commit: a80a57b21a5e8ea3dfa90471126920a1131682f7





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux