Build one package and turn it into a standard TeX Live package file installable with `tlmgr install --file`

Sergio Callegari sergio.callegari at
Wed Nov 30 08:54:46 CET 2022

Thanks Norbert, Karl you have been extremely helpful!  Sorry Karl for 
having wasted some of your time by asking you a question and then 
finding out how to build the package while you were answering...

My package appears to work, so I think that the gs10 I have still has 
the old pdf interpreter and dvisvgm is able to use it. Because dvisvgm 
directly plugs into libgs, it can probably get to the old interpreter 
without the need to set any environment variable (like 

In case I find some misbehavior, I'll write to the list and if needed to 
the dvisvgm author.

Some final notes about the experience, in case someone finds them useful:

1. The reason why I need gs support in dvisvgm is that I use it to 
convert pdfs made with lualatex to svg, for import in Libreoffice 
(reusing pieces of articles for slides, for example). In principle 
Libreoffice should be able to import PDFs but the way in which it does 
it is still very broken IMHO (a solid white background is introduced, 
PDF is transformed into a bitmap for rendering with a fixed and not very 
good resolution, etc.). Incidentally, having a good pdf->svg path 
working out of the box in texlive (regardless of the distro choices) 
could in principle enable the excellent texmaths add on for Libreoffice 
(that let you write math via a latex engine) to add support the lualatex 
engine in addition to xelatex and latex, permitting the use of packages 
that use lua.

2. For TL23 we should be fine (probably by that time dvisvgm 3 will also 
be released). Also ghostscript will stay at version 10 for some time. 
However, an issue similar to the present one may re-surface when gs 11 
is released. Even if dvisvgm is moving to a different pdf interpreter, I 
think libgs will still be needed for dvi files with postscript specials. 
I wonder if TL or TLcontrib should not include a ghostscript or a libgs 
package providing its own libgs for cases where the system libgs is 
unaligned with the requirements.

3. Even if for the dvisvgm case (where you basically have a single 
binary) trying to build a package for tlmgr may appear an overkill 
(given that you can merely copy the file in the appropriate place), I 
still see value in it. On one hand, for unexperienced users it is way 
easier to `tlmgr install --file` than to `cp` getting the destination 
right. On the other hand, a similar necessity may occur for packages 
including more than a single file in the future. For this reason 
learning something about the process was interesting to me. In 
perspective, I think that having a sort of `aur` or `ppa` for texlive 
would be nice.

Thanks again,


More information about the tex-live mailing list.