Enthought Deployment Manager, or EDM, is Enthought’s new environment and package manager. With EDM you can quickly create multiple self-contained Python environments and install and manage sets of Python packages with consistent dependencies. The “Deployment” in Enthought Deployment Manager indicates that EDM is managing more than just packages or distributions; the long-term view for this tool is to also deliver applications.
EDM creates self-contained environments with their own Python executable and set of packages. This allows users to reproduce a colleague or partner’s environment for co-development, troubleshooting, or testing or to work on different projects with different sets of dependencies.
Dependency information is included in Enthought’s curated packages to allow EDM’s dependency solver to create sets of reliably consistent packages. This allows users to have one set of package versions in a known production state while developing an experimental state for the next release.
EDM implements the best principles of virtualenv
managers such as virtualenvwrapper
and pew
as well as the Ruby Version Manager (rvm
), but avoiding the pitfalls of virtual environments by providing robust single-layer Python environments similar to legacy EPD. It also derives ideas from Nix
.
The Enthought Deployment Manager provides:
Below are the available downloads for the latest version of EDM (currently 1.9.2). Please download the proper package for your operating system.
Operating System | File Format | Installer* |
Mac OS X | .pkg | 64-bit .pkg installer |
Windows 7 & later (64-bit) | .msi | 64-bit .msi installer |
Windows 7 & later (32-bit) | .msi | 32-bit .msi installer |
Debian 7 and above | .deb | 64-bit .deb package |
Centos 5 and above | .rpm | 64-bit .rpm package |
Generic glibc Linux | .sh | 64-bit .sh installer |
* EDM itself is a 64-bit program, but it can create and maintain both 32-bit and 64-bit versions of Enthought Python
* The .deb and .rpm require admin privileges (e.g. sudo), the sh installer does not. The .rpm and .deb install edm in /opt/edm, and symlink the edm executable in /usr/bin.
Below are examples of how to get started with Enthought Deployment Manager on your machine:
# Make sure edm is installed and available
$ edm --version
# Install package of your choice, e.g. NumPy
# (Creates a default Python environment)
$ edm install numpy
# Create a shell with the default environment activated
$ edm shell
How to install in a different environment:
$ edm install -e test-old-numpy "numpy < 1.10"
# Create a shell with the test-old-numpy environment activated
$ edm shell -e test-old-numpy
For more information or to get help:
# See a list of available commands and help topics
$ edm help
# Get help on a specific command, e.g. install
$ edm help install
# Get help on a topic, e.g. configuration
$ edm help configuration