Installing Canopy 2 on Linux for classroom/lab use

For administrative and technical background, please see "Canopy 2 Managed Common Install".


Uninstall any existing EPD and Canopy installations on this system, including manually deleting all Canopy v1 System and User environment directories for each administrator and user.

Back up and then delete each user's Canopy configuration/preference directory, usually "~/.canopy". For more details about directory locations, see Uninstalling and resetting Canopy v2.


Canopy 2.1.9 (or later) standard installer for Linux from the Canopy download page. If you are a paid subscriber, and will not be able to update packages (because you are disconnected or because of administrative constraints), you may install the full installer instead, although otherwise this is not recommended. 

Canopy license file (<your_license_identification>.enlic), optionally provided to paid subscribers by Enthought support, to enable the Canopy debugger and Data Import Tool on systems where login does not work because there is no internet connection. Be sure that this downloaded file has at least read permissions for all intended users; the managed common install will copy it into the Canopy install directory; after this you may move or delete the downloaded license file if you wish. This license file is for use on disconnected systems. On systems where users log in, their individual licenses will automatically be installed for their use, during login.


1) Follow the first part of the "Linux Installation" instructions, but do not launch Canopy after installation. For specificity, the following steps will assume that you have installed Canopy into "/opt/Canopy/app/" (see "Directory Structure" below). Typically, you would give non-admin Canopy users read/execute access to that directory.

2) To the extent possible, temporarily disable any anti-virus software, or whitelist Canopy and Canopy Python. The next steps install tens of thousands of files and if they are all being scanned and verified in the cloud, the process will be very slow at best, and could possibly fail with a timeout.

3) Set up the managed common install, with the following command, adjusting file names and paths as appropriate:

/opt/Canopy/app/canopy_cli post-install-setup --managed-common-install /opt [--license-path /path/to/license/file.enlic

If you have a license file (see Download, above), substitute its filename and current location (typically a download dir) in the above command. If you don't, then omit that option.

4) You may find it convenient to create links in /opt/bin/, to executables /opt/Canopy/app/canopy and /opt/Canopy/app/canopy_cli

5) As long as you are not also installing a standalone Enthought Deployment Manager (EDM), you may wish to alias edm to canopy_cli edm.


Directory structure

The directory structure in this example, resulting from this installation, would be:

|- app/ # Canopy GUI application
|- edm/envs/User/ # Canopy User Python environment

Note: Specifying the Canopy application's installation target within a directory named Canopy/ (with an uppercase C) allows the overall Managed Common Install to be more compact, because Canopy's embedded edm root is always placed in a subdirectory named Canopy/edm.


  • Users may start the Canopy GUI application with:
  • From the GUI's Tool menu, they can open a Canopy Terminal window, running a shell where the GUI's active Python environment (by default, the environment named "User") is the default python.

  • Or they can spawn such a shell in a terminal, without first starting the GUI, with:
    /opt/Canopy/app/canopy_cli edm shell -e User
  • Or they can activate Canopy's "User" Python (make it the default python) in the current shell in a terminal, with:
    source /opt/Canopy/edm/envs/User/bin/activate
  • Or they can directly run Canopy's "User" Python with:


Please do not enter support requests in article comments

Please use article comments for suggestions to improve the article. See "How to submit Enthought Canopy/EPD support requests".

Have more questions? Submit a request


Powered by Zendesk