You are not logged in.
Pages: 1
At some point, my LaTeX installation broke. It was something about missing .fmt files and missing symbols in one of the kpathsea shared objects. I didn't write down the specifics, because I figured it was some obscure issue that would be resolved by upgrading. However, the upgrade did not fix the issue. I tried removing and reinstalling all related packages...
sudo pacman -Rs texlive-latexextra texlive-bibtexextra pandoc-cli texlive-pstricks texlive-basic && sudo pacman -S texlive-latexextra texlive-bibtexextra pandoc-cli texlive-pstricks texlive-basicHowever, there were A LOT of orphaned files (presumably generated by tlmgr or its components?) that were causing warnings at installation and causing pdflatex to fail.
So, I tried removing all orphaned files related to LaTeX, by manually identifying all the TeX-related stuff in:
find /etc /usr /opt | LC_ALL=C.UTF-8 pacman -Qqo -and then moving those TeX-related files to a backup directory.
When I tried to reinstall the LaTeX packages again, I got a bunch of warnings and errors, for example:
fmtutil [WARNING]: double mention of dvilualatex/luatex in etc/texmf/web2c/fmtutil.cnf
...
updmap [ERROR]: The following map file(s) couldn't be found:
updmap [ERROR]: arss.map (in /etc/texmf/web2c/updmap.cfg)
...I'm not intending to use LaTeX at a low level, I just want pandoc and pdflatex to work. Is there a way I can just remove ALL LaTeX-related packages and files and do a fresh install? At this point, I'm considering just rebuilding my root directory from scratch, but I'd prefer to avoid that. (I have a small handful of systemd services and cron jobs that I'd have to back up, but that would be less painful than the LaTeX stuff thus far.)
Also, not important beyond curiosity, why are so many orphaned files generated? Until pandoc and pdflatex stopped working, I'd only ever interacted with the LaTeX stuff via pacman. It seems odd that a package would create orphaned files.
Offline
why are so many orphaned files generated? Until pandoc and pdflatex stopped working, I'd only ever interacted with the LaTeX stuff via pacman. It seems odd that a package would create orphaned files.
It wouldn't. But as to why those files existed is anyone's guess. You didn't tell us anything about what / where those files were, and it sounds like you've already removed them. So there are no answers left to be found.
I'm not intending to use LaTeX at a low level, I just want pandoc and pdflatex to work.
Then do yourself a huge favor and try tectonic instead.
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
... tell us anything about what / where those files were...
I backed them up to another directory, preserving the original directory structure. (see below)
Starting with
find /etc /usr /opt | LC_ALL=C.UTF-8 pacman -Qqo - 2>&1 >&- >/dev/null | cut -d ' ' -f 5-I did a bunch of pattern-matching to identify things related to TeX.
Based on this, I manually created texMoveList2:
/etc/texmf/
/usr/bin/git-latexdiff
/usr/bin/latex2man
/usr/bin/latex2nemeth
/usr/bin/latexdef
/usr/bin/latexdiff
/usr/bin/latexdiff-vc
/usr/bin/latexfileversion
/usr/bin/latex-git-log
/usr/bin/latexindent
/usr/bin/latexmk
/usr/bin/latexpand
/usr/bin/latex-papersize
/usr/bin/latexrevise
/usr/bin/mkjobtexmf
/usr/bin/mkluatexfontdb
/usr/bin/optexcount
/usr/bin/pdflatexpicscale
/usr/bin/pdftex-quiet
/usr/bin/tex4ebook
/usr/bin/texconfig
/usr/bin/texconfig-dialog
/usr/bin/texconfig-sys
/usr/bin/texcount
/usr/bin/texdef
/usr/bin/texdiff
/usr/bin/texdirflatten
/usr/bin/texdoc
/usr/bin/texdoctk
/usr/bin/texfot
/usr/bin/texindy
/usr/bin/texlinks
/usr/bin/texliveonfly
/usr/bin/texloganalyser
/usr/bin/texlogfilter
/usr/bin/texlogsieve
/usr/bin/texplate
/usr/bin/xelatex-unsafe
/usr/bin/xetex-unsafe
/usr/lib/bak_libptexenc.so.1_bak
/usr/lib/ghc-9.0.2/site-local/
/usr/share/libalpm/hooks/texlive-updmap.hook
/usr/share/texmf-dist/
/usr/share/texmf/ls-R
/usr/share/tlpkg/Then, I flattened the list and did a smoke-check to make sure everything *really was* orphaned and existed:
for f in $(cat texMoveList2); do
find "$f" -type f \
| LC_ALL=C.UTF-8 pacman -Qqo - 2>&1 >&- >/dev/null \
| grep -ve 'specified with empty stdin' \
| cut -d ' ' -f 5- >> texMoveList5;
doneThis is the script I used to finally move everything:
#!/bin/bash
set -e # exit if there are errors
dumpDir='texDump_2024-05-25'
mkdir -p "$dumpDir"
for f in $(cat texMoveList5); do
echo "file to move: $f"
base="$(basename "$f")"
dir="$(dirname "$f")"
echo "old dir: $dir"
newDir="$dumpDir$dir"
echo "new dir: $newDir"
mkdir -p "$newDir"
sudo mv "$f" "$newDir/$base"
echo
done
echo done(I realized after the fact that this clobbered the permissions... Oh well...)
Here's the tree of that backup directory (1.1 MB)
try tectonic
Thanks for the recommendation! I was hoping something like that existed. I never liked TeX Live. I'll have to look into it more before trying it, to make sure there's at least some kind of user-intervention before it tries to download things.
Offline
Pages: 1