Changes between Initial Version and Version 1 of TracPlugins


Ignore:
Timestamp:
09/16/05 00:03:54 (20 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TracPlugins

    v1 v1  
     1= Trac Plugins =
     2
     3Since version 0.9, Trac supports plugins that extend the built-in functionality. The plugin functionality is based on the [http://projects.edgewall.com/trac/wiki/TracDev/ComponentArchitecture component architecture].
     4
     5== Requirements ==
     6
     7To use plugins in Trac, you need to have [http://peak.telecommunity.com/DevCenter/setuptools setuptools], version 0.5a13 installed.
     8
     9To install `setuptools`, download the bootstrap module [http://peak.telecommunity.com/dist/ez_setup.py ez_setup.py] and execute it as follows:
     10{{{
     11$ python ez_setup.py setuptools==0.5a13
     12}}}
     13
     14== Installing a Trac Plugin ==
     15
     16Plugins are packaged as [http://peak.telecommunity.com/DevCenter/PythonEggs Python eggs]. That means they are ZIP archives with the file extension `.egg`. If you have downloaded a source distribution of a plugin, you can run:
     17{{{
     18$ setup.py bdist_egg
     19}}}
     20to build the `.egg` file.
     21
     22Once you have the plugin archive, you need to copy it into the `plugins` directory of the [wiki:TracEnvironment project environment]. Also, make sure that the web server has sufficient permissions to read the plugin egg.
     23
     24== Setting up the Plugin Cache ==
     25
     26Some plugins will need to be extracted by the Python eggs runtime (`pkg_resources`), so that their contents are actual files on the file system. The directory in which they are extracted defaults to the home directory of the current user, which may or may not be a problem. You can however override the default location using the `PYTHON_EGG_CACHE` environment variable.
     27
     28To do this from the Apache configuration, use the `SetEnv` directive as follows:
     29{{{
     30SetEnv PYTHON_EGG_CACHE /path/to/dir
     31}}}
     32
     33This works whether your using the [wiki:TracCgi CGI] or the [wiki:TracModPython mod_python] front-end. For [wiki:TracFastCgi FastCGI], you'll need to `-initial-env` option, or whatever is provided by your web server for setting environment variables.
     34
     35----
     36See also TracGuide, [wiki:TracDev/ComponentArchitecture component architecture]