Rhumba: the fast R distribution is available on Windows!
A few months ago, Mariana Meireles created Rhumba, a fast R package manager and distribution leveraging the conda-forge initiative and the mamba library.
Today, we’re happy to announce a new major release of Rhumba, with tons of new features and the support of the Windows platform!
Previously on Rhumba
While CRAN is the official package manager for the R ecosystem, even simple operations can be time-consuming with it. By design, CRAN compiles packages on users’ machine which is a quite time-consuming task.
The huge effort of the
conda-forge community to build thousands of conda R packages makes them ready-to-use, without having to pay this extra cost of compilation.
Rhumba leverages mamba’s internals, such as the efficient and robust libsolv solver, to manage conda packages. It is the exact same pure C++ implementation as micromamba that provides fast operations!
New features, cross-platform!
Rhumba takes all the benefits of recent efforts put on mamba and micromamba to provide support for:
- more operations: install, update, create, remove, info, list, etc.
- configuration files! including use of your already existing rc files (.condarc or similar) with many options already supported
A lot will also be coming soon, for example package signing. Stay tuned!
You said cross-platform?
Yes, that’s it! Rhumba is available on Windows to serve the R community. You see it in action on the previous screencast ran from PowerShell.
libmamba is the library that provides all the features of Rhumba, but requires a C++17 compliant compiler, which is not fully the case of the MinGW toolchain. After an initial setback, we decided to implement a C-API in libmamba to make it available much more easily.
This new C-API opens a lot of new perspectives to explore, such as new language bindings with Python using ctypes, or Julia!
How to get started
If you are familiar with the conda ecosystem and already have an installation running, you can simply install Rhumba with:
mamba install rhumba -c conda-forge
You can also bootstrap a fresh environment using micromamba based on your packages specs!
What R packages are available on conda-forge?
If a CRAN package isn’t available on conda-forge yet, you can use
conda-r-skeleton-helper to generate a recipe for it.
About the author
My name is Adrien Delsalle and I’m a scientific software developer at QuantStack. I’m currently working on the xtensor and mamba stacks.