How to Build a Custom Anaconda Installer for R


Abstract package background

A frequent question on the Anaconda Community mailing list is how to package R with conda for distribution. Depending on the use case, one option may be to use conda to move environments. This requires that conda has been previously installed on the system. Another option is conda constructor, a utility for packaging a complete conda installation with Python and R packages.

Constructor is the same utility we use to build Anaconda Distribution and Miniconda installers. It’s a multi-platform installer which means you can build an installer for Windows, Linux and macOS. It also supports a number of options to control how the installer is built. These options are documented on the GitHub constructor repository.

Installing Constructor

Constructor v3.0 requires conda 4.7.10 or higher. Check the version of conda and update if needed.

(base)$ conda --version
Conda 4.7.5
(base)$ conda upgrade conda

Install constructor and check the version:

(base)$ conda install constructor
(base) $ constructor --version
constructor 3.0.0

Constructor Basics

Constructor uses a YAML file to configure the build. The default file name for the configuration file is construct.yaml. The only mandatory elements are the name and version, but to create an environment you will also need to specify the channels and the packages to be installed. This is an example file that creates an installer with just python and conda:

name: myBase
version: 0.1

  - python
  - conda

To build this installer

(base)$ constructor .

If you run this command in macOS, constructor will create an installer named
By default, the installer uses name-version-OS as the naming convention when a name is not specified.

If you want to create a .pkg installer named myBase_Belong_To_Us, add the installer_type and installer_filename keys to the construct.yaml file:

installer_filename: myBase_Belong_To_Us.pkg
installer_type: pkg  [osx]

The keys available to customize the installer are listed on the constructor GitHub repository.

Custom R Installer Tutorial

The R installer tutorial covers how to build installers for Windows, Linux and macOS. The tutorial includes construct.yaml files for each operating system because there are OS-specific options. The installer includes conda, R and a base set of R packages. It also includes a sample Jupyter Notebook to work with R. If users want to add additional R or Python packages to the installation, they can use conda.

If you want to build your own installers, try out the tutorial on GitHub.

You May Also Like

Let’s Talk PyCon 2017 – Thoughts from the Anaconda Team
We’re not even halfway through the year, but 2017 has already been filled to the brim with dynamic presentations and action-packed conferences. This past week, the Anaconda ...
Read More
For Practitioners
Understanding Conda and Pip
Conda and pip are often considered as being nearly identical. Although some of the functionality of these two tools overlap, they were designed and should be used for differen...
Read More
Enterprise Data Science
6 Reasons Your Open-Source Data Science Pipeline Needs Attention Now
Your enterprise data scientists are almost certainly using Anaconda Distribution alongside 20 million other practitioners worldwide. The Anaconda Distribution is a package and...
Read More