unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* Export PDFs in Emacs Org
@ 2021-03-12 14:55 Phil
  2021-03-12 15:57 ` Ricardo Wurmus
  0 siblings, 1 reply; 6+ messages in thread
From: Phil @ 2021-03-12 14:55 UTC (permalink / raw)
  To: help-guix

Hi,

I've been trying to export emacs org files into PDFs using Guix.

I've the PDF generation from the .tex file is failing.

The issue has been discussed a few times previously, eg:
https://lists.gnu.org/archive/html/help-guix/2019-02/msg00087.html

But there is conflicting advice over what packages should or shouldn't
be installed typically some combinaton of:
texlive-base, texlive-bin, texlive-latex-base, texlive-latext-font

The latest advice seems to be the only texlive-base should be necessary
and installing others will cause an issue - with that in mind I
attempted the below, but got a new failure.

I've recreated the pdflatex step on the command line - it gives exactly
the same error as the emacs error buffer contains.

The org file exports without issue in Ubuntu 18.04 with the following
(which may be more than I need):
sudo apt-get install texlive-latex-base texlive-fonts-recommended
texlive-fonts-extra texlive-latex-extra emacs python3 python3-pygments

Any ideas what the minimum Guix package set is (or even a carpet-bomb
approach with a meta-package would be OK)?

Thanks,
Phil.



$ guix package -p profiles/book -m profiles/book.manifest
guix package: warning: Your Guix installation is 47 days old.
guix package: warning: Consider running 'guix pull' followed by
'guix package -u' to get up-to-date packages and security updates.

The following packages will be installed:
   emacs           27.1
   python          3.8.2
   python-pygments 2.6.1
   texlive-base    51265

hint: Consider setting the necessary environment variables by running:

     GUIX_PROFILE="/home/foo/profiles/book"
     . "$GUIX_PROFILE/etc/profile"

Alternately, see `guix package --search-paths -p "/home/foo/profiles/book"'.



$  GUIX_PROFILE="/home/foo/profiles/book"

$ . "$GUIX_PROFILE/etc/profile"

$ pdflatex Developer-Setup.tex
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019) (preloaded format=pdflatex)
 restricted \write18 enabled.
