setRepositories {utils}R Documentation

Select Package Repositories


Interact with the user to choose the package repositories to be used.


setRepositories(graphics = getOption(""),
                ind = NULL, addURLs = character(), name = NULL)



Logical. If true, use a graphical list: on Windows or macOS GUI use a list box, and on a Unix-alike if tcltk and an X server are available, use Tk widget. Otherwise use a text menu.


NULL or a vector of integer indices, which have the same effect as if they were entered at the prompt for graphics = FALSE.


NULL or character vector of names of the repositories in the repository table which has the same effect as passing the corresponding indices to ind.


A character vector of additional URLs: it is often helpful to use a named vector.


The default list of known repositories is stored in the file ‘R_HOME/etc/repositories’. That file can be edited for a site, or a user can have a personal copy in the file pointed to by the environment variable R_REPOSITORIES, or if this is unset, NULL or does not exist, in ‘HOME/.R/repositories’, which will take precedence.

A Bioconductor mirror can be selected by setting options("BioC_mirror"), e.g. via chooseBioCmirror — the default value is ‘⁠""⁠’. This version of R chooses Bioconductor version 3.18 by default, but that can be changed via the environment variable R_BIOC_VERSION.

The items that are preselected are those that are currently in options("repos") plus those marked as default in the list of known repositories.

The list of repositories offered depends on the setting of option "pkgType" as some repositories only offer a subset of types (e.g., only source packages or not macOS binary packages). Further, for binary packages some repositories (notably R-Forge) only offer packages for the current or recent versions of R. (Type "both" is equivalent to "source".)

Repository ‘⁠CRAN⁠’ is treated specially: the value is taken from the current setting of getOption("repos") if this has an element "CRAN": this ensures mirror selection is sticky.

This function requires the R session to be interactive unless ind or name is supplied. The latter overrides the former if both are supplied and values are not case-sensitive. If any of the supplied names does not match, an error is raised.


This function is invoked mainly for its side effect of updating options("repos"). It returns (invisibly) the previous repos options setting (as a list with component repos) or NULL if no changes were applied.


This does not set the list of repositories at startup: to do so set options(repos =) in a start up file (see help topic Startup) or via a customized ‘repositories’ file.

See Also

chooseCRANmirror, chooseBioCmirror, install.packages.


## Not run: 
setRepositories(addURLs =
                c(CRANxtras = ""))

## End(Not run)
oldrepos <- setRepositories(name = c("CRAN", "R-Forge"))
options(oldrepos) # restore

[Package utils version 4.4.0 Index]