Kaggle / docker-rcran

A dockerfile to install all of CRAN
Apache License 2.0
19 stars 15 forks source link

use pkgdepends for package installation #80

Open rvalieris opened 5 months ago

rvalieris commented 5 months ago

Hello, this is a followup on https://github.com/Kaggle/docker-rcran/issues/78.

I see that @calderjo managed to get the build working, thats awesome !! I couldn't figure out how to make make_dependency_list work so I went a different direction, utilizing pkgdepends to do the package installation, I'm submitting the PR anyway in case its useful.

main changes are:

besides not having to mess with make_dependency_list, it can install packages from both CRAN and Bioconductor, and it also handles installing missing system libraries if the package declares them, these are the dependencies pkgdepends installed, besides the libraries that are already being installed on the Dockerfile:

p$show_sysreqs() + cargo - gifski + default-jdk - Deducer, JavaGD, JGR, OpenStreetMap, openNLPdata, RWeka, RWekajars, XLConnect, arulesCBA, bartMachine, bartMachineJARs, coreNLP, dismo, glmulti, h2o, openNLP, venneuler, rCBA, rJava, rcdk, xlsx + gdal-bin - sf, terra, concaveman, mlr, warbleR + jags - MBNMAdose, R2jags, mlr, rjags, runjags + libavfilter-dev - av + libboost-all-dev - RQuantLib + libgl1-mesa-dev - rgl + libgmp3-dev - Rmpfr, arrangements, PMCMRplus, gmp, mlr + libmpfr-dev - Rmpfr, PMCMRplus, mlr + libopenmpi-dev - ergm, mlr + libprotoc-dev - protolite + libquantlib0-dev - RQuantLib + libxslt-dev - xslt + pandoc-citeproc - bayesplot, footBayes, loo, rstanarm + pari-gp - elliptic + rustc - gifski + tcl - rriskDistributions, tcltk2 + texlive - animation, huxtable, texreg + tk - rriskDistributions, tcltk2 + tk-dev - rriskDistributions, tcltk2 + tk-table - rriskDistributions, tcltk2
google-cla[bot] commented 5 months ago

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.