unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#58333: Manual PDFs other than en and es fail to build
@ 2022-10-06 14:23 Ludovic Courtès
  2022-10-06 16:02 ` Maxim Cournoyer
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Ludovic Courtès @ 2022-10-06 14:23 UTC (permalink / raw)
  To: 58333; +Cc: Julien Lepiller, Maxim Cournoyer

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!):

--8<---------------cut here---------------start------------->8---
/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'!
--8<---------------cut here---------------end--------------->8---

I also see things like:

--8<---------------cut here---------------start------------->8---
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!
--8<---------------cut here---------------end--------------->8---

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>.

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

Ludo’.




^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#58333: Manual PDFs other than en and es fail to build
  2022-10-06 14:23 bug#58333: Manual PDFs other than en and es fail to build Ludovic Courtès
@ 2022-10-06 16:02 ` Maxim Cournoyer
  2022-10-06 22:14 ` Ricardo Wurmus
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 9+ messages in thread
From: Maxim Cournoyer @ 2022-10-06 16:02 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Julien Lepiller, 58333

Hi Ludovic,

Thanks for reporting the issue!

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

> 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!

> 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.

> @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.
>

[...]

> 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
(see: https://logs.guix.gnu.org/guix/2022-06-15.log#225709).

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#58333: Manual PDFs other than en and es fail to build
  2022-10-06 14:23 bug#58333: Manual PDFs other than en and es fail to build Ludovic Courtès
  2022-10-06 16:02 ` Maxim Cournoyer
@ 2022-10-06 22:14 ` Ricardo Wurmus
  2022-10-07  6:34   ` Ricardo Wurmus
  2022-10-06 22:35 ` Ricardo Wurmus
  2022-10-07  6:43 ` Ricardo Wurmus
  3 siblings, 1 reply; 9+ messages in thread
From: Ricardo Wurmus @ 2022-10-06 22:14 UTC (permalink / raw)
  To: 58333

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.

-- 
Ricardo




^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#58333: Manual PDFs other than en and es fail to build
  2022-10-06 14:23 bug#58333: Manual PDFs other than en and es fail to build Ludovic Courtès
  2022-10-06 16:02 ` Maxim Cournoyer
  2022-10-06 22:14 ` Ricardo Wurmus
@ 2022-10-06 22:35 ` Ricardo Wurmus
  2022-10-07  6:43 ` Ricardo Wurmus
  3 siblings, 0 replies; 9+ messages in thread
From: Ricardo Wurmus @ 2022-10-06 22:35 UTC (permalink / raw)
  To: 58333

The first error in guix.fr.texi is encountered here:

--8<---------------cut here---------------start------------->8---
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 
--8<---------------cut here---------------end--------------->8---

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

--8<---------------cut here---------------start------------->8---
@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
--8<---------------cut here---------------end--------------->8---


-- 
Ricardo




^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#58333: Manual PDFs other than en and es fail to build
  2022-10-06 22:14 ` Ricardo Wurmus
@ 2022-10-07  6:34   ` Ricardo Wurmus
  2022-10-07  6:46     ` Julien Lepiller
  0 siblings, 1 reply; 9+ messages in thread
From: Ricardo Wurmus @ 2022-10-07  6:34 UTC (permalink / raw)
  To: 58333


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




^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#58333: Manual PDFs other than en and es fail to build
  2022-10-06 14:23 bug#58333: Manual PDFs other than en and es fail to build Ludovic Courtès
                   ` (2 preceding siblings ...)
  2022-10-06 22:35 ` Ricardo Wurmus
@ 2022-10-07  6:43 ` Ricardo Wurmus
  3 siblings, 0 replies; 9+ messages in thread
From: Ricardo Wurmus @ 2022-10-07  6:43 UTC (permalink / raw)
  To: 58333

[-- Attachment #1: Type: text/plain, Size: 72 bytes --]

With these two changes I can build both German and French PDF manuals:


[-- Attachment #2: fix-pdf-manuals.patch --]
[-- Type: text/x-patch, Size: 2085 bytes --]

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

[-- Attachment #3: Type: text/plain, Size: 13 bytes --]


-- 
Ricardo

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* bug#58333: Manual PDFs other than en and es fail to build
  2022-10-07  6:34   ` Ricardo Wurmus
@ 2022-10-07  6:46     ` Julien Lepiller
  2022-10-08  8:01       ` Ricardo Wurmus
  0 siblings, 1 reply; 9+ messages in thread
From: Julien Lepiller @ 2022-10-07  6:46 UTC (permalink / raw)
  To: 58333, rekado

[-- Attachment #1: Type: text/plain, Size: 665 bytes --]

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 :
>
>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 #2: Type: text/html, Size: 1110 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#58333: Manual PDFs other than en and es fail to build
  2022-10-07  6:46     ` Julien Lepiller
@ 2022-10-08  8:01       ` Ricardo Wurmus
  2022-10-08 11:58         ` pelzflorian (Florian Pelz)
  0 siblings, 1 reply; 9+ messages in thread
From: Ricardo Wurmus @ 2022-10-08  8:01 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: 58333-done


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.

-- 
Ricardo




^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#58333: Manual PDFs other than en and es fail to build
  2022-10-08  8:01       ` Ricardo Wurmus
@ 2022-10-08 11:58         ` pelzflorian (Florian Pelz)
  0 siblings, 0 replies; 9+ messages in thread
From: pelzflorian (Florian Pelz) @ 2022-10-08 11:58 UTC (permalink / raw)
  To: 58333; +Cc: rekado, ludo

Ricardo Wurmus <rekado@elephly.net> writes:
> 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




^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2022-10-08 11:59 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-06 14:23 bug#58333: Manual PDFs other than en and es fail to build Ludovic Courtès
2022-10-06 16:02 ` Maxim Cournoyer
2022-10-06 22:14 ` Ricardo Wurmus
2022-10-07  6:34   ` Ricardo Wurmus
2022-10-07  6:46     ` Julien Lepiller
2022-10-08  8:01       ` Ricardo Wurmus
2022-10-08 11:58         ` pelzflorian (Florian Pelz)
2022-10-06 22:35 ` Ricardo Wurmus
2022-10-07  6:43 ` Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).