Enthought Deployment Manager¶
Enthought Deployment Manager (EDM) is Enthought’s environment and application manager.
EDM attempts to implement the best principles of virtualenv managers such as virtualenvwrapper and pew as well as the Ruby Version Manager (rvm). It also derives some ideas from Nix. EDM’s main features are:
create multiple, self-contained environments
state-of-the-art SAT solver with support for conflicts, provides, and other features available in advanced package managers
support the existing set of ~ 500 Enthought binary packages on Linux, OS X and Windows
layered architecture: the core is defined to be useable by 3rd party programs (IDE, GUI) through a well defined API
distributed as a small (~10 Mb), single file binary on Unix. Native installers are provided for Debian/Ubuntu (.deb), Windows (.msi), RHEL/Fedora (.rmp), and OS X (.pkg).
experimental support for multiple python versions (2 and 3), implementations (cpython, pypy) and even languages (julia).
extensive inline documentation
A basic workflow looks as follows:
# will install scipy in your default environment $ edm install scipy # starts a new shell in the default environment $ edm shell (edm) $ python -c "import scipy" $ exit # exit the shell # If you prefer virtualenv-like activation $ source edm-activate (edm) $ python -c "import scipy" $ deactivate
Multiple environments may be created through the -e/–environment option:
$ edm install "scipy < 0.17" -e test-old-scipy $ edm shell -e test-old-scipy # or using virtualenv-like activation $ source edm-activate test-old-scipy
To install an alternative runtime (experimental, not available on every platform):
# Create a minimal pypy environment w/ pypy interpreter $ edm environments create test-pypi --implementation pypy # Create a minimal julia environment $ edm environments create test-julia --implementation julia # To list available runtimes: $ edm available-runtimes
The basic command line is documented in the quick usage guide.
If you are simply an EDM user, this is the documentation of interest to you.
- Quick Reference
- Setting up a default configuration
- Installing and updating packages
- Creating new environments
- Activating environments
- Removing environments
- Cloning environments
- Installing alternative runtimes
- Installing requirements
- Specifying version numbers
- Constraint modifiers
- Packages and repacking
- EDM bundles
- EDM applications
- Executing scripts in a specific environment
- Advanced configuration
- Tips and Tricks
- About locking in EDM
Release and version history¶
Description of EDM main changes for each release.
- 2.2.0 (2020-02-19)
- 2.1.0 (2019-12-06)
- 2.0.0 (2019-10-03)
- 1.12.1 (2019-07-04)
- 1.12.0 (2019-06-04)
- 1.11.0 (2019-03-18)
- Older Releases