Subject: 14.0.9; PDF2DSC removed in Ghostscript 10.05.0

From: philanche <[email-masked]>
Date: Fri, 14 Mar 2025 12:32:20 +0000

In Ghostscript 10.05.0, pdf2dsc was removed, as of the following commit:
https://cgit.ghostscript.com/cgi-bin/cgit.cgi/ghostpdl.git/commit/?id=be0f68e6119879e440c134ae1c2582574e7942bd. Since
preview-auctex uses pdf2dsc as part of the rendering, trying to preview
anything, such as a simple \(x\), will give the following error.

Emacs : GNU Emacs 30.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.48, cairo version 1.18.2)
Package: 14.0.9

Run buffer contents:

Running `Preview-LaTeX' on `minimal' with ``lualatex -interaction=nonstopmode -file-line-error \&prv_minimal "/AUCTEXINPUT{" minimal.tex "}"''
This is LuaHBTeX, Version 1.21.0 (TeX Live 2025/Arch Linux)
restricted system commands enabled.
LaTeX2e <2024-11-01> patch level 2
L3 programming layer <2025-01-18>
CUSTOMISED FORMAT. Preloaded files:
.
article.cls 2024/06/29 v1.4n Standard LaTeX document class
size10.clo 2024/06/29 v1.4n Standard LaTeX file (size option)
.
(./minimal.tex (/usr/share/texmf-dist/tex/latex/l3backend/l3backend-luatex.def)
No file minimal.aux.
(/home/diane/.emacs.d/elpa/auctex-14.0.9/latex/preview.sty (/usr/share/texmf-dist/tex/generic/luatex85/luatex85.sty) (/home/diane/.emacs.d/elpa/auctex-14.0.9/latex/prtightpage.def) (/home/diane/.emacs.d/elpa/auctex-14.0.9/latex/prauctex.def
No auxiliary output files.

(/home/diane/.emacs.d/elpa/auctex-14.0.9/latex/prauctex.cfg)) (/home/diane/.emacs.d/elpa/auctex-14.0.9/latex/prfootnotes.def)
Preview: Fontsize 10pt
Preview: PDFoutput 1
)
./minimal.tex:4: Preview: Snippet 1 started.
<-><->

l.4 \(
x\)
Preview: Tightpage -32891 -32891 32891 32891
./minimal.tex:4: Preview: Snippet 1 ended.(282168+0x374556).
<-><->

l.4 \(x\)

[1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}])
(see the transcript file for additional information)
432 words of node memory still in use:
3 hlist, 1 vlist, 1 rule, 2 glue, 6 kern, 2 glyph, 5 attribute, 48 glue_spec, 5 attribute_list, 1 write nodes
avail lists: 1:1,2:18,3:2,4:1,5:11,6:2,7:12,8:1,9:8
</usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb>
Output written on minimal.pdf (1 page, 8277 bytes).
Transcript written on minimal.log.

