The R Installation Manager

Overview

The R Installation Manager

Install, remove, configure R versions.

🚀   Features

  • Works on macOS, Windows version is coming soon!
  • Install multiple R vresions, select the default one, run multiple versions at the same time using quick links. E.g. R-4.1 starts R 4.1.x.
  • Select R version to install using symbolic names: devel, release, oldrel and more.
  • On M1 macs select between x86_64 and arm64 versions or R, or install both.
  • Makes sure that installed packages are kept separete from the R installation.

⬇️   Installation

Download the latest release from https://github.com/gaborcsardi/rim/releases. Unpack archive and move the rim file to /usr/local/bin or some other directory in your PATH.

⚙️   Usage

Use rim add to add a new R installation:

rim add release

Use rim list to list the currently installed R versions, and rim default to set the default one.

Run rim to see all commands and examples:

rim
RIM -- The R Installation Manager 0.1.0

DESCRIPTION
    rim manages your R installations, on macOS and Windows. It can install
    and set up multiple versions R, and it makes sure that they work
    together.

    On macOS R versions installed by rim do not interfere. You can run multiple
    versions at the same time. rim also makes sure that packages installed by
    the user go into a user package library, so reinstalling R will not wipe
    out your installed packages.

    rim is currently work in progress. Feedback is appreciated.
    See https://github.com/gaborcsardi/rim for bug reports and more.

USAGE:
    rim [SUBCOMMAND]

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

SUBCOMMANDS:
    add          Install a new R version
    available    List R versions available to install (TODO)
    default      Print or set default R version
    help         Prints this message or the help of the given subcommand(s)
    list         List installed R versions
    resolve      Resolve a symbolic R version
    rm           Remove R versions
    system       Manage current installations

EXAMPLES:
    # Add the latest development snapshot
    rim add devel

    # Add the latest release
    rim add release

    # Install specific version
    rim add 4.1.2

    # Install latest version within a minor branch
    rim add 4.1

    # List installed versions
    rim list

    # Set default version
    rim default 4.0

Run rim <subcommand> --help for information about a subcommand:

rim default --help
rim-default

DESCRIPTION
    Print or set the default R version. The default R version is the one that
    is started with the `R` command, usually via the `/usr/local/bin/R`
     symbolic link.

    Call without any arguments to see the current default. Call with the
    version number/name to set the default. Before setting a default, you
    can call `rim list` to see the installed R versions.

    The default R version is set by updating the symbolic link at
    `/Library/Frameworks/R.framework/Versions/Current` and pointing it to the
    specified R version.

    Potentially you need to run this command with `sudo` to change the
    default version: `sudo rim default ...`.

    You don't need to update the default R version to just run a non-default R
    version. You can use the `R-<ver>` links, see `rim system make-links`.

USAGE:
    rim default [version]

FLAGS:
    -h, --help
            Prints help information

    -V, --version
            Prints version information


ARGS:
    <version>
            new default R version to set


EXAMPLES:
    # Query default R version
    rim default

    # Set the default version
    rim default 4.1

🤝   Feedback

Please open an issue in our issue tracker at https://github.com/gaborcsardi/rim/issues

📘   License

MIT 2021 © RStudio Pbc.

Issues
  • Check compilers on macOS

    Check compilers on macOS

    null

    opened by gaborcsardi 0
  • Install rtools on Windows

    Install rtools on Windows

    null

    opened by gaborcsardi 0
  • Install recipes on macOS

    Install recipes on macOS

    Or packages from brew. Maybe after we have better sysreqs.

    opened by gaborcsardi 0
  • macOS: do not change the default version when installing

    macOS: do not change the default version when installing

    This is hard because the installer simply overwrites the symbolic link. One possible solution is creating a volume, installing there, removing the link, and then moving the files to the / volume.

    Another possible way is to extract the .pkg file with pkgutil --extract, removing the symlink, and then pack it back up with pkgutil --flatten. Well, except that the contents is in a big Payload file after extracting, which is a cpio file, so we would need to remove it from that. Also, if there is some integrity check on the .pkg then this will not work.

    A technically worse but probably good enough approach is to watch the disk while the installer is running and as soon as the /Library/Frameworks/R.framework/Versions/Current link is (re)created, we set it back to the previous default.

    opened by gaborcsardi 0
  • Allow installing a local `.pkg` or `.tar.gz` or `.msi` file

    Allow installing a local `.pkg` or `.tar.gz` or `.msi` file

    With rim add <filename> as usual.

    opened by gaborcsardi 1
Releases(v0.1.2)
Owner
Gábor Csárdi
Gábor Csárdi
A simple password manager written in Rust

