traclight (1.5.2) | 2008-02-13 23:09 |
trac-lightning (3.2.0) | 2013-04-29 13:00 |
trac-lightning-dev (3.2.0beta1) | 2013-03-16 11:37 |
このページでは、TracLightningをソースコードからコンパイルする方法やカスタマイズする方法を説明しています。カスタマイズしたTracの配布や、TracLightningの開発に参加したい方は、このページをご覧ください。
最新のソースコードは下記のBitBucketから取得できます。
過去のコードは、下記のリポジトリから取得してください。
※コミッタの方は、gitとsubversionにはコミットしないでください。
TracLightningは、インストーラにInnoSetupを利用しています。開発は、主にISToolを利用しています。ISToolをマシンにインストールしてtrac.issをISToolで開くとビルドスクリプトを編集可能です。
メッセージが文字化けしていますが、trac.issの日本語メッセージを編集するときは、他の日本語に対応したエディタで開いて編集してください。
ここでは、Trac Lightningのインストールの仕組みについて解説します。実質install\post-install.batファイルがその役割を担っています。C:\TracLightディレクトリに移動して
install\post-install.bat C:\TracLightとすると、C:\TracLightディレクトリをベースとして、各種Pythonライブラリ、プラグイン、サンプルリポジトリのセットアップを行うようになっています。下記のディレクトリにインストール資材が入っています。
ざっとこんな感じです。それなりに知識があれば、この情報を元にインストールスクリプトを解析することができるでしょう。
TracLightningを利用していて、プラグインの不足を感じることがあると思います。TracLightningをカスタマイズした他の担当に配布したい場合、TracLightning自身にプラグインを追加しておくと便利です。プラグインの追加は、次のようにして行います。
plugins\svnディレクトリにプラグインをコピーする。
trac.issに次のようにしてプラグインをインストーラを含める設定を記述します。(XXXXXの箇所がプラグインのディレクトリ名になります)
Source: plugins\svn\xmlrpcplugin\*; DestDir: {app}\plugins\svn\xmlrpcplugin; Flags: recursesubdirs sortfilesbyextension; Excludes: *.pyc,*.pyo,.svn\*,\build\*,\dist\*,\*.egg-info\* Source: plugins\svn\tracjsganttplugin\*; DestDir: {app}\plugins\svn\tracjsganttplugin; Flags: recursesubdirs sortfilesbyextension; Excludes: *.pyc,*.pyo,.svn\*,\build\*,\dist\*,\*.egg-info\* Source: plugins\svn\XXXXXX\*; DestDir: {app}\plugins\svn\XXXXXX; Flags: recursesubdirs sortfilesbyextension; Excludes: *.pyc,*.pyo,.svn\*,\build\*,\dist\*,\*.egg-info\* Source: backup.bat; DestDir: {app}\
build.cmdに下記のようにして、ビルド対象に追加します。
for %%i in ( .... tracsubticketsplugin newwikipagebutton tracdragdropplugin tracjsganttplugin XXXXXXX ) do (
デフォルトでプラグインを有効にしたい場合、trac.iniにプラグインの設定を記述します。Trac全体で設定を行いたい場合と、各プロジェクト毎に設定を変えたい場合で設定場所が異なります。
install\replace\trac.ini.in にプロジェクト全体の設定を追加します。componentsセクションでプラグインの有効化の設定の他、プラグイン個別の設定も個々に追加します。ここで行った設定は、全てのプロジェクトへ反映されます。
install\trac.ini.defaultとinstall\trac.ini.agileでプロジェクト個別の設定を行います。defaultは通常のプロジェクトでagileはアジャイル用のプロジェクトを作成したときに設定されます。プロジェクト全体への設定と同じようにcomponentsセクションやその他の設定を追加してください。
なお、必ずしも全ての人が必要としないプラグインの場合、プラグインのインストールだけ行って、trac.iniへcomponentsの設定を追加しなければ、後でプラグインを有効化したユーザのみそのプラグインを使えるようになります。