Closed yaccos closed 3 years ago
Hi,
I think that you can resolve those dependencies with tinytex
https://yihui.org/tinytex/. That is, add the following commands somewhere in the "install R dependencies" action https://github.com/AlmaasLab/micInt/blob/1fa54eca8107fd47d9f5823f0fe3280b794269a1/.github/workflows/check-bioc.yml#L158.
install.packages('tinytex')
tinytex::install_tinytex()
Many packages use HTML vignettes nowadays, so I think that it's best to add these dependencies as needed.
Best, Leo
I have created a Github action using
use_bioc_github_action
. This package includes Sweave vignette sources which are build to pdf files using knitr. More specifically, the discussed package is this one: https://github.com/AlmaasLab/micInt. The actions for all three platforms fails due to lack of pdf building utilities on the machines as this extract shows:E> --- re-building ‘ccrepe.Rnw’ using knitr E> Warning in has_utility("pdfcrop") : E> pdfcrop not installed or not in PATH E> Warning in has_utility("ghostscript") : not installed or not in PATH E> Warning in system2(command, args, env = env, stdout = outfile, stderr = errfile, : E> error in running command E> Warning in system2(command, args, env = env, stdout = outfile, stderr = errfile, : E> error in running command E> Error: processing vignette 'ccrepe.Rnw' failed with diagnostics: E> Running 'texi2dvi' on 'ccrepe.tex' failed. E> Messages: E> sh: 1: /usr/bin/texi2dvi: not found E> --- failed re-building ‘ccrepe.Rnw’
Hence, for the actions to run properly, pdfcrop, ghostscript, a LaTeX distribution (and other packages ?) have to be added as dependencies in the action. I know that for packages with very specific system dependencies the
check-bioc.yml
must be adopted in each case. However, this building vignette process is a rather general one and many packages would benefit from updating the upstreamcheck-bioc.yml
.