entering extended mode
(./Developer-Setup.tex
LaTeX2e <2018-12-01>
(/home/foo/profiles/book/share/texmf-dist/tex/latex/base/book.cls
Document Class: book 2018/09/03 v1.4i Standard LaTeX document class
(/home/foo/profiles/book/share/texmf-dist/tex/latex/base/bk10.clo)) (/home/foo/profiles/book/share/texmf-dist/tex/latex/base/inputenc.
sty) (/home/foo/profiles/book/share/texmf-dist/tex/latex/base/fontenc.sty (/home/foo/profiles/book/share/texmf-dist/tex/latex/base/t1e
nc.def)
kpathsea: Running mktextfm ecrm1000
mktextfm: Running mf-nowin -progname=mf \mode:=ljfour; mag:=1; nonstopmode; input ecrm1000
This is METAFONT, Version 2.7182818 (TeX Live 2019) (preloaded base=mf)


kpathsea: Running mktexmf ecrm1000
! I can't find file `ecrm1000'.
<*> \mode:=ljfour; mag:=1; nonstopmode; input ecrm1000

Please type another input file name
! Emergency stop.
<*> \mode:=ljfour; mag:=1; nonstopmode; input ecrm1000

Transcript written on mfput.log.
grep: ecrm1000.log: No such file or directory
mktextfm: `mf-nowin -progname=mf \mode:=ljfour; mag:=1; nonstopmode; input ecrm1000' failed to make ecrm1000.tfm.
kpathsea: Appending font creation commands to missfont.log.

! Font T1/cmr/m/n/10=ecrm1000 at 10.0pt not loadable: Metric (TFM) file not found.
<to be read again>
                   relax
l.105 \fontencoding\encodingdefault\selectfont


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

* Re: Export PDFs in Emacs Org
  2021-03-12 14:55 Export PDFs in Emacs Org Phil
@ 2021-03-12 15:57 ` Ricardo Wurmus
  2021-03-12 20:33   ` Phil Beadling
  2021-03-12 22:35   ` Dr. Arne Babenhauserheide
  0 siblings, 2 replies; 6+ messages in thread
From: Ricardo Wurmus @ 2021-03-12 15:57 UTC (permalink / raw)
  To: Phil; +Cc: help-guix


Hi Phil,

> But there is conflicting advice over what packages should or shouldn't
> be installed typically some combinaton of:
> texlive-base, texlive-bin, texlive-latex-base, texlive-latext-font
>
> The latest advice seems to be the only texlive-base should be necessary
> and installing others will cause an issue - with that in mind I
> attempted the below, but got a new failure.

“texlive-base” is certainly not sufficient for any real world LaTeX
document.  It contains what LaTeX developers consider the base set of
files (i.e. texlive-latex-base), texlive-bin (which provides the
executables), and LaTeX packages from the “required” set.

Since it already contains texlive-bin, texlive-latex-base, and
texlive-fonts-latex it is correct that you won’t need to explicitly
install those.

Dependent on the needs of your document, though, you will need to
install more packages that are not part of the “required” set (even
though other distributions may have them installed for convenience).
Exactly what those are is a little tricky to find out.  I usually go by
error messages and then look up the files it complains about in $(guix
build texlive-bin)/share/tlpkg/texlive.tlpdb.

> The org file exports without issue in Ubuntu 18.04 with the following
> (which may be more than I need):
> sudo apt-get install texlive-latex-base texlive-fonts-recommended
> texlive-fonts-extra texlive-latex-extra emacs python3 python3-pygments

Note that the Ubuntu package called texlive-latex-base likely doesn’t
correspond to the package of the same name in Guix.

> Any ideas what the minimum Guix package set is (or even a carpet-bomb
> approach with a meta-package would be OK)?

Depends on the document, really.  Let me look at the errors.

> ! I can't find file `ecrm1000'.

This is a font provided by the old-style “texlive-fonts-ec” package.

(In the past I worked on and off to replace old-style packages with
corrected versions that actually contain *all* files that the texlive
tlpdb mentions, but I can no longer justify spending time on this kind
of work.)

-- 
Ricardo


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

* Re: Export PDFs in Emacs Org
  2021-03-12 15:57 ` Ricardo Wurmus
@ 2021-03-12 20:33   ` Phil Beadling
  2021-03-12 22:35   ` Dr. Arne Babenhauserheide
  1 sibling, 0 replies; 6+ messages in thread
From: Phil Beadling @ 2021-03-12 20:33 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

On Fri, 12 Mar 2021 at 15:57, Ricardo Wurmus <rekado@elephly.net> wrote:

>
>
> >Dependent on the needs of your document, though, you will need to
> >install more packages that are not part of the “required” set (even
> >though other distributions may have them installed for convenience).
> >Exactly what those are is a little tricky to find out.  I usually go by
> >error messages and then look up the files it complains about in $(guix
> >build texlive-bin)/share/tlpkg/texlive.tlpdb.
>

Thanks for the hint Ricardo - I've made a lot of headway off this - and I'm
close to having it working properly

I had to use `guix import` for the minted, fvextra, and lineno packages - I
couldn't see anything in Guix itself which would supply these?

The guix import for lineno built correctly but, pdflatex didn't pick it up
the lineno.sty. Finally xstring package couldn't be automatically imported.

So I ended up with the following files in the same directory as my emacs
org and generated tex file
lineno.sty
xstring.sty
xstring.tex

That plus the following in my profile:
   emacs                    27.1
   python                   3.8.2
   python-pygments          2.6.1
   subversion               1.14.0
   texlive-amsfonts         51265
   texlive-base             51265
   texlive-etoolbox         51265
   texlive-fonts-ec         51265
   texlive-generic-ulem     51265
   texlive-latex-capt-of    51265
   texlive-latex-fancyvrb   51265
   texlive-latex-float      51265
   texlive-latex-framed     51265
   texlive-latex-fvextra    1.4
   texlive-latex-hyperref   6.84a2
   texlive-latex-ifplatform 51265
   texlive-latex-lineno     4.41
   texlive-latex-minted     2.5
   texlive-latex-oberdiek   51265
   texlive-latex-upquote    51265
   texlive-latex-wrapfig    51265
   texlive-xcolor           51265

At this point emacs built a PDF, but "with errors", and would refuse to
display it (although Adobe Reader did display it and it looked OK).

Looking at the *Org PDF LaTeX Output* buffer in emacs I see the following
issues, which I assume is what emacs is complaining about:
! Math formula deleted: Insufficient symbol fonts.
! Math formula deleted: Insufficient extension fonts

At a rough guess I would have thought that the amsfonts package might have
convered this - but no TeX expert?

Any ideas on how to resolve this.

Also if anyone has seen the texllive-latext-lineno issue before any ideas
on why the sty file isn't picked after a successful install?


>
>

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

* Re: Export PDFs in Emacs Org
  2021-03-12 15:57 ` Ricardo Wurmus
  2021-03-12 20:33   ` Phil Beadling
@ 2021-03-12 22:35   ` Dr. Arne Babenhauserheide
  2021-03-12 22:53     ` Ricardo Wurmus
  1 sibling, 1 reply; 6+ messages in thread
From: Dr. Arne Babenhauserheide @ 2021-03-12 22:35 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

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


Ricardo Wurmus <rekado@elephly.net> writes:

> Hi Phil,
>
>> But there is conflicting advice over what packages should or shouldn't
>> be installed typically some combinaton of:
>> texlive-base, texlive-bin, texlive-latex-base, texlive-latext-font
>>
>> The latest advice seems to be the only texlive-base should be necessary
>> and installing others will cause an issue - with that in mind I
>> attempted the below, but got a new failure.
>
> “texlive-base” is certainly not sufficient for any real world LaTeX
> document.  It contains what LaTeX developers consider the base set of
> files (i.e. texlive-latex-base), texlive-bin (which provides the
> executables), and LaTeX packages from the “required” set.

this is what I use:

https://hg.sr.ht/~arnebab/vorlesung-verteilte-systeme/browse/guix.scm

    (propagated-inputs
     `(
       ("python-pyzmq" ,python-pyzmq)
       ("python" ,python)
       ("which" ,which)
       ("emacs" ,emacs)
       ("texlive" ,texlive)
       ("graphviz" ,graphviz)
       ("plantuml" ,plantuml)
       ("python-pygments" ,python-pygments)
       ;; for ditaa
       ("openjdk" ,openjdk14)
       ))

Some of these are only necessary for source-blocks.

In addition to that a ton of fonts (all fonts guix has).

Best wishes,
Arne
-- 
Unpolitisch sein
heißt politisch sein
ohne es zu merken

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 1125 bytes --]

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

