I have:
Bug description
quarto tinytex install does not check the return value of the archive extraction step. When extraction fails (e.g., due to a missing xz binary), the installer reports success and proceeds to the next step, which then fails with an unrelated and confusing lstat / NotFound error.
Steps to reproduce
On a minimal Linux system (I used an ubuntu:24.04 docker container) without xz-utils installed, run quarto tinytex install --log-level debug.
With QUARTO_LOG_LEVEL=DEBUG, the output shows:
[✓] Downloading TinyTex v2026.04
Unzipping file /tmp/85cac4ac44f83333/TinyTeX-linux-x86_64-v2026.04.tar.xz
[execProcess] tar xf /tmp/85cac4ac44f83333/TinyTeX-linux-x86_64-v2026.04.tar.xz
tar (child): xz: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
/usr/bin/tar: Child returned status 2
/usr/bin/tar: Error is not recoverable: exiting now
[execProcess] Success: false, code: 2
[✓] Unzipping TinyTeX-linux-x86_64-v2026.04.tar.xz ← shows success despite failure
Moving files
ERROR: NotFound: No such file or directory (os error 2): lstat '/tmp/85cac4ac44f83333/.TinyTeX'
Actual behavior
The extraction returns { success: false, code: 2 } but the install proceeds as if it succeeded. It instead fails on the next step to move the extracted directory as it does not exist.
Expected behavior
The installer should detect the extraction failure, report a clear error (e.g., "Failed to extract TinyTeX archive. If using .tar.xz, ensure xz-utils is installed."), and stop execution prior to attempting to move the directory.
Your environment
Quarto check output
quarto check
Quarto 1.9.36
[✓] Checking environment information...
Quarto cache location: /root/.cache/quarto
[✓] Checking versions of quarto binary dependencies...
Pandoc version 3.8.3: OK
Dart Sass version 1.87.0: OK
Deno version 2.4.5: OK
Typst version 0.14.2: OK
[✓] Checking versions of quarto dependencies......OK
[✓] Checking Quarto installation......OK
Version: 1.9.36
Path: /opt/quarto/1.9.36/bin
[✓] Checking tools....................OK
TinyTeX: (not installed)
Chromium: (not installed)
Chrome Headless Shell: (not installed)
VeraPDF: (not installed)
[✓] Checking LaTeX....................OK
Tex: (not detected)
[✓] Checking Chrome Headless....................OK
Chrome: (not detected)
[✓] Checking basic markdown render....OK
[✓] Checking R installation...........(None)
Unable to locate an installed version of R.
Install R from https://cloud.r-project.org/
[✓] Checking Python 3 installation....(None)
Unable to locate an installed version of Python 3.
Install Python 3 from https://www.python.org/downloads/
[✓] Checking Julia installation...
I have:
Bug description
quarto tinytex installdoes not check the return value of the archive extraction step. When extraction fails (e.g., due to a missing xz binary), the installer reports success and proceeds to the next step, which then fails with an unrelated and confusing lstat / NotFound error.Steps to reproduce
On a minimal Linux system (I used an
ubuntu:24.04docker container) without xz-utils installed, runquarto tinytex install --log-level debug.With QUARTO_LOG_LEVEL=DEBUG, the output shows:
Actual behavior
The extraction returns { success: false, code: 2 } but the install proceeds as if it succeeded. It instead fails on the next step to move the extracted directory as it does not exist.
Expected behavior
The installer should detect the extraction failure, report a clear error (e.g., "Failed to extract TinyTeX archive. If using .tar.xz, ensure xz-utils is installed."), and stop execution prior to attempting to move the directory.
Your environment
Quarto check output
quarto check Quarto 1.9.36 [✓] Checking environment information... Quarto cache location: /root/.cache/quarto [✓] Checking versions of quarto binary dependencies... Pandoc version 3.8.3: OK Dart Sass version 1.87.0: OK Deno version 2.4.5: OK Typst version 0.14.2: OK [✓] Checking versions of quarto dependencies......OK [✓] Checking Quarto installation......OK Version: 1.9.36 Path: /opt/quarto/1.9.36/bin [✓] Checking tools....................OK TinyTeX: (not installed) Chromium: (not installed) Chrome Headless Shell: (not installed) VeraPDF: (not installed) [✓] Checking LaTeX....................OK Tex: (not detected) [✓] Checking Chrome Headless....................OK Chrome: (not detected) [✓] Checking basic markdown render....OK [✓] Checking R installation...........(None) Unable to locate an installed version of R. Install R from https://cloud.r-project.org/ [✓] Checking Python 3 installation....(None) Unable to locate an installed version of Python 3. Install Python 3 from https://www.python.org/downloads/ [✓] Checking Julia installation...