TeX Output exited as expected with code 1 at Fri Mar 14 12:21:51
Running `Preview-PDF2DSC' with ``pdf2dsc minimal.pdf minimal.prv/tmp2lvtBk/preview.dsc''
/bin/sh: line 1: pdf2dsc: command not found

Preview-PDF2DSC exited abnormally with code 127 at Fri Mar 14 12:21:51
PDF2DSC sentinel: Opening input file: No such file or directory, /home/diane/emacs/tex/minimal.prv/tmp2lvtBk/preview.dsc

current state:
==============
(setq
AUCTeX-version "14.0.9"
LaTeX-command-style '(("" "%(PDF)%(latex) %(file-line-error) %(extraopts) %(output-dir) %S%(PDFout)"))
image-types '(svg webp png gif tiff jpeg xpm xbm pbm)
preview-image-type 'png
preview-image-creators '((dvipng (open preview-gs-open preview-dvipng-process-setup) (place preview-gs-place)
(close preview-dvipng-close))
(png (open preview-gs-open) (place preview-gs-place) (close preview-gs-close))
(jpeg (open preview-gs-open) (place preview-gs-place) (close preview-gs-close))
(pnm (open preview-gs-open) (place preview-gs-place) (close preview-gs-close))
(tiff (open preview-gs-open) (place preview-gs-place) (close preview-gs-close)))
preview-dvipng-image-type 'png
preview-dvipng-command "dvipng -picky -noghostscript %d -o %m/prev%%03d.png"
preview-pdf2dsc-command "pdf2dsc %(O?pdf) %m/preview.dsc"
preview-gs-command "/usr/bin/rungs"
preview-gs-options '("-q" "-dDELAYSAFER" "-dNOPAUSE" "-DNOPLATFONTS" "-dPrinted" "-dTextAlphaBits=4"
"-dGraphicsAlphaBits=4")
preview-gs-image-type-alist '((png png "-sDEVICE=png16m") (dvipng png "-sDEVICE=png16m")
(jpeg jpeg "-sDEVICE=jpeg") (pnm pbm "-sDEVICE=pnmraw")
(tiff tiff "-sDEVICE=tiff12nc"))
preview-fast-conversion t
preview-prefer-TeX-bb nil
preview-dvips-command "dvips -Pwww -i -E %d -o %m/preview.000"
preview-fast-dvips-command "dvips -Pwww %d -o %m/preview.ps"
preview-scale-function 'preview-scale-from-face
preview-LaTeX-command '("%`%l \"\\nonstopmode\\nofiles\\PassOptionsToPackage{"
("," . preview-required-option-list)
"}{preview}\\AtBeginDocument{\\ifx\\ifPreview\\undefined" preview-default-preamble
"\\fi}\"%' \"\\detokenize{\" %(t-filename-only) \"}\"")
preview-required-option-list '("active" "tightpage" "auctex" (preview-preserve-counters "counters"))
preview-preserve-counters nil
preview-default-option-list '("displaymath" "floats" "graphics" "textmath" "sections" "footnotes")
preview-default-preamble '("\\RequirePackage[" ("," . preview-default-option-list) "]{preview}[2004/11/05]"
"\\PreviewEnvironment{tikzpicture}")
preview-LaTeX-command-replacements nil
preview-dump-replacements '(preview-LaTeX-command-replacements
("\\`\\([^ ]+\\)\\(?: +\\(?:\\(--?kanji[= ][^ ]+\\)\\|\\(--?output-directory[= ][^ ]+\\)\\|-\\(?:[^ \\\"]\\|\\\\.\\|\"[^\"]*\"\\)*\\)\\)*\\(.*\\)\\'" "\\1 -ini \\2 \\3 -interaction=nonstopmode \"&\\1\" " preview-format-name ".ini \\4")
)
preview-undump-replacements '(("\\`\\([^ ]+\\)\\(?: +\\(?:\\(--?kanji[= ][^ ]+\\)\\|\\(--?output-directory[= ][^ ]+\\)\\|-\\(?:[^ \\\"]\\|\\\\.\\|\"[^\"]*\"\\)*\\)\\)*.* \"\\\\input\" \"\\\\detokenize{\" \\(.*\\) \"}\"\\'" "\\1 \\2 \\3 -interaction=nonstopmode -file-line-error " preview-format-name " \"/AUCTEXINPUT{\" \\4 \"}\"")
)
preview-auto-cache-preamble t
preview-TeX-style-dir "/home/diane/.emacs.d/elpa/auctex-14.0.9/latex"
)

