posted this on November 18, 2012 12:11
(updated October 25, 2013)
You can use the enpkg utility to download, install, and update any packages that are licensed for your Canopy/EPD account. A Canopy/EPD Academic, Basic, or higher subscription covers all Canopy/EPD packages. A registered Enthought account (Canopy Express, EPD Free) covers updates only for the core scientific Python packages.
If you are using Canopy:
Be sure that your PATH is set to Canopy User Python, as described in this article, and not to Canopy's initially installed Python, which is for Canopy's internal use only.
At present, enpkg does not understand virtual environments, so will not be aware that the packages Qt, PySide and MKL were installed in Canopy Core and inherited by the Canopy User Python environment. Therefore one might be tempted to install them with enpkg. There is usually no need to do so (except to change versions.)
Also because enpkg is venv-blind, if you do an update of one of the originally installed packages (whether it was from the Express or the Full installer), and you subsequently ask enpkg to revert to the originally installed version, then it won't be aware that the original version is available through Canopy Core, so will download its own copy of the same egg file and re-install from that.
From a terminal (e.g. cmd or bash) prompt, update the EPD installer and see an overview of the enpkg commands:
$ enpkg enstaller $ enpkg --help
Enter your email and EPD password. (You will be prompted for each of them after the following command):
$ enpkg --userpass
Display all available versions (and installation status, marked by asterisk) of all packages that match a case-insensitive string:
$ enpkg --search pand
Please note that packages marked "pypi" are part of our subscriber-only "PyPI" mirror repo of about 11000 "as-is" (untested and unsupported) community packages.
Update whatever packages you like, to the most recent versions in the online EPD repository:
$ enpkg ipython
$ enpkg pandas
$ enpkg matplotlib
$ enpkg scipy
Or for the most recent version of all already-installed packages (only from enpkg version 4.6 or higher):
$ enpkg --update-all
Display available updates of already-installed packages:
$ enpkg --whats-new
Display the history (with versions) of all package installations and updates done with enpkg (or egginst) in this Python installation.
$ enpkg --log
Install an exact version-build of a particular package (especially useful for rollback):
$ enpkg numpy 1.6.1-5
If you are using EPD (not Canopy) on OSX, you should precede these commands by "sudo ".
Please do not enter support requests in article comments
Please use article comments for suggestions to improve the article. For individual support requests, please follow these guidelines.