Bug 2025720
Summary: | Document fails to compile in Fedora 35 | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Susi Lehtola <susi.lehtola> |
Component: | texlive | Assignee: | Tom "spot" Callaway <spotrh> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | 35 | CC: | caznaranl, george.kokinis, holm, spotrh, than |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | texlive-2021-48.fc35 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2022-02-05 01:21:34 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Susi Lehtola
2021-11-22 20:03:05 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? $ 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! 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. 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). 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... 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. 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.... 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. 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 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. 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. 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!! 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/ FEDORA-2021-1038a6ffa3 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2021-1038a6ffa3 FEDORA-2021-1038a6ffa3 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2021-1038a6ffa3 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). 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! 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... 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. 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! Jürgen: to help the updates get shipped to stable, provide feedback in the above link if you have not already done so. 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. 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. 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. |