= Trac インストールガイド = [[TracGuideToc]] Trac は軽量なプロジェクト管理ツールで、 Web ベースのアプリケーションとして実装されています。 Trac は Python で記述されており、データベースが必要です。 ([http://sqlite.org/ SQLite], [http://www.postgresql.org/ PostgreSQL], [http://mysql.com/ MySQL] が使用可能です)。 HTML レンダリングには [http://www.clearsilver.net/ Clearsilver] テンプレートシステムを使用します。 以下に示すのは、 Trac のインストールと設定要件に関する一般的な説明です。 Trac を特定のシステムにインストールするための説明は Trac のメインサイトの [http://trac.edgewall.org/wiki/TracInstallPlatforms TracInstallPlatforms] に掲載されています。インストールに必要なタスクをよく理解するためにこれらの一般的な説明を最初に必ず読んでください。 == インストール要件 == ソフトウェア要件: * [http://www.python.org/ Python], バージョン 2.3 以上。 * RPM をベースとしたシステムでは `python-devel` と `python-xml` パッケージも必要かもしれません。 * もし Windows 上で Trac を Subversion とともに使用するならば、 Python 2.4 用にプリコンパイルされた Subversion bindings がないので、 Python 2.3 が必要になるでしょう。 * 2006-09-20: この記述はもはや正しくないかもしれません。 http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91 を参照して下さい。 Subversion 1.4.0 用の python 2.4 の バイナリの bindings が利用可能となっています。 * [http://www.clearsilver.net/ ClearSilver], バージョン 0.9.3 以上。 * python-bindings (`./configure --with-python=/usr/bin/python`) * データベースと使用するデータベースに適切な Python のドライバが必要です。 データベースとして SQLite, PostgreSQL, MySQL ''(実験的)'' が使用できます。 === SQLite 利用 === * [http://www.sqlite.org/ SQLite], バージョン 2.8.x か 3.x(推奨) * [http://pysqlite.org/ PySQLite], バージョン 1.x (SQLite 2.x 用) またはバージョン 2.x (SQLite 3.x 用)。詳細は[http://trac.edgewall.org/wiki/PySqlite PySqlite] 参照。 ''Note: Trac のバージョン 0.9 以前では PySQLite 2.x は '''動きません'''。'' ''Note: リポジトリの 'contrib' セクションにある 'trac-post-commit-hook.py' スクリプトを使用するつもりならば、PySQLite 2.x は Trac 0.9+/SQLite 3.x が必要です。 ''Note: Mac OS X のユーザは気を付けて下さい; Apple 社が供給している SQLite は AFP や SMP といったネットワークファイルシステムにおけるファイルのロックを実現するためのコードが含まれています。これは現在の主流ではありませんので、ソースコードから自分で SQLite をビルドする場合、このようなファイルシステムでは正しく動かないでしょう。- たいていの場合、 "{{{database is locked}}}" というエラーがでるでしょう。 アップル社のコードのバージョン 3.3.6 で利用可能な [http://www.alastairs-place.net/2006/07/sqlite_and_mac/ パッチ] があります。それ以外では、アップル社が供給しているバージョン (現在 3.1.3) を使用するのがたぶん最良でしょう。 === PostgreSQL 利用 === * [http://www.postgresql.org/ PostgreSQL] * [http://initd.org/projects/psycopg2 psycopg2] or [http://pypgsql.sourceforge.net/ pyPgSQL] ''Note: PostgreSQL に対応しているのは Trac バージョン 0.9 以降です。'' === MySQL 利用 === '''注意''': MySQL の対応は現在実験段階です。動くかもしれませんが、まだ十分にテストはされていません。 * [http://mysql.com/ MySQL], version 4.1 or later * [http://sf.net/projects/mysql-python MySQLdb], version 1.2.1 or later ''Note: MySQL に対応しているのは Trac バージョン 0.10 以降です。'' === オプション要件 === ==== バージョン管理システム ==== * [http://subversion.tigris.org/ Subversion], バージョン 1.0 以降(1.2.3 もしくは 1.3.1以降推奨) と 対応する [http://svnbook.red-bean.com/svnbook-1.1/ch08s02.html#svn-ch-8-sect-2.3 Python bindings]。トラブルシューティングについては、 [http://projects.edgewall.com/trac/wiki/TracSubversion TracSubversion] を参照して下さい。 * Trac は Subversion の配布物の中の [http://www.swig.org/ SWIG] bindings を使用します。[http://pysvn.tigris.org/ PySVN]''' ではありません'''。(ときどき標準の SWIG bindings と混同します) * もし Subversion が SWIG bindings なしでインストールされていた場合、 Subversion をre-`configure` して `make swig-py`, `make install-swig-py` を実行する必要があります。 * サードパーティが提供しているほかのバージョン管理システムに対応しています。 [http://projects.edgewall.com/trac/wiki/PluginList PluginList] と[http://projects.edgewall.com/trac/wiki/VersioningSystemBackend VersioningSystemBackend] を参照して下さい。 ==== Web サーバ ==== * CGI を利用可能な Web サーバ (see TracCgi) または * [http://www.fastcgi.com/ FastCGI] を利用可能な Web サーバ(see TracFastCgi) または * [http://httpd.apache.org/ Apache] と [http://www.modpython.org/ mod_python 3.1.3+] (see TracModPython) * mod_python の開発バージョンをインストールするとき、 Python と Apache が必要です。 (実際のライブラリとヘッダファイル) Apache 1.3 で実行するには、 Trac 0.8.4 と[http://www.modpython.org/ mod_python 2.7] を使用することで可能となります。([http://trac.edgewall.org/wiki/TracModPython2.7 TracModPython2.7] 参照) Trac 0.9 ではテストしていないので、動くかどうかは分かりません。 ==== その他の Python のユーティリティ ==== * プラグインを使用する場合 [http://peak.telecommunity.com/DevCenter/setuptools setuptools], バージョン 0.6 以上。 (see TracPlugins) * WikiRestructuredText を使用する場合 [http://docutils.sourceforge.net/ docutils], バージョン 0.3.9 以上 * [wiki:TracSyntaxColoring シンタックス ハイライト] を使用する場合 [http://silvercity.sourceforge.net/ SilverCity] または [http://www.gnu.org/software/enscript/enscript.html Enscript] もしくは両方。 * !SilverCity 0.9.6 には [http://sourceforge.net/tracker/index.php?func=detail&aid=1424436&group_id=45693&atid=443739 バグ] があり、 Trac で Python のシンタックスハイライトを壊してしまいます。更新バージョンが利用可能になるまで、バージョン 0.9.5 を使用することを推奨します。 ''注意''': これらのソフトウェアの依存するパッケージに利用可能なバージョンがいろいろありますが、かならずしも互換性あるとは限りません。上記のバージョン番号に注意してください。もし Trac が動かないようだったら、すべての依存関係をもう一度確認してください。確認したうえで、 [http://trac.edgewall.org/wiki/MailingList メーリングリスト] や [http://trac.edgewall.org/wiki/IrcChannel IRCチャンネル] をたずねてみてください。 これらのパッケージの最もよいインストール方法を理解するためにパッケージ付属のドキュメントを読んでください。加えて、 [http://trac.edgewall.org/wiki/TracInstallPlatforms プラットフォーム特有の説明] にも、インストール時の依存関係が記述されています。ただしそれもインストールしようとしている Trac のバージョンより古いバージョンにおける情報かもしれないということを覚えておいて下さい。(特に、 いくつかのページは Trac 0.8 の説明になっています。) == Trac のインストール == 多くの Python プログラムと同様、ソースディレクトリの一番上で次のコマンドを実行することで、 Trac の Python パッケージをインストールできます: {{{ $ python ./setup.py install }}} ''Note: このステップをおこなうには root 権限、またはそれと同等の権限が必要です。'' この手順は、 Python ソースコードをバイトコンパイルして、 Python の `site-packages` ディレクトリにインストールします。 また、ディレクトリ `cgi-bin`, `template`, `htdocs`, `wiki-default`, `wiki-macros` 配下のすべてのファイルを `$prefix/share/trac/` ディレクトリにコピーします。 `conf` と `plugins` ディレクトリは `$prefix/share/trac` 配下に新規に作成されます (''[http://trac.edgewall.org/milestone/0.10 milestone:0.10] 以降'')。 さらに、このスクリプトでは [wiki:TracEnvironment Trac environment] を作成したりメンテナンスするためのコマンドラインツールである [wiki:TracAdmin trac-admin] や、スタンドアロンで動作するサーバ [wiki:TracStandalone tracd] をインストールします。 === 上級オプション === Trac を上記以外の場所にインストールしたい場合や、その他の高度なインストールオプションを見たい場合は次のコマンドを実行してください: {{{ $ python ./setup.py install --help }}} 詳細は [http://docs.python.org/inst/inst.html Installing Python Modules] を参照。 単純にインストールする場所を変えたいのであれば、以下の通りです: {{{ $ python ./setup.py install --prefix=/path/to/installdir }}} == プロジェクト環境の作成 == [wiki:TracEnvironment Trac environment] は Trac が Wiki ページ、チケット、レポート、設定などのような情報を保存するバックエンドストレージです。 [wiki:TracEnvironment Trac environment] は基本的に、人間が読むことができる設定ファイル、その他いろいろなファイルとディレクトリを含んだディレクトリです。 [wiki:TracAdmin trac-admin] を使用して、新しい Trac environment を作成します。: {{{ $ trac-admin /path/to/myproject initenv }}} [wiki:TracAdmin trac-admin] がプロジェクト環境を作成するのに必要な情報を聞いてきます。たとえば、プロジェクトの名前や、[wiki:TracEnvironment#SourceCodeRepository ソースコードリポジトリ] の種類とパス、 [wiki:TracEnvironment#データベースに接続するための文字列 データベースに接続するための文字列] などです。もしこれらのオプションで設定を何にすればいいのか分からなければ、デフォルト値を使用するために空白にしておいてください。特にデータベースに接続するための文字列は SQLite をインストールしている限り、動くでしょう。ソースコードリポジトリへのパスを空白にしておくとバージョン管理に関する機能が無効になりますが、システムが動いてさえいれば、後からいつでも追加することができます。 また、ここで指定した値は後で [wiki:TracIni 設定ファイル] を編集することによって変更できます。 ''Note: Web サーバの起動ユーザには、この environment ディレクトリ、 およびその配下のすべてのファイルに対する書き込みパーミッションが必要です。'' == スタンドアロンサーバを起動する == Trac environment を作成した後, スタンドアロンサーバの [wiki:TracStandalone tracd] を起動することによって簡単に Web インタフェースを使ってみることができます。 {{{ $ tracd --port 8000 /path/to/myproject }}} そして、ブラウザを起動して、 `http://localhost:8000/` にアクセスしてみてください。 tracd が認識しているすべての環境が簡単にリストされます。作成した環境へのリンクをクリックし、実際の Trac を見るべきです。 == Web サーバで Trac を起動する == Tracは“"本当の" Web サーバに接続するための 3 つのオプションを提供しています: [wiki:TracCgi CGI], [wiki:TracFastCgi FastCGI] と [wiki:TracModPython mod_python] です。まともなパフォーマンスを引き出すために、 FastCGI か mod_python を使用することをおすすめします。 == 認証の設定 == ユーザアカウントの追加・削除・設定はどのような方法で Trac を動かしているかによります。基本的な手順は TracCgi ページの [wiki:TracCgi#認証を追加する 認証を追加する] セクションに書かれています。使用しているフロントエンドでの認証の設定方法を学ぶには、以下のページのどれかを参照してください: * TracStandalone スタンドアロンサーバ `tracd` を使用している場合 * TracCgi CGI または FastCGI を使用している場合 * TracModPython mod_python を使用している場合 == Trac を使う == 一度、 Trac のサイトを構築して起動したら、 Subversion のリポジトリをブラウズしたり、チケットを登録したり、タイムラインを見たりすることができます。 デフォルトの設定では、 anonymous ユーザ (ログインしていないユーザ) でも大半の機能を使用できますが、全てではありません。認証を設定し、認証済みのユーザがすべての機能を利用できるように [wiki:TracPermissions 権限] を追加するのを忘れないで下さい。 ''それでは楽しんで!'' [http://trac.edgewall.org/wiki/TracTeam The Trac Team] ---- See also: TracGuide, TracCgi, TracFastCgi, TracModPython, TracUpgrade, TracPermissions