Description
Hi 👋 I have been debugging the Apple Sillicon process for reviewing as a result of discussions in #104.
The summary: success is possible. 👍
Developer dependencies
These are the dependencies I had to install in my system (outside of R) - this may be helpful for the general contributing doc:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install r harfbuzz fribidi libgit2 jpeg freetype libpng libtiff glpk
R dependencies
I wrestled with these a lot, because I kept getting errors around the renv_snapshot
validation. I think this is the order in which it leads to success:
install.packages(c('RcppParallel', 'call', 'curl', 'httr', 'openssl', 'pkgbuild', 'rang', 'rstantools', 'xml2', 'desc', 'desc', 'pkgbuild', 'igraph', 'DiagrammeR'))
install.packages(c("sandpaper", "varnish", "pegboard", "tinkr"),
repos = c("https://carpentries.r-universe.dev/", getOption("repos")))
Followed by this, which should work immediately after the dependencies are available
renv::install() # might be optional
sandpaper::manage_deps()
The back and forth was not getting me anywhere for a while, receiving the same error for quite a while (see "Error" details below). When it ended up working I was sort of surprised. I spent 90 minutes to get this to work, from start on an Apple Sillicon device without any developer tooling. Part of that time was the back and forth, so I think we could reduce that somewhat by streamlining the steps.
Error
Error:
! in callr subprocess.
Caused by error in `renv_snapshot_validate_report(valid, prompt, force)`:
! aborting snapshot due to pre-flight validation failure
ℹ See `$stdout` and `$stderr` for standard output and error.
Type .Last.error to see the more details.
Next steps
I wrote this up in order to document the steps I took to resolve the installation process in a crude form. This helps the discussion about what to do with @avallecam. I am happy to add docs to the reviewer guidelines after seeing whether this is a reproducible solution.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status