rig – the R Installation Manager
Run and manage multiple versions of R side by side on macOS, Windows and Linux.
Rig is a standalone tool, with no system requirements, for system admins and users.
Quick start
Once rig is installed:
rig add release # install the latest R release
rig list # list installed R versions
rig default 4.5.1 # set the default R versionFor a step-by-step walkthrough on macOS, Windows or Linux, see the tutorials.
Features
Multiple R versions, side by side
- Install as many R versions as you like, and switch the default for the terminal, RStudio and Positron.
- Select versions by symbolic name:
release,devel,next,oldrel, or by exact version. - Run several versions at the same time via quick links:
R-4.5orR-4.5.1starts the matching R. Quick links are added to your path automatically. - List the versions you have installed, and the versions available to install.
- On arm64 macs and Windows, choose between x86_64 and arm64 builds of R, or install both.
Cross-platform and self-contained
- Works on macOS, Windows and Linux. Has native builds for many Linux distributions, and portable builds that run on any glibc- or musl-based Linux.
- A single standalone tool with no system requirements. Easy to install and update on every platform.
- Two installation modes: the default admin mode installs R system-wide (elevating to root/administrator only when needed), while the newer user mode installs everything into your home directory with no
sudoor administrator rights. - On Linux, installs distro-specific builds where available, and otherwise falls back to portable glibc/musl builds automatically.
Package management, set up for you
- Configures the default CRAN mirror and P3M binary repositories.
- Installs pak and enables automatic system requirements installation.
- Creates and configures per-user package libraries.
rig reposmanages package repositories across all your R versions. Add your own CRAN-like repositories, e.g. an internal CRAN mirror or an r-universe, and turn repositories on and off for each R version. rig remembers the setup.rig pkg(experimental) installs, removes and lists packages in a library, and looks up package info, dependencies and dependency trees from the repositories, all without running R. It also searches CRAN, and finds problems in a library, e.g. missing or too old dependencies.- Installs packages from CRAN, Bioconductor (the release that belongs to your R version), your own repositories and local paths, with version constraints, e.g.
rig pkg install 'cli@=3.6.4'. - On Linux,
rig pkg,rig projandrig runinstall the system requirements of R packages, or print the commands to install them if rig cannot run them as root.
Project dependency management (experimental)
rig projmanages an R project through anrproj.tomlmanifest: add or remove dependencies, resolve them with rig’s built-in solver into anrproj.locklockfile, and sync a project library to match, all without running R.- Lock for several R versions and platforms at once, pin repositories and Bioconductor releases, ignore package versions newer than a date with
--exclude-newer, and upgrade only some packages while keeping the rest pinned. - Import a project from, or export it to, a
DESCRIPTIONfile or an renvrenv.lockfile, to interoperate with existing R package and project tooling. - Inspect a project’s dependencies and dependency tree before installing.
Run R, scripts and apps
rig runstarts R, runs a script or expression, or launches an app: Shiny apps, Plumber APIs, Quarto and R Markdown documents, and static sites, with the R version you choose.- Self-contained scripts: declare the R version and the packages a script needs in a
# /// scriptcomment block, andrig runinstalls them into the script’s own environment. Lock the versions next to the script withrig proj lock --script. - On Windows,
rig system script-assoclets you run.Rfiles directly fromcmdand PowerShell.
Platform niceties
- A macOS menu bar app shows the default R version and lets you switch it interactively.
- Installs and configures the right Rtools versions on Windows, and cleans up stale R entries from the Windows registry.
- Shell auto-completion for
zshandbashon macOS and Linux, and for PowerShell on Windows. - On macOS, sets up R for debugging with
lldband enables core dumps. - JSON output for scripting, e.g. from
rig list,rig addandrig rtools add, and arig configcommand to manage rig’s own configuration.
Sponsors
Free code signing on Windows provided by SignPath.io, certificate by SignPath Foundation
📘 License
MIT 2021-2026 © Posit Software, PBC.