xm.tracker Installation
==========================

To install xm.tracker into the global Python environment (or a workingenv),
using a traditional Zope 2 instance, you can do this:

 * When you're reading this you have probably already run
   ``easy_install xm.tracker``. Find out how to install setuptools
   (and EasyInstall) here:
   http://peak.telecommunity.com/DevCenter/EasyInstall

 * Install mxBase from Egenix; this is needed as we use mx.DateTime.
   It is not easy_installable, so get it here:
   http://www.egenix.com/products/python/mxBase/

   Your operating system may have a package already that you can
   install.  On Ubuntu it is python2.4-egenix-mxdatetime.

 * If you are using Zope 2.9 (not 2.10), get `pythonproducts`_ and install it
   via::

       python setup.py install --home /path/to/instance

   into your Zope instance.

 * Create a file called ``xm.tracker-configure.zcml`` in the
   ``/path/to/instance/etc/package-includes`` directory.  The file
   should only contain this::

       <include package="xm.tracker" />

.. _pythonproducts: http://plone.org/products/pythonproducts


Alternatively, if you are using zc.buildout and the plone.recipe.zope2instance
recipe to manage your project, you can do this:

 * Add ``xm.tracker`` to the list of eggs to install, e.g.::

     [buildout]
     ...
     eggs =
         ...
         xm.tracker

 * Tell the plone.recipe.zope2instance recipe to install a ZCML slug::

     [instance]
     recipe = plone.recipe.zope2instance
     ...
     zcml =
         xm.tracker

 * Install mxBase from Egenix.  On Linux/Max you can use a buildout recipe::

     [buildout]
     # mx-base has to be the first part
     parts =
         mx-base
         ...

     eggs =
         egenix-mx-base
         ...
     ...

     [mx-base]
     recipe = collective.recipe.mxbase

  On Windows we have seen this fail.  In that case, you can get an
  installer here: http://www.egenix.com/products/python/mxBase/

  Your operating system may have a package already that you can
  install instead.  On Ubuntu it is python2.4-egenix-mxdatetime.

 * Re-run buildout, e.g. with::

   $ ./bin/buildout

You can skip the ZCML slug if you are going to explicitly include the package
from another package's configure.zcml file.
``Products.eXtremeManagement`` does this.
