Tracインストールメモ
プロジェクト管理システム(?)のTrac をWindowsにインストールしてみた。かなり面倒なので忘れないよう手順をメモ。
環境は以下の通り。
- Windows XP Professional (SP2)
- Trac 0.9b2
- Apache 2.0.54 + mod_python 3.1.3(+パッチ)
- Subversion 1.2.3
- ActivePython 2.3.5.236
- pysqlite 2.0.4
- ClearSilver 0.10.1
Step 1: Pythonのインストール
http://www.activestate.com/Products/ActivePython/
からダウンロードページに行き、ActivePython 2.3.5.236 の Windows版インストーラ ActivePython-2.3.5-236-win32-ix86.msi をダウンロードする。あとはそれを実行するだけ。デフォルトで C:\Python23 にインストールされる。
環境変数PATHは勝手に追加してくれるみたい(?)。もし追加されていなければコントロールパネル>システム>詳細設定>環境変数、で、システム環境変数のPATHに
を追加。
Step 2: pysqlite のインストール
のDownloadsセクションから、"Latest stable version (2.0.4)" の "Windows binaries for Python 2.3" のファイル pysqlite-2.0.4.win32-py2.3.exe をダウンロード。インストーラになっているのでそのまま実行する。
以下のように入力して、
次のように OK と出れば Python と pysqlite のインストールはうまくいっている。
................................................................................
..............................................................
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Ran 142 tests in 0.328s
OK
Step 3: ClearSilver のインストール
http://www.clearsilver.net/downloads/
の "Binaries" から win32/clearsilver-0.9.14.win32-py2.3.exe をダウンロード。インストールはファイルを実行するだけ。
Step 4: DocUtils のインストール
http://docutils.sourceforge.net/
のDownloadセクションから、docutils-0.3.9.tgz をダウンロードする。コマンドプロンプトで、解凍してできた docutils-0.3.9 ディレクトリ(setup.py のあるディレクトリ)に移動し、以下のコマンドでインストールを行う。
自動的にPythonのインストール先を判断してインストールしてくれる。
Step 5: setuptools のインストール
http://peak.telecommunity.com/dist/ez_setup.py
をダウンロードし、コマンドプロンプトでダウンロードしたディレクトリに移動して
とコマンドを打つと、勝手にダウンロード・インストールしてくれる。
Step 6: Trac のインストール
http://projects.edgewall.com/trac/wiki/TracDownload
から"Latest Development Release - 0.9-beta2"のWindows版trac-0.9b2.win32.exe をダウンロード。これもインストールはただ実行するだけ。
Step 7: Apache2 のインストール
Trac は自前のサーバを持っているが、ここではApache経由でTracを利用するためApacheをインストールする。
からバージョン2.0.54のWindows版インストーラをダウンロード、実行するだけ。デフォルトで C:\Program Files\Apache Group\Apache2 にインストールされる。
Step 8: mod_python のインストール
Trac は CGI/FastCGI でも動作するが、ここでは mod_python で動かすことにする。mod_python のダウンロードページ
http://httpd.apache.org/modules/python-download.cgi
から "Other Binaries"⇒"win"⇒"3.1.3" とたどり、mod_python-3.1.3.win32-py2.3.exe をダウンロード、実行すればインストール完了。
途中で Apache のインストールディレクトリを聞かれるのでさっきApacheをインストールしたディレクトリ C:\Program Files\Apache Group\Apache2 を設定。
Step 9: Subversion のインストール
Windows版のダウンロードページ
http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91
から最新版のインストーラ svn-1.2.3-setup.exe と、Python用のライブラリ svn-win32-1.2.3_py.zip をダウンロード。
インストーラ svn-1.2.3-setup.exe はそのまま実行するだけ。デフォルトでC:\Program Files\Subversion にSubversionがインストールされる。
PATHは勝手に追加されているはず。DOSプロンプトで
と入力し、Subversion のコマンド一覧が表示されればOK。もし追加されていなければ、コントロールパネル>システム>詳細設定>環境変数、で、システム環境変数のPATHに
を追加。
svn-win32-1.2.3_py.zip のほうは解凍して、中にある libsvn と svn フォルダを C:\Python23\Lib\site-packages 以下にコピーする。
Step 10: Trac用リポジトリの作成
Tracで管理するSubversionリポジトリを作成。既存のものがあればそれを指定すれば良いんだと思う(たぶん)。ここではテスト用に新しく Sandbox というプロジェクトをでっちあげることにして、そのリポジトリの場所を C:\repos\Sandbox と決めたとする。この場合コマンドプロンプトで以下のようにする。
C:\repos\Sandbox 以下に conf とか dav とかのディレクトリができていればたぶんOK。
Step 11: Tracの環境作成
その後、Tracのプロジェクトを作成する。Trac関係のファイル置き場のルートを C:\trac 、その中のSandboxプロジェクトの置き場を C:\trac\Sandbox と決めたとすると、コマンドプロンプトで以下のように入力する。
この後以下のように続く。強調してあるところが入力項目。
Creating a new Trac environment at C:\trac\SandboxTrac will first ask a few questions about your environment
in order to initalize and prepare the project database.Please enter the name of your project.
This name will be used in page titles and descriptions.Project Name [My Project]> Sandbox
Please specify the connection string for the database to use.
By default, a local SQLite database is created in the environment
directory. It is also possible to use an already existing
PostgreSQL database (check the Trac documentation for the exact
connection string syntax).Database connection string [sqlite:db/trac.db]> (そのままEnter)
Please specify the absolute path to the project Subversion repository.
Repository must be local, and trac-admin requires read+write
permission to initialize the Trac database.Path to repository [/var/svn/test]> /repos/Sandbox
Please enter location of Trac page templates.
Default is the location of the site-wide templates installed with Trac.Templates directory [C:\Python23\share\trac\templates]> (そのままEnter)
この後何か色々処理がなされて、最後に
Project environment for 'Sandbox' created.
と出ればオーケー。C:\trac\Sandbox ディレクトリが事前に存在していると失敗するので注意。
また続けて、以下のコマンドでユーザ名 admin に管理者権限を設定してみる。
Welcome to trac-admin 0.9b2
Interactive Trac adminstration console.
Copyright (c) 2003-2005 Edgewall SoftwareType: '?' or 'help' for help on commands.
Trac [C:\trac\Sandbox]> permission add admin TRAC_ADMIN
Trac [C:\trac\Sandbox]> exit
Step 12: ダイジェスト認証用ファイルを作成
インストールガイドではBasic認証になっているが、ここではなんとなくダイジェスト認証を使うことにしてみた。さっきTrac側に作成したユーザ admin を作成する。
この後パスワードを2回訊かれるので、パスワードをてきとうに決めて入力。
Step 13: Apacheの設定
C:\Program Files\Apache Group\Apache2\conf\httpd.conf の、LoadModule 〜 みたいのがたくさん書いてあるあたりで、
を追加。また、
LoadModule python_module modules/mod_python.so
のコメントを解除する(先頭の # を削除)。
LoadModule auth_digest_module modules/mod_auth_digest.so
次に、Apache経由でTracへアクセスできるようにする。ローカルネットワークを 192.168.1.* として、ローカルからのみアクセスさせる場合、後ろのほうに以下の行を追加。
<Location "/trac">
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /trac
PythonOption TracUriRoot /tracOrder deny,allow
Deny from all
Allow from 127.0.0.1 192.168.1.
</Location>
最後に、ログイン認証のための設定を行う。ダイジェスト認証をIEで使う場合バグ があるらしいので、そのための設定もいちおう追加する(Tracで必要なのかどうかは不明)。
BrowserMatch "MSIE" AuthDigestEnableQueryStringHack=On<LocationMatch "/trac/[^/]+/login">
AuthType Digest
AuthName Trac
AuthDigestFile /trac/trac.htdigest
AuthDigestDomain /trac/
Require valid-user
Satisfy All
</LocationMatch>
ファイルを保存したらApache再起動。
Step 14: とりあえず確認
にアクセスするとAvaliable Projectsとして Sandbox が見える。リンクをクリックして新しいプロジェクトのホーム(Wiki)が表示されればとりあえずOK。
また、右上の login リンクをクリックして、
- 認証ダイアログが出てくる
- Step 12 で登録した admin ユーザでログインできる
ことを確認。
複数のプロジェクトをつくりたい場合は、上でプロジェクト名 "Sandbox" としたところを別のプロジェクトの名前にして、Step 10 と Step 11 を再実行すればよい……と思う。たぶん。
Step 15: mod_python へのパッチ当て
mod_python 3.1.3 には、WikiでWindowsからファイル添付できないバグがあるようなので、パッチをあてる必要がある。
まずWindows版のpatchプログラムを下から入手し、てきとうな場所(ここでは C:\Program Files\patch とする)に解凍。
http://www.vector.co.jp/soft/win95/prog/se015025.html
そして、下のページにアップされている util_py.patch ファイルをダウンロードし、C:\Python23\Lib\site-packages\mod_python に配置。
http://projects.edgewall.com/trac/ticket/554
コマンドプロンプトで以下のようにする。
ウイルスバスター(?)等が patch.exe を既にインストールしている場合があるようなので、patch.exe はPATHへの登録ではなく、フルパスで指定すると無難(どうせあまり使わないだろうし)。
以下は成功したときの出力。こんな感じならたぶんOK。
Hmm... Looks like a unified diff to me...
The text leading up to this was:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
=================================================================== |
RCS file: /home/cvspublic/httpd-python/lib/python/mod_python/util.py,v |
retrieving revision 1.21 |
retrieving revision 1.22 |
diff -u -r1.21 -r1.22 |
--- httpd-python/lib/python/mod_python/util.py 2004/02/16 19:47:27 1.21 |
+++ httpd-python/lib/python/mod_python/util.py 2004/04/30 19:26:36 1.22 |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Patching file util.py using Plan A...
Hunk #1 succeeded at 15.
Hunk #2 succeeded at 224.
Hunk #3 succeeded at 269.
Hunk #4 succeeded at 283.
done
うまくいったら Apache 再起動。
その後、めでたくファイル添付できるようになった。Scarabでは駄目だった日本語ファイル名もアップロード/表示/ダウンロード、全てOK(Windowsのクライアントからしか試してませんが)。素晴らしいです。
Step 16:
//TODO
Tracの設定
Apache⇔Subversionの設定
SSL?
0.9の日本語化