「FreeBSDにTracをインストール」の編集履歴(バックアップ)一覧はこちら
追加された行は緑色になります。
削除された行は赤色になります。
http://d.hatena.ne.jp/akiyan/20060822/p1
http://clouder.jp/yoshiki/mt/archives/000734.html
http://blog.perl.tv/2007/01/freebsd_60subversion_trac.htmlを参考にFreeBSDにTracをインストール。
** Python2.5をインストール
# cd /usr/ports
# make search name=python
鬼のように候補が出て来るがpython25ってやつがそうらしい。
# su
# cd /usr/ports/lang/python25
# make install clean
/usr/local/binにpython2.5と言うファイルが出来ているが、pythonと言うのがないのでシンボリックリンクを作成する。
# cd /usr/local/bin
# ln -s ./python2.5 python
これでインストールは完了。
** Subversionをインストール
# cd /usr/ports
# make search name=subversion
Port: subversion-1.4.3_2
Path: /usr/ports/devel/subversion
Info: Version control system
...
幾つか出てくるが上記のやつがそうらしい。
# su
# cd /usr/ports/devel/subversion
# make install clean
# svn --version
svn, version 1.4.4 (r25188)
compiled Oct 22 2007, 02:25:44
Copyright (C) 2000-2006 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository access (RA) modules are available:
* ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol.
- handles 'http' scheme
- handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
- handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
- handles 'file' scheme
OK。
** neonをインストール
# cd /usr/ports
# make search name=neon
Port: neon-0.26.3
Path: /usr/ports/www/neon
Info: An HTTP and WebDAV client library for Unix systems
...
# cd /usr/ports/www/neon
# make install clean
どうやら既にインストールされているらしくエラーになる。 構わず先に進んでみよう。
** swigのインストール
# cd /usr/ports
# make search name=swit
Port: swig-1.3.31_1
Path: /usr/ports/devel/swig13
Info: Simplified Wrapper and Interface Generator
# cd /usr/ports/devel/swig13
# make install clean
OK。無事インストールされた模様。
** sqliteのインストール
# cd /usr/ports
# make search name=sqlite
鬼のように候補が出て来るが、/usr/ports/databases/sqlite3がそれっぽい。
# cd /usr/ports/databases/sqlite3
# make install clean
OK。無事インストールが完了した模様。
** pysqliteのインストール
# cd /usr/ports
# make search name=pysqlite
Port: py24-pysqlite-2.3.3
Path: /usr/ports/databases/py-pysqlite23
Info: A DB-API v2 Python library for the SQLite 3 embedded SQL engine
Maint: mnag@FreeBSD.org
B-deps: pkg-config-0.22 python24-2.4.4 sqlite3-3.3.17
R-deps: pkg-config-0.22 python24-2.4.4 sqlite3-3.3.17
WWW: http://pysqlite.org
と言うのがそれっぽいが、python24用らしいのが気になる。でもpython25用のものが無くこれが最新っぽいので、これをインストールしてみることにする。っと思ったけど/usr/ports/databases/py-sqlite3と言うディレクトリがあったのでこれをインストールしてみる。
# cd /usr/ports/databases/py-sqlite3
# make install clean
OK。無事インストール出来た模様。(ホントかな?)
** clearsilverのインストール
# cd /usr/ports
# make search name=clearsilver
Port: clearsilver-0.10.4
Path: /usr/ports/www/clearsilver
Info: A fast, powerful, and language-neutral template system
Maint: clsung@FreeBSD.org
B-deps: gettext-0.16.1_3 gmake-3.81_2 libiconv-1.9.2_2
R-deps:
WWW: http://www.clearsilver.net/
Port: clearsilver-python-0.10.4
Path: /usr/ports/www/clearsilver-python
Info: A fast, powerful, and language-neutral template system
Maint: clsung@FreeBSD.org
B-deps: gettext-0.16.1_3 gmake-3.81_2 libiconv-1.9.2_2 python24-2.4.4
R-deps: python24-2.4.4
WWW: http://www.clearsilver.net/
上記2つで悩むが、Pythonなのでclearsilver-python-0.10.4をインストールしてみる。
# cd /usr/ports/www/clearsilver-python
# make install clean
* Makefileの中身を見てみたらclearsilverのMakefileを呼んでいるだけみたい。
OK。無事インストール出来た模様。
** Tracのインストール
日本語用のやつがあるとhttp://d.hatena.ne.jp/akiyan/20060822/p1に書いてあったのでそれをインストールしてみる。
# cd /usr/local/japanese/trac
* 最初のPostgleSQLを使うかどうか聞かれるのでチェックしておく。
・・・
===> Compressing manual pages for ja-trac-0.10.3_2
===> Registering installation for ja-trac-0.10.3_2
===> Cleaning for unzip-5.52_3
===> Cleaning for silvercity-0.9.7
===> Cleaning for py25-docutils-0.4
===> Cleaning for py25-pysqlite-2.0.7_1
===> Cleaning for subversion- python-1.4.4
===> Cleaning for neon-0.26.4
===> Cleaning for ja-trac-0.10.3_2
こんな感じでインストールされた。
** subversionのリポジトリ作成
まずはsubversion用のアカウント作成
# pw groupadd -n svn -g 90
# pw useradd -n svn -u 90 -g svn -d /nonexistent -s /nonexistent
rc.confの編集
# echo svnserve_enable="YES" >> /etc/rc.conf
リポジトリの作成
# mkdir /var/svn
# cd /var/svn
# svnadmin create --fs-type=fsfs tractest
# chown -R svn:svn tractest
svnserveの起動確認
# svnserve -d -r /var/svn --listen-host 0.0.0.0
------- # /usr/local/etc/rc.d/svnserve start これが旨く行かない。後で調査
Mac側から操作してみる
$ cd
$ mkdir tmp/tractest
$ cd tractest
$ mkdir trunk tags blanches
$ cd ..
$ svn import tractest svn://h2-factory.com/tractest -m "Import first."
$ rm -r tractest
$ svn co svn://h2-factory.com/tractest tractest
$ cd tractest/trunk
$ touch hoge.txt
$ svn add hoge.txt
$ sudo svn ci
$ svn up
OK。ちょっと課題はあるがSubversionは一旦完了。
** Tracの起動
$ mkdir /var/trac
$ sudo trac-admin /var/trac/test initenv
[[http://tach.arege.net/trac/wiki/TracEnvironment]]を参考にして対話モードで設定する。
$ /usr/local/bin/tracd --port 8000 /var/trac/testtest &
Traceback (most recent call last):
File "/usr/local/bin/tracd", line 19, in <module>
from trac.web.standalone import main
File "/usr/local/lib/python2.5/site-packages/trac/web/standalone.py", line 27, in <module>
from trac.util import autoreload, daemon
File "/usr/local/lib/python2.5/site-packages/trac/util/autoreload.py", line 17, in <module>
import thread
ImportError: No module named thread
エラーになる。
http://www.machu.jp/diary/20060527.html#p01を参考に/usr/local/lib/python2.5/site-packages/trac/autoreload.pyを書き換えてみる。
#import thread
try:
import thread
except ImportError:
import dummy_thread as thread
再度起動。無事起動できた模様。
色々試したがPythonがthread対応になっていないみたい。 portからインストールする際に、Makefileのオプション部分を書き換えたらちゃんと動作するようになった。
.endif # defined(WITHOUT_HUGE_STACK_SIZE)
CONFIGURE_ENV+= LDFLAGS="${PTHREAD_LIBS} ${LDFLAGS}"
.else
CONFIGURE_ARGS+= --with-threads <- この部分(--without-threadsをこのように変更)
http://d.hatena.ne.jp/akiyan/20060822/p1
http://clouder.jp/yoshiki/mt/archives/000734.html
http://blog.perl.tv/2007/01/freebsd_60subversion_trac.htmlを参考にFreeBSDにTracをインストール。
** Python2.5をインストール
# cd /usr/ports
# make search name=python
鬼のように候補が出て来るがpython25ってやつがそうらしい。
# su
# cd /usr/ports/lang/python25
# make install clean
/usr/local/binにpython2.5と言うファイルが出来ているが、pythonと言うのがないのでシンボリックリンクを作成する。
# cd /usr/local/bin
# ln -s ./python2.5 python
これでインストールは完了。
** Subversionをインストール
# cd /usr/ports
# make search name=subversion
Port: subversion-1.4.3_2
Path: /usr/ports/devel/subversion
Info: Version control system
...
幾つか出てくるが上記のやつがそうらしい。
# su
# cd /usr/ports/devel/subversion
# make install clean
# svn --version
svn, version 1.4.4 (r25188)
compiled Oct 22 2007, 02:25:44
Copyright (C) 2000-2006 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository access (RA) modules are available:
* ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol.
- handles 'http' scheme
- handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
- handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
- handles 'file' scheme
OK。
** neonをインストール
# cd /usr/ports
# make search name=neon
Port: neon-0.26.3
Path: /usr/ports/www/neon
Info: An HTTP and WebDAV client library for Unix systems
...
# cd /usr/ports/www/neon
# make install clean
どうやら既にインストールされているらしくエラーになる。 構わず先に進んでみよう。
** swigのインストール
# cd /usr/ports
# make search name=swit
Port: swig-1.3.31_1
Path: /usr/ports/devel/swig13
Info: Simplified Wrapper and Interface Generator
# cd /usr/ports/devel/swig13
# make install clean
OK。無事インストールされた模様。
** sqliteのインストール
# cd /usr/ports
# make search name=sqlite
鬼のように候補が出て来るが、/usr/ports/databases/sqlite3がそれっぽい。
# cd /usr/ports/databases/sqlite3
# make install clean
OK。無事インストールが完了した模様。
** pysqliteのインストール
# cd /usr/ports
# make search name=pysqlite
Port: py24-pysqlite-2.3.3
Path: /usr/ports/databases/py-pysqlite23
Info: A DB-API v2 Python library for the SQLite 3 embedded SQL engine
Maint: mnag@FreeBSD.org
B-deps: pkg-config-0.22 python24-2.4.4 sqlite3-3.3.17
R-deps: pkg-config-0.22 python24-2.4.4 sqlite3-3.3.17
WWW: http://pysqlite.org
と言うのがそれっぽいが、python24用らしいのが気になる。でもpython25用のものが無くこれが最新っぽいので、これをインストールしてみることにする。っと思ったけど/usr/ports/databases/py-sqlite3と言うディレクトリがあったのでこれをインストールしてみる。
# cd /usr/ports/databases/py-sqlite3
# make install clean
OK。無事インストール出来た模様。(ホントかな?)
** clearsilverのインストール
# cd /usr/ports
# make search name=clearsilver
Port: clearsilver-0.10.4
Path: /usr/ports/www/clearsilver
Info: A fast, powerful, and language-neutral template system
Maint: clsung@FreeBSD.org
B-deps: gettext-0.16.1_3 gmake-3.81_2 libiconv-1.9.2_2
R-deps:
WWW: http://www.clearsilver.net/
Port: clearsilver-python-0.10.4
Path: /usr/ports/www/clearsilver-python
Info: A fast, powerful, and language-neutral template system
Maint: clsung@FreeBSD.org
B-deps: gettext-0.16.1_3 gmake-3.81_2 libiconv-1.9.2_2 python24-2.4.4
R-deps: python24-2.4.4
WWW: http://www.clearsilver.net/
上記2つで悩むが、Pythonなのでclearsilver-python-0.10.4をインストールしてみる。
# cd /usr/ports/www/clearsilver-python
# make install clean
* Makefileの中身を見てみたらclearsilverのMakefileを呼んでいるだけみたい。
OK。無事インストール出来た模様。
** Tracのインストール
日本語用のやつがあるとhttp://d.hatena.ne.jp/akiyan/20060822/p1に書いてあったのでそれをインストールしてみる。
# cd /usr/local/japanese/trac
* 最初のPostgleSQLを使うかどうか聞かれるのでチェックしておく。
・・・
===> Compressing manual pages for ja-trac-0.10.3_2
===> Registering installation for ja-trac-0.10.3_2
===> Cleaning for unzip-5.52_3
===> Cleaning for silvercity-0.9.7
===> Cleaning for py25-docutils-0.4
===> Cleaning for py25-pysqlite-2.0.7_1
===> Cleaning for subversion- python-1.4.4
===> Cleaning for neon-0.26.4
===> Cleaning for ja-trac-0.10.3_2
こんな感じでインストールされた。
** subversionのリポジトリ作成
まずはsubversion用のアカウント作成
# pw groupadd -n svn -g 90
# pw useradd -n svn -u 90 -g svn -d /nonexistent -s /nonexistent
rc.confの編集
# echo svnserve_enable="YES" >> /etc/rc.conf
リポジトリの作成
# mkdir /var/svn
# cd /var/svn
# svnadmin create --fs-type=fsfs tractest
# chown -R svn:svn tractest
svnserveの起動確認
# svnserve -d -r /var/svn --listen-host 0.0.0.0
------- # /usr/local/etc/rc.d/svnserve start これが旨く行かない。後で調査
Mac側から操作してみる
$ cd
$ mkdir tmp/tractest
$ cd tractest
$ mkdir trunk tags blanches
$ cd ..
$ svn import tractest svn://h2-factory.com/tractest -m "Import first."
$ rm -r tractest
$ svn co svn://h2-factory.com/tractest tractest
$ cd tractest/trunk
$ touch hoge.txt
$ svn add hoge.txt
$ sudo svn ci
$ svn up
OK。ちょっと課題はあるがSubversionは一旦完了。
** Tracの起動
$ mkdir /var/trac
$ sudo trac-admin /var/trac/test initenv
[[http://tach.arege.net/trac/wiki/TracEnvironment]]を参考にして対話モードで設定する。
$ /usr/local/bin/tracd --port 8000 /var/trac/testtest &
Traceback (most recent call last):
File "/usr/local/bin/tracd", line 19, in <module>
from trac.web.standalone import main
File "/usr/local/lib/python2.5/site-packages/trac/web/standalone.py", line 27, in <module>
from trac.util import autoreload, daemon
File "/usr/local/lib/python2.5/site-packages/trac/util/autoreload.py", line 17, in <module>
import thread
ImportError: No module named thread
エラーになる。
http://www.machu.jp/diary/20060527.html#p01を参考に/usr/local/lib/python2.5/site-packages/trac/autoreload.pyを書き換えてみる。
#import thread
try:
import thread
except ImportError:
import dummy_thread as thread
再度起動。無事起動できた模様。
色々試したがPythonがthread対応になっていないみたい。 portからインストールする際に、Makefileのオプション部分を書き換えたらちゃんと動作するようになった。
.endif # defined(WITHOUT_HUGE_STACK_SIZE)
CONFIGURE_ENV+= LDFLAGS="${PTHREAD_LIBS} ${LDFLAGS}"
.else
CONFIGURE_ARGS+= --with-threads <- この部分(--without-threadsをこのように変更)
** Tracをlighttpdで動かしてみる
http://tach.arege.net/trac/wiki/TracFastCgi
http://blog.mizzy.org/articles/2006/05/17/trac_and_lighty
http://d.hatena.ne.jp/sun-basix/20071014/1192384449
http://www.machu.jp/diary/20050924.html辺りを参考にlighttpdでtracを動かしてみる。
まず、/usr/local/lib/lighttpdにmod_fastcgi.soが存在することを確認。
次に/usr/local/etc/lighttpd.confを編集する
server.modules = (
"mod_fastcgi",
)
#server.bind = "localhost"
server.username = "svn"
server.groupname = "svn"
fastcgi.server = ("/public" =>
("public" =>
("socket" => "/tmp/trac-fastcgi.sock",
"bin-path" => "/usr/local/share/trac/cgi-bin/trac.fcgi",
"check-local" => "disable",
"bin-environment" =>
("TRAC_ENV" => "/home/miya/trac/public")
)
)
)
lighttpdを起動してブラウザで見てみるとこんなエラー画面が表示される。
500 Internal Server Error (The user hiro requires read _and_ write permission to the database file /var/trac/tractest/db/trac.db and the directory it is located in.)