Manual PDFs other than en and es fail to build

  • Done
  • quality assurance status badge
Details
5 participants
  • Julien Lepiller
  • Ludovic Courtès
  • Maxim Cournoyer
  • pelzflorian (Florian Pelz)
  • Ricardo Wurmus
Owner
unassigned
Submitted by
Ludovic Courtès
Severity
normal
L
L
Ludovic Courtès wrote on 6 Oct 2022 16:23
(address . bug-guix@gnu.org)
87czb5m3oy.fsf@inria.fr
Hi,

https://guix.gnu.org/manual/devel/fr lacks its PDF, and similarly for
/de (/ru and /zh-cn don’t have the PDF either, but that’s a known
limitation).

When running ‘guix build -f doc/build.scm’, we get hard-to-decipher
clues (thanks, TeX!):

Toggle snippet (53 lines)
/gnu/store/sqi9bbxd7czxcnvhmm037yd01vykcgza-texinfo-manual-source/guix.de.texi:21958: TeX capacity exceeded, sorry [input stack size=5000].
@par ->@endgraf @pretolerance =100 @let @par
@endgraf
@par ->@endgraf @pretolerance =100 @let @par
@endgraf
@par ->@endgraf @pretolerance =100 @let @par
@endgraf
@par ->@endgraf @pretolerance =100 @let @par
@endgraf
@par ->@endgraf @pretolerance =100 @let @par
@endgraf
@par ->@endgraf @pretolerance =100 @let @par
@endgraf
...
l.21958 @uref{@uref{https://webssh.huashengdun.org/, WebSSH}}
, das einen
/gnu/store/sqi9bbxd7czxcnvhmm037yd01vykcgza-texinfo-manual-source/guix.de.texi:21958: ==> Fatal error occurred, no output PDF file produced!
Transcript written on guix.de.log.

[…]

/gnu/store/sqi9bbxd7czxcnvhmm037yd01vykcgza-texinfo-manual-source/guix.fr.texi:44195: This command can appear only outside of any environment, not in environment @deftypevr.
@badenverr ->@errhelp = @EMsimple @errmessage {This command can appear only @inenvironment @temp , not @inenvironment @thisenv }
@checkenv #1->@def @temp {#1}@ifx @thisenv @temp @else @badenverr
@fi
@chapmacro #1#2#3->@expandafter @ifx @thisenv @titlepage @else @checkenv {}
@fi @let @prevchapterdefs =@currentchapterdefs @let @prevsectiondefs =@currentsectiondefs @gdef @currentsectiondefs {@gdef @thissectionname {}@gdef @thissectionnum {}@gdef @thi...
@unnumberedzzz ...obal @subsecno =0 @global @subsubsecno =0 @global @advance @unnumberedno by 1 @global @let @chaplevelprefix = @empty @resetallfloatnos @toks 0 = {#1}@message {(@the @toks 0)}@chapmacro {#1}{Ynothing}{@the @unnumberedno }
@global @let ...
@genhead ... @chapheadtype N@errmessage {@appendix... within a non-appendix chapter}@fi @fi @fi @ifnum @absseclevel > @unnlevel @def @headtype {U}@else @chardef @unnlevel = 3 @fi @fi @if @headtype U@ifcase @absseclevel @unnumberedzzz {#3}
@or @unnumber...
l.44195 @unnumbered Index de programmation
[721] (/tmp/guix-build-guix-pdf-manual.drv-0/guix.fr.fns
Overfull \hbox (20.40314pt too wide) in paragraph at lines 64--64
[]@smalltt enlightenment-desktop- |
[722] [723] [724]) [725] )
(@end occurred inside a group at level 1)

### semi simple group (level 1) entered at line 26480 (@begingroup)
### bottom level
(see the transcript file for additional information) <./cmr12.720pk> </gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmmi9.pk> </gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmr10.pk> <./cmss10.657pk> <./cmtt12.657pk> </gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmsy9.pk> </gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmti9.pk> </gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmsl9.pk> <./cmsl10.720pk> <./cmb10.720pk> <./cmsltt10.720pk> <./cmtt12.720pk> <./cmtt10.720pk>{/gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/enc/dvips/cm-super/cm-super-t1.enc} <./cmsltt10.540pk> <./cmbx12.657pk> <./cmsltt10.657pk> <./cmb10.657pk> </gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf
-dist/fonts/pk/ljfour/public/cm/dpi600/cmtt9.pk> </gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmr9.pk> <./cmti10.657pk> <./cmsl10.657pk> </gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmr7.pk> </gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmb10.pk> <./cmtt10.657pk> <./cmmi10.657pk> <./cmmi12.720pk> <./cmbx12.864pk> </gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmr8.pk> <./cmsy10.657pk> <./cmbx12.720pk> <./cmr10.657pk> <./cmbx12.1037pk></gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/type1/public/cm-super/sfrm0900.pfb></gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/type1/public/cm-super/sfrm1095.pfb></gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/share/texmf-dist/fonts/type1/public/cm-super/sftt1095.pfb>

Output written on guix.fr.pdf (736 pages, 2668969 bytes).
Transcript written on guix.fr.log.
/gnu/store/fi336fykl2kzdnaq64j2zyf3f5jxrhm0-profile/bin/texi2dvi: pdftex exited with bad status, quitting.


Failed to produce PDF for language 'fr'!

I also see things like:

Toggle snippet (7 lines)
Writing index file guix.fr.cp
l.527: Unicode char @u8:. not defined for Texinfo l.527: Unicode char @u8:. not defined for Texinfo
Missing character: There is no in font cmr10!
Missing character: There is no in font cmr10!
Missing character: There is no in font cmr10!

Two possible culprits I can think of:

1. Some weird problem in the de/fr translations that would cause
problems for PDF output but not for HTML/Info (hard to believe).

2. A font issue caused by 1cde647cc05c640fbfa6f9779a0d7854bb90e153:
that commit removed use of the monolithic texlive, which is good,
but maybe the problem that were described in a comment there are
not solved? On this topic, Ricardo recently reminded me of

Maxim, Julien, anyone: thoughts? I feel lost in the dark here. :-)

Ludo’.
M
M
Maxim Cournoyer wrote on 6 Oct 2022 18:02
(name . Ludovic Courtès)(address . ludo@gnu.org)
87v8oxgctk.fsf@gmail.com
Hi Ludovic,

Thanks for reporting the issue!

Ludovic Courtès <ludo@gnu.org> writes:

Toggle quote (6 lines)
> Hi,
>
> <https://guix.gnu.org/manual/devel/fr> lacks its PDF, and similarly for
> /de (/ru and /zh-cn don’t have the PDF either, but that’s a known
> limitation).

Right. A known self-caused limitation by Texinfo (for reinventing TeX
things itself in a way that breaks that), according to TeX people I had
asked in #latex. It's probably fixable by reusing more primitives of
TeX rather than re-implementing them, but I'm no TeX expert!

Toggle quote (5 lines)
> When running ‘guix build -f doc/build.scm’, we get hard-to-decipher
> clues (thanks, TeX!):
>
> /gnu/store/sqi9bbxd7czxcnvhmm037yd01vykcgza-texinfo-manual-source/guix.de.texi:21958: TeX capacity exceeded, sorry [input stack size=5000].

I guess the above is a serious warning that may be the cause of the
subsequent failures? We should try to have it fixed to see if it helps.

Toggle quote (19 lines)
> @par ->@endgraf @pretolerance =100 @let @par
> @endgraf
> @par ->@endgraf @pretolerance =100 @let @par
> @endgraf
> @par ->@endgraf @pretolerance =100 @let @par
> @endgraf
> @par ->@endgraf @pretolerance =100 @let @par
> @endgraf
> @par ->@endgraf @pretolerance =100 @let @par
> @endgraf
> @par ->@endgraf @pretolerance =100 @let @par
> @endgraf
> ...
> l.21958 @uref{@uref{https://webssh.huashengdun.org/, WebSSH}}
> , das einen
> /gnu/store/sqi9bbxd7czxcnvhmm037yd01vykcgza-texinfo-manual-source/guix.de.texi:21958: ==> Fatal error occurred, no output PDF file produced!
> Transcript written on guix.de.log.
>

[...]

Toggle quote (24 lines)
> Failed to produce PDF for language 'fr'!
>
>
> I also see things like:
>
> Writing index file guix.fr.cp
> l.527: Unicode char @u8:. not defined for Texinfo l.527: Unicode char @u8:. not defined for Texinfo
> Missing character: There is no in font cmr10!
> Missing character: There is no in font cmr10!
> Missing character: There is no in font cmr10!
>
>
>
> Two possible culprits I can think of:
>
> 1. Some weird problem in the de/fr translations that would cause
> problems for PDF output but not for HTML/Info (hard to believe).
>
> 2. A font issue caused by 1cde647cc05c640fbfa6f9779a0d7854bb90e153:
> that commit removed use of the monolithic texlive, which is good,
> but maybe the problem that were described in a comment there are
> not solved? On this topic, Ricardo recently reminded me of
> <https://issues.guix.gnu.org/33094#7>.

It's possible the font error seen above was caused by 2., but note that
at the time I made the change from the monolithic to minimal tex
dependencies, the French and German PDFs generation was already broken

--
Thanks,
Maxim
R
R
Ricardo Wurmus wrote on 7 Oct 2022 00:14
Manual PDFs other than en and es fail to build
(address . 58333@debbugs.gnu.org)
87r0zkmwbm.fsf@elephly.net
The error in guix.de.texi is an infinite loop. The location it points
out is wrong syntax:


There shouldn’t be a double-wrapping in @uref.

--
Ricardo
R
R
Ricardo Wurmus wrote on 7 Oct 2022 00:35
(address . 58333@debbugs.gnu.org)
87mta8mvco.fsf@elephly.net
The first error in guix.fr.texi is encountered here:

Toggle snippet (10 lines)
Overfull \hbox (31.11255pt too wide) in paragraph at lines 26508--26508
[]@deftt getmail-retriever-configuration[] |
Runaway argument?
10000 @advance @rightskip by 0pt plus 1fil@relax @endgraf @nobreak @vskip -@parskip @penalty @defunpenalty @checkparencounts @endgroup Le type de récupérateur de courriel à utiliser. Des valeurs valides sont @samp {passwd} et @samp {static}.@ETC.
/gnu/store/lrw46dlqll6z9pxm18zqvwxfmi03w7kp-texinfo-manual-source/guix.fr.texi:26517: Paragraph ended before @deftypecvgeneral was complete.
<to be read again>
@par
l.26517

I don’t see anything wrong here, but I’ll note a missing space after }}
on the first line:

Toggle snippet (10 lines)
@deftypevr {paramètre de @code{getmail-retriever-configuration}}string type
Le type de récupérateur de courriel à utiliser. Des valeurs valides sont
@samp{passwd} et @samp{static}.

La valeur par défaut est @samp{"SimpleIMAPSSLRetriever"}.

@end deftypevr


--
Ricardo
R
R
Ricardo Wurmus wrote on 7 Oct 2022 08:34
(address . 58333@debbugs.gnu.org)
87ilkwm98g.fsf@elephly.net
Ricardo Wurmus <rekado@elephly.net> writes:

Toggle quote (7 lines)
> The error in guix.de.texi is an infinite loop. The location it points
> out is wrong syntax:
>
> @uref{@uref{https://webssh.huashengdun.org/, WebSSH}}
>
> There shouldn’t be a double-wrapping in @uref.

I can confirm that fixing the bad translation in
po/doc/guix-manual.de.po allows us to build the German version of the
PDF manual.

--
Ricardo
J
J
Julien Lepiller wrote on 7 Oct 2022 08:46
Re: bug#58333: Manual PDFs other than en and es fail to build
1D9209ED-E6EC-4376-BE12-6B010AAD9127@lepiller.eu
You can push this fix directly to the repo, but please also fix it on weblate or it'll break again next time I update translations.

Le 7 octobre 2022 08:34:51 GMT+02:00, Ricardo Wurmus <rekado@elephly.net> a écrit :
Toggle quote (19 lines)
>
>Ricardo Wurmus <rekado@elephly.net> writes:
>
>> The error in guix.de.texi is an infinite loop. The location it points
>> out is wrong syntax:
>>
>> @uref{@uref{https://webssh.huashengdun.org/, WebSSH}}
>>
>> There shouldn’t be a double-wrapping in @uref.
>
>I can confirm that fixing the bad translation in
>po/doc/guix-manual.de.po allows us to build the German version of the
>PDF manual.
>
>--
>Ricardo
>
>
>
Attachment: file
R
R
Ricardo Wurmus wrote on 7 Oct 2022 08:43
Manual PDFs other than en and es fail to build
(address . 58333@debbugs.gnu.org)
87edvkm88e.fsf@elephly.net
With these two changes I can build both German and French PDF manuals:
Toggle diff (26 lines)
diff --git a/po/doc/guix-manual.de.po b/po/doc/guix-manual.de.po
index edbe853248..cd7eff86f5 100644
--- a/po/doc/guix-manual.de.po
+++ b/po/doc/guix-manual.de.po
@@ -38181,7 +38181,7 @@ msgstr "{Scheme-Variable} webssh-service-type"
#. type: deffn
#: guix-git/doc/guix.texi:20494
msgid "This is the type for the @uref{https://webssh.huashengdun.org/, WebSSH} program that runs a web SSH client. WebSSH can be run manually from the command-line by passing arguments to the binary @command{wssh} from the package @code{webssh}, but it can also be run as a Guix service. This latter use case is documented here."
-msgstr "Dies ist der Diensttyp für das Programm @uref{@uref{https://webssh.huashengdun.org/, WebSSH}}, das einen webbasierten SSH-Client ausführt. WebSSH kann von Hand aus der Befehlszeile heraus aufgerufen werden, indem man Argumente an die Binärdatei @command{wssh} aus dem Paket @code{webssh} übergibt, aber es kann auch als ein Guix-Dienst ausgeführt werden. Letzteres wird hier beschrieben."
+msgstr "Dies ist der Diensttyp für das Programm @uref{https://webssh.huashengdun.org/, WebSSH}, das einen webbasierten SSH-Client ausführt. WebSSH kann von Hand aus der Befehlszeile heraus aufgerufen werden, indem man Argumente an die Binärdatei @command{wssh} aus dem Paket @code{webssh} übergibt, aber es kann auch als ein Guix-Dienst ausgeführt werden. Letzteres wird hier beschrieben."
#. type: deffn
#: guix-git/doc/guix.texi:20500
diff --git a/po/doc/guix-manual.fr.po b/po/doc/guix-manual.fr.po
index 6762909beb..b0de8a75ba 100644
--- a/po/doc/guix-manual.fr.po
+++ b/po/doc/guix-manual.fr.po
@@ -48355,7 +48355,7 @@ msgstr "Les champs de @code{getmail-retriever-configuration} disponibles sont :"
#: guix-git/doc/guix.texi:25540
#, no-wrap
msgid "{@code{getmail-retriever-configuration} parameter} string type"
-msgstr "{paramètre de @code{getmail-retriever-configuration}}string type"
+msgstr "{paramètre de @code{getmail-retriever-configuration}} string type"
#. type: deftypevr
#: guix-git/doc/guix.texi:25543
--
Ricardo
R
R
Ricardo Wurmus wrote on 8 Oct 2022 10:01
(name . Julien Lepiller)(address . julien@lepiller.eu)(address . 58333-done@debbugs.gnu.org)
87sfjylp3r.fsf@elephly.net
Julien Lepiller <julien@lepiller.eu> writes:

Toggle quote (3 lines)
> You can push this fix directly to the repo, but please also fix it on
> weblate or it'll break again next time I update translations.

I pushed the fix and made a change in the German translation on weblate;
the change for the French translation had already been made on weblate.

--
Ricardo
Closed
P
P
pelzflorian (Florian Pelz) wrote on 8 Oct 2022 13:58
(address . 58333@debbugs.gnu.org)
87tu4ezfvf.fsf@pelzflorian.de
Ricardo Wurmus <rekado@elephly.net> writes:
Toggle quote (8 lines)
> Julien Lepiller <julien@lepiller.eu> writes:
>
>> You can push this fix directly to the repo, but please also fix it on
>> weblate or it'll break again next time I update translations.
>
> I pushed the fix and made a change in the German translation on weblate;
> the change for the French translation had already been made on weblate.

Thank you!

Regards,
Florian
?