I'm not sure whether this problem is in tup itself or in libfuse3. When I run tup on the minimal example whose files are attached below, tup runs pdftex (correctly). However, pdftex fails: $ tup init .tup repository initialized: .tup/db $ tup [ tup ] [0.028s] Scanning filesystem... [ tup ] [0.058s] Reading in new environment variables... [ tup ] [0.085s] Parsing Tupfiles... 1) [0.002s] . 0) [0.001s] auto [ ] 100% [ tup ] [0.098s] No files to delete. [ tup ] [0.098s] Generating .gitignore files... [ tup ] [0.141s] Executing Commands... * 0) pdftex test.tex This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2025/dev/Debian) (preloaded format=pdftex) restricted \write18 enabled. entering extended mode (./test.tex) * ! Emergency stop. <*> ! ==> Fatal error occurred, no output PDF file produced! Transcript written on test.log. *** tup messages *** *** Command ID=30 failed with return value 1 [ ] 100% *** tup: 1 job failed. I modified the tupfile to run pdftex under strace. It showed that pdftex read in the test.tex source file twice, the first time correctly. However, on the second read-in, the file had zero size (which produced the error in pdftex). See the attached strace-extract.log