Bug 2025720 - Document fails to compile in Fedora 35
Summary: Document fails to compile in Fedora 35
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: texlive
Version: 35
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Tom "spot" Callaway
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-11-22 20:03 UTC by Susi Lehtola
Modified: 2022-02-05 01:21 UTC (History)
5 users (show)

Fixed In Version: texlive-2021-48.fc35
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-02-05 01:21:34 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Susi Lehtola 2021-11-22 20:03:05 UTC
Dear spot,

I just updated my Fedora 34 laptop to Fedora 35 using dnf --distro-sync --releasever=35.

The TeXLive installation appears to have broken down: I am getting errors about missing fonts.

The errors persist, even though I already did a clean reinstall of all texlive packages by

# dnf remove texlive\*

and

# dnf install texlive-scheme-full


Here's a reduced test case

\documentclass[english]{revtex4-2}
\usepackage{amsbsy}
\begin{document}
\begin{table}
\begin{itemize}
\item $\psi_{nlm}=R_{nl}(r)Y_{lm}(\hat{\boldsymbol{r}})$
\end{itemize}
\end{table}
\end{document}


Running pdflatex on this document results in 130 warnings from pdfTeX like

pdfTeX warning: pdflatex (file /usr/share/texlive/texmf-var/fonts/map/pdftex/up
dmap/pdftex.map): fontmap entry for `pcrbo8u' already exists, duplicates ignore
d

The relevant part of the output from pdflatex is however

!pdfTeX error: pdflatex (file cmmi6.t3): cannot open Type 1 font file for readi
ng
 ==> Fatal error occurred, no output PDF file produced!


According to Google, these kinds of errors may be resolved by running

$ sudo updmap-sys --syncwithtrees

This also results in a large number of warnings such as

updmap [WARNING]: font ec-kuriercm-sc is defined multiple times:
updmap [WARNING]:   kurier.map (from /usr/share/texlive/texmf-config/web2c/updmap.cfg)
updmap [WARNING]:   kurier-ec.map (from /usr/share/texlive/texmf-dist/web2c/updmap.cfg) (used)

Comment 1 Tom "spot" Callaway 2021-11-22 20:22:39 UTC
I hate triggers and scriptlets.

If you look at texlive-base, it should be launching updmap-sys --syncwith trees as part of this %transfiletriggerin (or %transfilepostun):

%transfiletriggerin -n %{shortname}-kpathsea -- %{_texdir}/texmf-dist/fonts/map/dvips/
list=`grep "\.map" | sort -n | uniq`
while read -r line; do
        [ -z "$line" ] && continue
        shortfile=`basename "$line"`
        if `echo $shortfile | grep -Eq 'allrunes.map|arabtex.map|arss.map|artm.map|bbold.map|cbgreek-full.map|ccpl.map|cmextra.map|cmll.map|cm.map|cm-super-t1.map|cm-super-t2a.map|cm-super-t2b.map|cm-super-t2c.map|cm-super-ts1.map|cm-super-x2.map|cmtext-bsr-interpolated.map|cyrillic.map|dvng.map|esint.map|ethiop.map|eurosym.map|hfbright.map|iby.map|latxfont.map|lxfonts.map|manfnt.map|mflogo.map|mongolian.map|musix.map|pigpen.map|plother.map|pltext.map|rsfs.map|semaf.map|stmaryrd.map|symbols.map|tipa.map|trajan.map|vnrother.map|vnrtext.map|wasy.map|xypic.map|yhmath.map'`; then
                %{_bindir}/updmap-sys --nomkmap --enable MixedMap=$shortfile >/dev/null 2>&1 || :
        else
                %{_bindir}/updmap-sys --nomkmap --enable Map=$shortfile >/dev/null 2>&1 || :
        fi
done <<< "$list"
# With the demise of updmap-map, we need to make system maps here.
# %{_bindir}/updmap-sys --quiet --nomkmap >/dev/null || :
yes | %{_bindir}/updmap-sys --quiet --syncwithtrees >/dev/null 2>&1 || :
%{_bindir}/updmap-sys --quiet --force 2>&1 || :

%transfiletriggerpostun -n %{shortname}-kpathsea -- %{_texdir}/texmf-dist/fonts/map/dvips/
list=`grep "\.map" | sort -n | uniq`
while read -r line; do
        [ -z "$line" ] && continue
        shortfile=`basename "$line"`
        if `echo $shortfile | grep -Eq 'allrunes.map|arabtex.map|arss.map|artm.map|bbold.map|cbgreek-full.map|ccpl.map|cmextra.map|cmll.map|cm.map|cm-super-t1.map|cm-super-t2a.map|cm-super-t2b.map|cm-super-t2c.map|cm-super-ts1.map|cm-super-x2.map|cmtext-bsr-interpolated.map|cyrillic.map|dvng.map|esint.map|ethiop.map|eurosym.map|hfbright.map|iby.map|latxfont.map|lxfonts.map|manfnt.map|mflogo.map|mongolian.map|musix.map|pigpen.map|plother.map|pltext.map|rsfs.map|semaf.map|stmaryrd.map|symbols.map|tipa.map|trajan.map|vnrother.map|vnrtext.map|wasy.map|xypic.map|yhmath.map'`; then
                %{_bindir}/updmap-sys --nomkmap --disable MixedMap=$shortfile >/dev/null 2>&1 || :
        else
                %{_bindir}/updmap-sys --nomkmap --disable Map=$shortfile >/dev/null 2>&1 || :
        fi
done <<< "$list"
# With the demise of updmap-map, we need to make system maps here.
# %{_bindir}/updmap-sys --quiet --nomkmap >/dev/null || :
yes | %{_bindir}/updmap-sys --quiet --syncwithtrees >/dev/null 2>&1 || :
%{_bindir}/updmap-sys --quiet --force 2>&1 || :

******

Translated, it means that if a file is added/modified/removed from %{_texdir}/texmf-dist/fonts/map/dvips/, the texlive-kpathsea trigger should run updmap-sys --quiet --syncwithtrees.

TeXLive used to provide a pre-generated updmap.map but they stopped doing that in TL2021.

Can you confirm the version of texlive-kpathsea that you have?

Comment 2 Susi Lehtola 2021-11-22 21:01:13 UTC
$ rpm -q texlive-kpathsea
texlive-kpathsea-20210325-40.fc35.x86_64

I should point out, however, that running updmap-sys --syncwithtrees does not solve the problem: I still get

!pdfTeX error: pdflatex (file cmmi6.t3): cannot open Type 1 font file for readi
ng
 ==> Fatal error occurred, no output PDF file produced!

Comment 3 Tom "spot" Callaway 2021-11-23 17:18:44 UTC
Okay, lets focus on that issue then. I did a new F35 install and then:

 # dnf install texlive-scheme-full

Then I ran pdflatex test.tex (your test case) ... and it succeeded.

texlive-mpfonts was installed as part of that transaction and texlive-mpfonts has cmmi6.t3:

$ rpm -ql texlive-mpfonts | grep cmmi6.t3
/usr/share/texlive/texmf-dist/fonts/type3/mpfonts/cmmi6.t3

$ rpm -q texlive-mpfonts
texlive-mpfonts-svn54512-45.fc35.noarch

Do you have texlive-mpfonts installed? This feels like something may have gone wrong in the upgrade.

Comment 4 Tom "spot" Callaway 2021-11-23 19:18:08 UTC
To be thorough, I also installed an instance of Fedora 34, then installed texlive-scheme-full, tested your case (it worked), dist-upgrade'd to Fedora 35, retested (it still worked).

Comment 5 Susi Lehtola 2021-11-23 20:58:52 UTC
I do:

$ rpm -q texlive-mpfonts
texlive-mpfonts-svn54512-45.fc35.noarch

This is the same package you have. Interestingly, another machine I have that I upgraded from F34 to F35 in the same technique does not have any issue either.

I guess removing all texlive packages and reinstalling texlive-scheme-full did not do the trick on my laptop...

Comment 6 Tom "spot" Callaway 2021-11-23 21:37:45 UTC
So, the usual thoughts:

1. Do you have any local texlive cache? (~/.texlive20*) Try deleting it and seeing if the issue goes away.
2. Did you install anything from CTAN? texlive gets weird when you do that.
3. Check to see if the packages are intact? rpm -V texlive-mpfonts might be a good start.

Comment 7 Susi Lehtola 2021-11-24 03:11:40 UTC
1. Removed, no effect.
2. No.
3. Verified, no problem.

I also did the further step of once again removing all texlive related packages,

# dnf -y remove texlive\*

as well as wiping the remaining directories

# rm -rf /usr/share/texlive/ /etc/texlive/

and forcing a SELinux relabeling

# touch /.autorelabel

and then rebooting and reinstalling texlive-scheme-full.


It looks like something in the finalization scrips screw things up. I've tried this several times: when the RPMs have been installed, there's a time window in which I am able to compile the document. However, when the DNF transaction has completed / all the triggers have finished running, I end up again with a non-working TeXLive installation....

Comment 8 Susi Lehtola 2021-11-29 23:19:45 UTC
I just did a clean, fresh reinstall of Fedora 35 on my laptop. I still get the error.

!pdfTeX error: pdflatex (file cmmib9.t3): cannot open Type 1 font file for read
ing
 ==> Fatal error occurred, no output PDF file produced!

I installed the XFCE edition with the authoring and publishing tools, and texlive-scheme-full via dnf. I cleared out the texlive directory in my home directory.

Comment 9 Susi Lehtola 2021-11-29 23:24:24 UTC
There's also the same 15603 lines of warnings about the fonts being defined multiple times, e.g.

updmap [WARNING]: font cs-qplb is defined multiple times:
updmap [WARNING]:   qpl.map (from /usr/share/texlive/texmf-config/web2c/updmap.cfg)
updmap [WARNING]:   qpl-cs.map (from /usr/share/texlive/texmf-dist/web2c/updmap.cfg) (used)

when I tried running $ sudo updmap-sys --syncwithtrees

Apparently, updmap-sys is configured to employ several configuration files

updmap will read the following updmap.cfg files (in precedence order):
  /usr/share/texlive/texmf-config/web2c/updmap.cfg
  /usr/share/texlive/texmf-dist/web2c/updmap.cfg
updmap may write changes to the following updmap.cfg file:
  /usr/share/texlive/texmf-config/web2c/updmap.cfg

but they are actually the same file

$ file /usr/share/texlive/texmf-config/web2c/updmap.cfg
/usr/share/texlive/texmf-config/web2c/updmap.cfg: symbolic link to ../../texmf-dist/web2c/updmap.cfg
$ file /usr/share/texlive/texmf-dist/web2c/updmap.cfg
/usr/share/texlive/texmf-dist/web2c/updmap.cfg: symbolic link to /etc/texlive/web2c/updmap.cfg

Comment 10 Susi Lehtola 2021-11-30 20:08:04 UTC
I also had another computer, where TeXLive worked even though I had upgraded from Fedora 34 to Fedora 35 via dnf. I removed its whole TeXLive installation

# dnf -y remove texlive\*

removed any leftover files

# rm -rf /etc/texlive /usr/share/texlive

and reinstalled TeXLive from scratch

# dnf -y install texlive-scheme-full

After this procedure, the other computer also gives the same font error

!pdfTeX error: pdflatex (file cmmib9.t3): cannot open Type 1 font file for reading


You should also be able to reproduce the error by removing texlive and installing texlive-scheme-full.

Comment 11 Susi Lehtola 2021-11-30 21:02:44 UTC
Removing texlive altogether and installing texlive-scheme-medium results in a working installation. Installing texlive-scheme-full on top breaks it in what appears to be a fully reproducible manner.

Comment 12 Jürgen Holm 2021-12-03 13:09:10 UTC
Hi,

I run updmap-sys 100 times and got 100 different /var/lib/texmf/fonts/map/pdftex/updmap/pdftex_dl14.map  in size and content. WTF?

This  bug is a real showstopper in our institute of theoretical physics Göttingen!!

Comment 13 Jürgen Holm 2021-12-03 15:56:56 UTC
I think updmap is  buggy in fc34 also, but you did not hit the bug because the distributed map files in /usr/share/texlive/texmf-dist/fonts/map
./dvips/updmap/ps2pk.map
./dvips/updmap/psfonts.map
./dvips/updmap/psfonts_pk.map
./dvips/updmap/psfonts_t1.map
./pdftex/updmap/pdftex_ndl14.map
./pdftex/updmap/pdftex_dl14.map
./pdftex/updmap/pdftex.map
are correct. Correct means that no ".t3" strings are found in the map files. 
If you remove the above files from   /usr/share/texlive/texmf-dist/fonts/map in fc34 and run
 updmap-sys --syncwithtrees
 updmap-sys
you hit the bug. updmap-sys generates .map file every time with a different size an content!

My fc35 fix is to copy (overwrite existing files) the above files from fc34 to /var/lib/texmf/fonts/map/

Comment 14 Fedora Update System 2021-12-15 19:11:20 UTC
FEDORA-2021-1038a6ffa3 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2021-1038a6ffa3

Comment 15 Fedora Update System 2021-12-15 19:12:14 UTC
FEDORA-2021-1038a6ffa3 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2021-1038a6ffa3

Comment 16 Tom "spot" Callaway 2021-12-15 19:13:18 UTC
Please apply the updates here and let me know if things start to work. I was able to reproduce this issue and this fix resolved it for me (once the new trigger scriptlet runs, it results in a working configuration).

Comment 17 Jürgen Holm 2021-12-15 23:23:51 UTC
I updated all files from https://koji.fedoraproject.org/koji/buildinfo?buildID=1867318

but this won't fix the problem in texlive-scheme-basic-svn54191-45.fc35.noarch.
Update to texlive-scheme-full-svn54074-45.fc35.noarch didn't fix this also

fgrep .t3 /var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map  shows many hit's. This results in something like this
 pdflatex (file cmmib9.t3): cannot open Type 1 font...

The line in pdftex.map
  cmmib9 cmmib9 <cmmib9.t3
is wrong. Should be: 
  cmmib9 cmmib9 <cmmib9.pfb

On FC33  fgrep .t3 /usr/share/texlive/texmf-dist/fonts/map/pdftex/updmap/pdftex.map give no hits!!

What is the correct way to create the updmap/*.map files??
Where is the trigger function?

 updmap-sys --syncwithtrees
 updmap-sys
isn't the right way!

Comment 18 Susi Lehtola 2021-12-15 23:50:49 UTC
Thanks spot, the problem was solved by the update. I verified this on two separate machines.

On my laptop, on which I had done a clean reinstall of Fedora 35 on, I had a working installation of texlive-scheme-medium + a dozen more packages I needed to get my documents to compile. I installed texlive-scheme-full from updates-testing, and this led to a still working LaTeX installation.

On my server, where I likewise had a working texlive-scheme-medium installation, I installed texlive-scheme-full from the updates repo, reproducing the reported issue. Updating texlive from updates-testing fixed the issue, and I could compile the test document.

Jürgen: please open up a new ticket for your issue, since it appears to be a separate one...

Comment 19 Fedora Update System 2021-12-16 02:07:56 UTC
FEDORA-2021-1038a6ffa3 has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-1038a6ffa3`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-1038a6ffa3

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 20 Jürgen Holm 2021-12-16 09:49:14 UTC
I was not aware of how  apply the updated version with --advisory option.
I con now confirm the all problems are gone. 
Please move the updated packages as soon as possible to the regular update.

Thanks a lot!

Comment 21 Susi Lehtola 2021-12-16 14:27:51 UTC
Jürgen: to help the updates get shipped to stable, provide feedback in the above link if you have not already done so.

Comment 22 George Kokinis 2022-01-25 22:54:56 UTC
I can confirm that, after a "big" set of updates to texlive (specifically a transaction that upgraded to texlive-latex-9:20210325-44.fc35.noarch, and equivalent, on 24th Jan 2022), I also encountered this bug, with file cmbx10.t3.
However after applying `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-1038a6ffa3`, my system now works.
Hope this helps with getting sufficient feedback. Please let me know if there's anything else I can test/provide.

Comment 23 Fedora Update System 2022-01-27 22:49:45 UTC
FEDORA-2021-1038a6ffa3 has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-1038a6ffa3`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-1038a6ffa3

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 24 Fedora Update System 2022-02-05 01:21:34 UTC
FEDORA-2021-1038a6ffa3 has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.