There are currently two options for installing Immutant: using the Leiningen plugin and downloading a zip file.

Installation via Leiningen

To install Immutant via the Leiningen plugin, you'll need to first install Leiningen, followed by the lein-immutant plugin.

Install the plugin by adding it to the plugin list in ~/.lein/profiles.clj:

{:user {:plugins [[lein-immutant "1.2.1"]]}}

You can determine the current version of the plugin by looking at its page on clojars. Note: the plugin requires Leiningen 2.3.0 or greater.

The plugin provides a number of subtasks, one of which is install. So installing Immutant is as easy as this:

$ lein immutant install [VERSION]

Without a VERSION specified, the latest versioned release will be installed.

To obtain a specific version, you can specify an incremental build number (ex: 123) or a released version (ex: 1.1.1). To obtain the latest incremental build, use LATEST for the version.

Releases installed via the plugin are installed by default under ~/.immutant/releases, and ~/.immutant/current is linked to that release. You can specify an alternative parent install directory by passing it as the third argument to install:

$ lein immutant install 1.1.1 /path/where/you/want/it 

The plugin will install Immutant there, and but will not link ~/.immutant/current to that version.

You can override the plugin base directory (~/.immutant) by setting $LEIN_IMMUTANT_BASE_DIR or by adding :lein-immutant {:base-dir "/path"} to your user profile in .lein/profiles.clj or to your project.clj. Setting the base directory in project.clj will override the setting in .lein/profiles.clj. Using the environment variable will override both.

Installation via Zip Download

You can manually download any of the same builds that you can install via the plugin. You can download incremental builds from the builds page and official releases from the releases page.

Once you have the zip downloaded, expand it somewhere handy. If you want to use the Leiningen plugin with this build, you'll need to set $IMMUTANT_HOME:

$ mkdir immutant-releases
$ cd immutant-releases
$ unzip path/to/immutant-dist-slim.zip
$ export IMMUTANT_HOME=~/immutant-releases/immutant-1.1.1-slim/

The Distribution Variants

For releases between 0.9.0 and 1.0.2, there were two release distributions avaialable:

  • slim - a smaller, lighter weight distribution that only includes the functionality needed to run Immutant Clojure applications, but not JavaEE applications.

  • full - the full JBossAS distribution with Immutant included. If you need to run JavaEE applications alongside Clojure apps in the same AS, this is the distribution for you.

Older releases and builds only provide a single distribution which is analogous to the full distribution.

For 1.1.0 and newer, only the slim distribution is provided.