2

I use the docker container node:20.10. This is debian 12.4. I use the gsfont package. But in the version from 12.4 I missing a lot of fonts (i.e. Helvetica /usr/share/fonts/type1/gsfonts/n019003l.pfb). This fonts are in gsfonts=1:8.11+urwcyr1.0.7~pre44-4.5 from debian 11. On installation in debian 12 I got:

# apt-get install gsfonts=1:8.11+urwcyr1.0.7~pre44-4.5
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package gsfonts is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  fonts-urw-base35

E: Version '1:8.11+urwcyr1.0.7~pre44-4.5' for 'gsfonts' was not found

But the installation of fonts-urw-base35 don't help me. I miss the font again!

How can I install the gsfont version '1:8.11+urwcyr1.0.7~pre44-4.5' on debian 12?

Gerd
  • 171

3 Answers3

1

Go to https://pkgs.org to get the .deb file.

Updated to reflect the package in the comment.

sudo dpkg install http://de.archive.ubuntu.com/ubuntu/pool/universe/g/gsfonts/gsfonts_8.11+urwcyr1.0.7~pre44-4.5_all.deb

Another possibility could be using deb-reversion:
https://manpages.ubuntu.com/manpages/focal/man1/deb-reversion.1.html


Yet, another possibility:
Well, look who it is. @StephenKitt! :-) https://unix.stackexchange.com/a/340284/254567


Manual install?
This specific font? https://github.com/vpontis/termstile/blob/master/Termstile/fonts/Helvetica%20LT%20Narrow%20Bold.ttf

  • @StephenKitt https://debian.pkgs.org/12/debian-main-amd64/t1-cyrillic_4.18+num1_all.deb.html – JayCravens Jan 11 '24 at 13:54
  • wget http://de.archive.ubuntu.com/ubuntu/pool/universe/g/gsfonts/gsfonts_8.11+urwcyr1.0.7~pre44-4.5_all.deb + apt-get install ./gsfonts_8.11+urwcyr1.0.7~pre44-4.5_all.deb WORK!!! Thank you for inspiration! But how can do this in Dockerfile in one line without file download? – Gerd Jan 11 '24 at 14:45
  • 1
    You should be able to include the absolute path to the .deb you've downloaded. – JayCravens Jan 11 '24 at 14:49
1

Add to Dockerfile:

RUN wget http://de.archive.ubuntu.com/ubuntu/pool/universe/g/gsfonts/gsfonts_8.11+urwcyr1.0.7~pre44-4.5_all.deb
RUN apt-get install -y ./gsfonts_8.11+urwcyr1.0.7~pre44-4.5_all.deb

After this the bug: Unable to read font (/usr/share/fonts/type1/gsfonts/n019003l.pfb) is fixed.

It's only a work around for the debian package bug:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1019717

I hope it helps!

Gerd
  • 171
  • 2
    Nice find! Hopefully that will get a stable update for Debian 12. – Stephen Kitt Jan 11 '24 at 15:29
  • The best solution is a Debian 12 package. But there isn't one. The siteeffect problem is real! But if I list the files of the old gsfont package. Thera are only fonts. May be that now other fonts make problems. I hope not! My application work fine! – Gerd Jan 11 '24 at 16:27
  • 1
    The bug you link is a bug in imagemagick, which expects a font in an old location. Unless you use imagemagick, that bug shouldn't affect you. – marcelm Jan 11 '24 at 22:29
1

This is debian 12.4. I use the gsfont package.

For Debian 12, this has been migrated to the fonts-urw-base35 package, which seems to have largely the same fonts, just in different locations.

But in the version from 12.4 I missing a lot of fonts (i.e. Helvetica /usr/share/fonts/type1/gsfonts/n019003l.pfb).

That font is not Helvetica, it is Nimbus (Sans Regular), which is used as a substitution for the non-free Helvetica. See /etc/ghostscript/fontmap.d/10gsfonts.conf (or 10fonts-urw-base35.conf for the new package).

In fonts-urw-base35 package, this font can be found in /usr/share/fonts/type1/urw-base35/NimbusSans-Regular.t1.

What seems to be broken is the Helvetica -> Nimbus mapping.

Debian 11, gsfonts:

% grep '/Helvetica ' /etc/ghostscript/fontmap.d/10gsfonts.conf
/Helvetica /NimbusSanL-Regu ;
% file /usr/share/fonts/type1/gsfonts/n019003l.pfb
usr/share/fonts/type1/gsfonts/n019003l.pfb: PostScript Type 1 font program data (NimbusSanL-Regu 1.06)

Debian 12, fonts-urw-base35:

% grep '/Helvetica ' /etc/ghostscript/fontmap.d/10fonts-urw-base35.conf
/Helvetica /NimbusSanL-Regu ;
% file /usr/share/fonts/type1/urw-base35/NimbusSans-Regular.t1
/usr/share/fonts/type1/urw-base35/NimbusSans-Regular.t1: PostScript Type 1 font text (NimbusSans-Regular 1.00)

As you can see, the font name in the font file changed (from NimbusSanL-Regu 1.06 to NimbusSans-Regular 1.00), but the mapping file refers to the old name.

Things might work again if you update /etc/ghostscript/fontmap.d/10fonts-urw-base35.conf. This is also worth filing a bug for.

marcelm
  • 2,485
  • Nice information! But I need the graphicsmagick package and the package need the n019003l.pfb font. The best may a fix of graphicsmagick, but there isn't! I can't substitude graphicsmagick. Changing the font mapping may work, but it is also a hack like my use of an debian 11 package in debian 12. – Gerd Jan 16 '24 at 15:06