4

In Trac on Admin -> Plugins there is an option to install Plug-ins. Now this option expect you to upload an Python egg.

This would be all well but for the fact that all the Trac plug-ins I found are either plain .py files or zip files and are incompatible with the upload function (I tried it).

This leaves my with a bunch of questions:

  • Are there any Trac plug-ins which come as an Python egg?
  • What is an (Trac compatible) Python egg?
  • Is it difficult to repackage an .py file into a Trac compatible Python egg?
  • If not: how is it done?
4

2 回答 2

4

一年没有使用 trac,但我记得大多数插件都可以通过 subversion 获得,并且已经打包成一个鸡蛋(这是 python 世界中的一种安装程序,但我对这个概念不太熟悉)。

大多数插件都可以在http://trac-hacks.org/上找到,安装插件的最简单方法是

easy_install http://svn.domain.tdl/path/to/plugin/

该文件夹应包含一个 setup.py 和一个 setup.cfg 文件。easy_install 从 svn 中检查文件并安装插件。您可以在此处找到详细信息:http: //trac.edgewall.org/wiki/TracPlugins

如果插件进行数据库更改,您必须调用

trac-admin upgrade

从控制台。

http://trac.edgewall.org/wiki/TracAdmin

如果我没记错的话,通过 web 界面安装会在本地安装插件(例如),而 easy_install 会全局安装(适用于所有正在运行的 trac 站点),这是安装插件的更常见方式。

提示:每次安装插件后,您必须重新启动 trac 提示2:大多数插件不会告诉您如何安装,只提供指向其 svn 根目录的链接。您只需浏览 svn 文件夹并找到包含 setup.py 的文件夹。其余的通过easy_install 完成。

例子:

插件:http ://trac-hacks.org/wiki/GoogleChartPlugin

Wiki 页面告诉您:您可以使用 Subversion 从此处查看 GoogleChartPlugin,或使用 Trac 浏览源代码。

here链接到http://trac-hacks.org/svn/googlechartplugin/

svn 包含两个版本。浏览到http://trac-hacks.org/svn/googlechartplugin/0.11/trunk/并复制路径。

然后做

easy_install http://trac-hacks.org/svn/googlechartplugin/0.11/trunk/
于 2010-09-17T09:12:28.767 回答
3

按顺序回答您的问题。

  • Python 鸡蛋是包含应用程序代码和一些元数据的二进制包。从这个意义上说,它们与 debs 或 rpms 并没有太大区别。鸡蛋本身基本上只是一个 zip 文件,其中包含上述所有具有特定名称和布局的文件。有关鸡蛋的更多信息(格式和创建方法),请参阅http://www.ibm.com/developerworks/library/l-cppeak3.html。这可能有点过时了,因为 python 包装的未来(和现在)有点模糊。
  • trac 插件是一个 python 程序,它使用 Trac 插件 API 来扩展 trac 的功能。它可以包装成鸡蛋。
  • 如果您的包布局正确并包含一个 setuptools/distributesetup.py文件,那么发出该命令python setup.py bdist_egg将为您创建一个 .egg 文件。有关这方面的详细信息,请参阅this(有点过时但完整)this(更新但仍在进行中)Trac Growl 插件在其文档页面上提到了这一点。
  • 请看上一点。
于 2010-09-17T09:13:33.143 回答