Output from running `/usr/bin/rungs -h':
GPL Ghostscript 10.05.0 (2025-03-12)
Copyright (C) 2025 Artifex Software, Inc. All rights reserved.
Usage: gs [switches] [file1.ps file2.ps ...]
Most frequently used switches: (you can use # in place of =)
-dNOPAUSE no pause after page | -q `quiet', fewer messages
-g<width>x<height> page size in pixels | -r<res> pixels/inch resolution
-sDEVICE=<devname> select device | -dBATCH exit after last file
-sOutputFile=<file> select output file: - for stdout, |command for pipe,
embed %d or %ld for page #
Input formats: PostScript PostScriptLevel1 PostScriptLevel2 PostScriptLevel3 PDF
Default output device: x11alpha
Available devices:
alc1900 alc2000 alc4000 alc4100 alc8500 alc8600 alc9100 ap3250 appledmp
appleraster atx23 atx24 atx38 bbox bit bitcmyk bitrgb bitrgbtags bj10e
bj10v bj10vh bj200 bjc600 bjc800 bjc880j bjccmyk bjccolor bjcgray bjcmono
bmp16 bmp16m bmp256 bmp32b bmpgray bmpmono bmpsep1 bmpsep8 ccr cdeskjet
cdj1600 cdj500 cdj550 cdj670 cdj850 cdj880 cdj890 cdj970 cdjcolor cdjmono
cdnj500 cfax chp2200 cif cljet5 cljet5c cljet5pr coslw2p coslwxl cups
declj250 deskjet devicen dfaxhigh dfaxlow display dj505j djet500 djet500c
dl2100 dnj650c docxwrite epl2050 epl2050p epl2120 epl2500 epl2750 epl5800
epl5900 epl6100 epl6200 eplcolor eplmono eps2write eps9high eps9mid epson
epsonc escp escpage faxg3 faxg32d faxg4 fmlbp fmpr fpng fs600 gdi hl1240
hl1250 hl7x0 hpdj1120c hpdj310 hpdj320 hpdj340 hpdj400 hpdj500 hpdj500c
hpdj510 hpdj520 hpdj540 hpdj550c hpdj560c hpdj600 hpdj660c hpdj670c
hpdj680c hpdj690c hpdj850c hpdj855c hpdj870c hpdj890c hpdjplus
hpdjportable ibmpro ijs imagen inferno ink_cov inkcov itk24i itk38 iwhi
iwlo iwlq jetp3852 jj100 jpeg jpegcmyk jpeggray la50 la70 la75 la75plus
laserjet lbp310 lbp320 lbp8 lex2050 lex3200 lex5700 lex7000 lips2p lips3
lips4 lips4v lj250 lj3100sw lj4dith lj4dithp lj5gray lj5mono ljet2p ljet3
ljet3d ljet4 ljet4d ljet4pjl ljetplus ln03 lp1800 lp1900 lp2000 lp2200
lp2400 lp2500 lp2563 lp3000c lp7500 lp7700 lp7900 lp8000 lp8000c lp8100
lp8200c lp8300c lp8300f lp8400f lp8500c lp8600 lp8600f lp8700 lp8800c
lp8900 lp9000b lp9000c lp9100 lp9200b lp9200c lp9300 lp9400 lp9500c
lp9600 lp9600s lp9800c lps4500 lps6500 lq850 lxm3200 lxm5700m m8510
md1xMono md2k md50Eco md50Mono md5k mgr4 mgr8 mgrgray2 mgrgray4 mgrgray8
mgrmono miff24 mj500c mj6000c mj700v2c mj8000c ml600 necp6 npdl nullpage
oce9050 oki182 oki4w okiibm oprp opvp paintjet pam pamcmyk32 pamcmyk4 pbm
pbmraw pcl3 pclm pclm8 pcx16 pcx24b pcx256 pcxcmyk pcxgray pcxmono
pdfimage24 pdfimage32 pdfimage8 pdfwrite pdfwrite pdfwrite pgm pgmraw
pgnm pgnmraw photoex picty180 pj pjetxl pjxl pjxl300 pkm pkmraw pksm
pksmraw plan plan9bm planc plang plank planm plib plibc plibg plibk plibm
png16 png16m png16malpha png256 png48 pngalpha pnggray pngmono pngmonod
pnm pnmraw ppm ppmraw pppm pr1000 pr1000_4 pr150 pr201 ps2write psdcmyk
psdcmyk16 psdcmykog psdcmyktags psdcmyktags16 psdrgb psdrgb16 psdrgbtags
pwgraster pxlcolor pxlmono r4081 rinkj rpdl samsunggdi sj48 spotcmyk
st800 stcolor t4693d2 t4693d4 t4693d8 tek4696 tiff12nc tiff24nc tiff32nc
tiff48nc tiff64nc tiffcrle tiffg3 tiffg32d tiffg4 tiffgray tifflzw
tiffpack tiffscaled tiffscaled24 tiffscaled32 tiffscaled4 tiffscaled8
tiffsep tiffsep1 txtwrite uniprint urf urfcmyk urfgray urfrgb x11
x11alpha x11cmyk x11cmyk2 x11cmyk4 x11cmyk8 x11gray2 x11gray4 x11mono
x11rg16x x11rg32x xcf xes xpswrite
Search path:
/usr/share/ghostscript/Resource/Init : /usr/share/ghostscript/lib :
/usr/share/ghostscript/Resource/Font : /usr/share/ghostscript/fonts :
/usr/share/fonts/gsfonts
Ghostscript is also using fontconfig to search for font files
For more information, see https://ghostscript.readthedocs.io/en/gs10.05.0/Use.html
Please report bugs to bugs.ghostscript.com.