I am excited to announce version 1.0 of the constructor project. Constructor combines a collection of conda packages into a standalone installer similar to the Anaconda installer.
I am excited to announce version 1.0 of
the constructor project.
Constructor combines a collection of conda packages into a standalone
installer similar to the Anaconda installer. Using constructor you can
create installers for all the platforms conda supports, namely Linux,
Mac OS X and Windows.
* The Linux and Mac installers are self extracting bash scripts.
They consist of a `bash` header, and a `tar` archive.
Besides providing some help options, and an install dialog,
the `bash` header extracts the `tar` archive, which in turn consists
of conda packages.
* The Windows installer is an executable (`.exe`), which when
executed opens up a dialog box, which walks the user through the
install process and installs the conda packages contained within the
executable. This is all achieved by relying on
NSIS (Nullsoft Scriptable Install System) under the cover.
This is the first public release of this project, which was previously
proprietary and known as “cas-installer”.
As `constructor` relies on `conda`, it needs to be installed into the
root conda environment:
conda install -n root constructor
Constructor builds an installer for the current platform by default, and can
also build an installer for other platforms, although Windows installers must
be created on Windows and all Unix installers must be created on some Unix
The `constructor` command takes an installer specification directory as its
argument. This directory needs to contain a file `construct.yaml`, which
specifies information like the name and version of the installer,
the conda channels to pull packages from, the conda packages included in
the installer, and so on.
The complete list of keys in this file can be found
The directory may also contain some optional files such as a
license file and image files for the Windows installer.
We created a
documented example to demonstrate how to build installers for
Linux, OS X and Windows that are similar to Anaconda installers, but