16 Configuring RStudio Server

Administrators can configure RStudio Server (Pro) to automatically use RStudio Package Manager when users install packages.

The necessary configuration files are documented in the RStudio Server admin guide, example configurations are provided here for common scenarios.

16.1 A Single Repository

In the most common scenario, users will install all packages from a single RStudio Package Manager repository that may contain CRAN packages and internal packages. An admin can discourage users from changing this repository setting. In this scenario, configure RStudio Server:

  1. In /etc/rstudio/rsession.conf, set:
r-cran-repos=https://<your-package-manager-server-address>/<repo-name>/latest

The exact URL to use is available in the RStudio Package Manager Setup page for the repository.

  1. (RStudio Server Pro only) To disable the repository option menu and discourage users from changing the repository setting, also include in /etc/rstudio/rsession.conf:
allow-r-cran-repos-edit=0

16.2 Internal Packages and CRAN Packages

Another common scenario is to setup two repositories in RStudio Package Manager, one to serve CRAN packages and one to serve internal packages. (This setup also applies if you’re only using RStudio Package Manager for internal packages and want to allow users to access a public CRAN mirror).

  1. In /etc/rstudio/rsession.conf, remove any existing r-cran-repos configuration.

  2. Create a file called /etc/rstudio/repos.conf. The file should contain:

CRAN=https://<your-package-manager-server-address>/<cran-repo-name>/latest
Internal=https://<your-package-manager-server-address>/<internal-repo-name>/latest

The name Internal can be replaced with whatever name makes sense for your organization, but the repo containing CRAN packages should be indexed with the keyword CRAN.

16.3 Allow Users to Optionally Add Additional Repos

In addition to the two scenarios described above, some organizations may have additional repositories for certain groups of users, e.g. “bleeding edge” packages available in a dedicated “dev” repository. Administrators can configure RStudio’s Global Options menu to automatically offer RStudio Package Manager repositories as optional, secondary repos that a user can opt into using.

  1. In /etc/rstudio/rsession.conf, set:
r-cran-repos-url=https://<your-package-manager-server-address>/__api__/repos
allow-r-cran-repos-edit=1

16.4 Precedence of Settings

If you have an Rprofile.site file that modifies the repository setting, that file will take precedence over these settings.

Some Ubuntu and Debian R binaries (installed via apt-get install) include an Rprofile.site file that modifies the repository option. Unless you intended to have this file, we recommend removing /usr/lib/R/etc/Rprofile.site.