* Re: Export PDFs in Emacs Org
  2021-03-12 22:35   ` Dr. Arne Babenhauserheide
@ 2021-03-12 22:53     ` Ricardo Wurmus
  2021-03-14  1:04       ` Phil
  0 siblings, 1 reply; 6+ messages in thread
From: Ricardo Wurmus @ 2021-03-12 22:53 UTC (permalink / raw)
  To: Dr. Arne Babenhauserheide; +Cc: help-guix


Dr. Arne Babenhauserheide <arne_bab@web.de> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> Hi Phil,
>>
>>> But there is conflicting advice over what packages should or shouldn't
>>> be installed typically some combinaton of:
>>> texlive-base, texlive-bin, texlive-latex-base, texlive-latext-font
>>>
>>> The latest advice seems to be the only texlive-base should be necessary
>>> and installing others will cause an issue - with that in mind I
>>> attempted the below, but got a new failure.
>>
>> “texlive-base” is certainly not sufficient for any real world LaTeX
>> document.  It contains what LaTeX developers consider the base set of
>> files (i.e. texlive-latex-base), texlive-bin (which provides the
>> executables), and LaTeX packages from the “required” set.
>
> this is what I use:
[…]
>        ("texlive" ,texlive)

This is the monolithic 3+GB package, not the modular texlive.

-- 
Ricardo


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

* Re: Export PDFs in Emacs Org
  2021-03-12 22:53     ` Ricardo Wurmus
@ 2021-03-14  1:04       ` Phil
  0 siblings, 0 replies; 6+ messages in thread
From: Phil @ 2021-03-14  1:04 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix


Ricardo Wurmus writes:

>> this is what I use:
> […]
>>        ("texlive" ,texlive)
>
> This is the monolithic 3+GB package, not the modular texlive.

It is huge, but it got the job done - thanks Arne.

Having spent more hours than I'd like admit on this, I suspect the issue
may be similar to this:
http://issues.guix.gnu.org/40558#0

But I haven't proved this yet.


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

end of thread, other threads:[~2021-03-14  1:04 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-12 14:55 Export PDFs in Emacs Org Phil
2021-03-12 15:57 ` Ricardo Wurmus
2021-03-12 20:33   ` Phil Beadling
2021-03-12 22:35   ` Dr. Arne Babenhauserheide
2021-03-12 22:53     ` Ricardo Wurmus
2021-03-14  1:04       ` Phil

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