ripasso A simple password manager written in Rust. The root crate ripasso is a library for accessing and decrypting passwords stored in pass format (G

Joakim Lundborg 435 Nov 22, 2021
Semi-automatic OSINT framework and package manager

sn0int sn0int (pronounced /snoɪnt/) is a semi-automatic OSINT framework and package manager. It was built for IT security professionals and bug hunter

null 1k Nov 29, 2021
Linux Kernel Manager and Activity Monitor 🐧💻

Linux Kernel Manager and Activity Monitor ?? ?? The kernel is the part of the operating system that facilitates interactions between hardware and soft

Orhun Parmaksız 1.4k Nov 22, 2021
[DEPRECATED] password manager thing

NOTE: this is pretty much abandoned, I recommend Bitwarden now. There is an export command in the CLI that produces CSV suitable for import into Bitwa

null 310 Nov 19, 2021
Remote Secret Editor for AWS Secret Manager

Barberousse - Remote Secrets Editor About Usage Options Printing Editing Copying RoadMap 1.0 1.1 Future About A project aimed to avoid downloading sec

Mohamed Zenadi 18 Sep 28, 2021
The sysroot manager that lets you build and customize `std`

PSA: Xargo is in maintenance mode xargo The sysroot manager that lets you build and customize std Cross compiling `std` for i686-unknown-linux-gnu Xar

Jorge Aparicio 894 Nov 17, 2021
The simple password manager for geeks, built with Rust.

Rooster Rooster is a simple password manager for geeks (it works in the terminal). Rooster is made available free of charge. You can support its devel

Conrad Kleinespel 112 Nov 17, 2021
🐴 RusTOTPony — CLI manager of one-time password generators aka Google Authenticator

?? RusTOTPony CLI manager of time-based one-time password generators. It is a desktop alternative for Google Authenticator. Installation Arch Linux Pa

German Lashevich 18 Oct 27, 2021
Time-manager of delayed tasks. Like crontab, but synchronous asynchronous tasks are possible, and dynamic add/cancel/remove is supported.

delay-timer Time-manager of delayed tasks. Like crontab, but synchronous asynchronous tasks are possible, and dynamic add/cancel/remove is supported.

BinCheng 173 Nov 21, 2021
A small and modular media manager

Bookshelf - a small and modular media manager Bookshelf is made for managing media, mainly books. Modules are to be made by the user (or stolen from t

Chocolate Overflow 33 Jun 8, 2021
Cross-platform bookmarks manager for your shell

shellmark: bookmark manager for shell THIS IS AN EARLY ALPHA. It works for me, but requires better UX and more polish. shellmark is a cross-platform b

Artem Pyanykh 17 Nov 23, 2021
RDFM - The Rusty DotFiles Manager

d8888b. d88888b. 8888888b 8888b d8888 88 `8D 88 `8D 88' 88'YbdP`88 88oobY' 88 88

Wafelack 40 Sep 5, 2021
A tiling window manager for Windows 10 based on binary space partitioning

yatta BSP Tiling Window Manager for Windows 10 Getting Started This project is still heavily under development and there are no prebuilt binaries avai

Jade 141 Nov 18, 2021
Valheim Docker powered by Odin. The Valheim dedicated gameserver manager which is designed with resiliency in mind by providing automatic updates, world backup support, and a user friendly cli interface.

Valheim Docker If you are looking for a guide on how to get started click here Mod Support! It is supported to launch the server with BepInEx but!!!!!

Michael 603 Nov 25, 2021
comfy is a flexible command script manager / runner written in Rust

comfy is a cross-platform command script manager / runner tool, which allows you to run commands in the command line itself, but being these predefined in a portable and universal .comfy file.

daCoUSB 17 Nov 12, 2021
A cryptographically verifiable code review system for the cargo (Rust) package manager.

A cryptographically verifiable code review system for the cargo (Rust) package manager.

crev - Code REView system 1.5k Nov 27, 2021
Cargo - The Rust package manager

Cargo downloads your Rust project’s dependencies and compiles your project.

The Rust Programming Language 7.5k Nov 30, 2021
Task runner and process manager for Rust

Steward Task runner and process manager for Rust. If you're not happy managing your infrastructure with a pile of bash scripts, this crate might be he

Alex Fedoseev 17 Nov 4, 2021
A kernel version manager for systemd-boot and AOSC OS

Your systemd-boot's best friend ever (Implemented in Rust) A kernel version manager for systemd-boot and AOSC OS Usage First initialize friend and sys

AOSC-Dev 6 Nov 22, 2021
basic multiple package manager

baka basic multiple package manager Docs Env baka_root_setting Windows: %USERPROFILE%/.baka/config Linux, Mac: $HOME/.baka/config baka_plugins (Just u

null 8 Nov 18, 2021
Volt - A powerful, fast and memory safe package manager for the web

Volt - A powerful, fast and memory safe package manager for the web

Volt Package Manager 536 Nov 30, 2021
A simple password manager written in rust

Passman - A password manager written in rust. How to use?: USAGE: passman option Currently available options are: new - initalize passman with a new m

Strawkage 7 Aug 26, 2021
🌱 Easy to use, blazing-fast, and reliable Chia plot manager for your farm

?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? UNDER DEVELOPME

Daniel De Lucca 7 Oct 12, 2021
A cryptographically verifiable code review system for the cargo (Rust) package manager.

image credit cargo-crev A cryptographically verifiable code review system for the cargo (Rust) package manager. Introduction Crev is a language and ec

crev - Code REView system 1.5k Nov 20, 2021
A simple password manager written in Rust

ripasso A simple password manager written in Rust. The root crate ripasso is a library for accessing and decrypting passwords stored in pass format (G

Joakim Lundborg 435 Nov 22, 2021
Novus - A blazingly fast and efficient package manager for windows.

Novus - A blazingly fast and efficient package manager for windows. Why Novus Swift Unlike any other package manager, Novus uses multithreaded downloads

Novus 174 Nov 9, 2021
Command line password manager

Usage pw list all entries pw add add new entry pw del delete entry pw <name> generate password for entry; name can refer to either an entry's name or

William Wang 9 Sep 29, 2020
StarWM is an extensible window manager written in Rust.

StarWM is an extensible, floating and tiling, X window manager for Linux-based operating systems written in Rust.

StarWM 18 Nov 30, 2021
Manager for single node Rancher clusters

Bovine Manage single node Rancher clusters with a single binary, bovine. % bovine run Pulling [rancher/rancher:latest], this may take awhile... Ranche

Nick Gerace 53 Nov 20, 2021