On Fri, Jan 05, 2024 at 06:44:47PM +0900, Akira Yokosawa wrote: > Hi Paul, > > [Cc 0/8 and 8/8 to Leo, Patch 8/8 touches gitlab-ci.yml] > > Frequent crashes of Inkscape I encountered in 2023, which was mitigated > in commit f307e19f2be0 ("Prevent inkscape from interacting with desktop > manager"), made me look into alternative SVG --> PDF converters. > > It turns out that recent versions of rsvg-convert work reasonably well > for perfbook. By "recent versions", I mean 2.52.5 and 2.57.x. > rsvg-convert is a light-weight CLI command and is much faster than inkscape. > > Sequential SVG --> PDF conversion time I get from > "make cleanfigs-svg; env time make figs": > > elapsed > Inkscape: 21.45s > rsvg-convert: 6.05s > > So patches 1/8--4/8 add rules in Makefile for using rsvg-convert if it > is recent enough. > > One caveat: There is a SVG cartoon drawn by an ancient version of Inkscape, > for which very recent versions of rsvg-convert produce distorted background > of outlined text. > > Patch 5/8 retouches the cartoon and put a SVG compatible with librsvg as > cartoons/r-2023-Memory-barriers.svg. > > Patches 6/8 and 7/8 adjust FAQ-BUILD and Dockerfiles accordingly. > > Patch 8/8 updates gitlab-ci.yml. It needs an explicit ACK or Tested-by: > from Leo before applying. > > Finally, this series wouldn't affect those of you who don't have > rsvg-convert. It does seem to deal well with rsvg-convert v2.52.5, so queued. Especially given that I was having difficulty with inkscape's conversions to PDF for another document. I overcame these (I kid you not!) by hand-editing one of perfbook's .svg files. So thank you very much! Again, queued, and I will be pushing this out shortly. Thanx, Paul > Thanks, Akira > -- > Akira Yokosawa (8): > Makefile: Add rules to use rsvg-convert for SVG --> PDF conversion > Makefile: Don't use rsvg-convert < 2.57 > Makefile: Allow rsvg-convert 2.52 > Makefile: Use rsvg-convert anyway if no inkscape is found > cartoons: Retouch r-2014-Memory-barrier.svg > FAQ-BUILD: List package for rsvg-convert in package lists > docker: Add packages for rsvg-convert > gitlab-ci.yml: Install librsvg instead of inkscape > > FAQ-BUILD.txt | 23 +- > Makefile | 48 +- > cartoons/r-2023-Memory-barrier.svg | 1130 ++++++++++++++++++++++++++++ > cpu/overview.tex | 2 +- > docker/Dockerfile | 4 +- > docker/Dockerfile.fedora | 7 +- > utilities/gitlab-ci.yml | 2 +- > 7 files changed, 1198 insertions(+), 18 deletions(-) > create mode 100644 cartoons/r-2023-Memory-barrier.svg > > > base-commit: 1ea46c6d43475fbdf97404dec28a58036d505bc3 > -- > 2.34.1 > >