repositories
A list of CRAN-like repositories to fetch packages from. Packages will be installed from the first repository a resolvable version is found in, thus the order matters!! For more information, refer to the Resolution section. By default, packages are fetched as binaries when possible.
Options
Section titled “Options”alias- Used for self-organization and to specify a certain repository source for a dependencyurl- The URL to the CRAN-like repository from which to fetch packagesforce_sourceoptional - Force all packages coming from the repository to be sourceDefault:
false
Example
Section titled “Example”repositories = [ { alias = "PPM", url = "https://packagemanager.posit.co/cran/latest" }, { alias = "BioCsoft", url = "https://bioconductor.org/packages/3.21/bioc", force_source = true },]Other Repositories
Section titled “Other Repositories”Currently, rv is tuned to best support CRAN and PPM style repositories, but there are a few specific repositories to call out:
Bioconductor
Section titled “Bioconductor”Bioconductor is just a collection of CRAN-like repositories. In R itself, tools like BiocManager expands the repositories and sets them,
so that when you call install.packages() it will search through them to find the package of interest.
rv can do that expansion for you Introduced in rv v0.23.0, with a bioconductor entry
in the repositories list instead of an alias/url pair:
repositories = [ { alias = "PPM", url = "https://packagemanager.posit.co/cran/latest" }, { bioconductor = "auto" },]That entry expands to the four Bioconductor repositories, in this order:
{ url = "https://bioconductor.org/packages/3.22/bioc" },{ url = "https://bioconductor.org/packages/3.22/data/annotation" },{ url = "https://bioconductor.org/packages/3.22/data/experiment" },{ url = "https://bioconductor.org/packages/3.22/workflows" },Options
Section titled “Options”bioconductor- The Bioconductor version to use:auto- the latest release matching ther_versionof the projectrelease- the current Bioconductor releasedevel- the current Bioconductor devel version- an explicit version, like
3.21. A version released after yourrvwas built is used as-is: only versions that never existed are refused
mirroroptional - Fetch from a mirror instead ofhttps://bioconductor.org. The/packages/<version>/<repository>paths are appended to it, so the mirror must follow the same layout. Can also be set for every project with theRV_BIOC_MIRRORenvironment variableDefault:
https://bioconductor.orgforce_sourceoptional - Force all packages coming from those repositories to be sourceDefault:
false
Only one bioconductor entry is allowed per config. List the repository URLs yourself if you need more to mix versions.
To require that a package comes from Bioconductor, use
bioconductor = true on the dependency. The expanded repositories are internal, they
appear as __rv__BioCsoft and friends in rv output and in options("repos"), and cannot be used as a dependency’s
repository alias.
R-universe
Section titled “R-universe”R-universe is formatted like a CRAN-like repository, but is missing a critical component: there is no archive.
Since reproducibility is at the forefront of design considerations with rv, we currently consider packages sourced from R-universe
as git dependencies from the beginning. While this may lead to a temporary slow down due to compilation, it is more reproducible.
We may consider downloading compiled binaries for available packages in the future if the need arises.