ついに tDiary の Trunk に UTF-8 ブランチがマージされたので前からやろうと思っていた、tDiary を常に Trunk 状態にする環境を構築してみた。今までは Changelog 見ながらぺちぺち手作業で更新していたんだよね。
公開用ディレクトリは
/home/hsbt/public_html/diary/
データディレクトリは
/home/hsbt/data
Trunk のコードは
/home/hsbt/tdiary
に配置するものとして作業。
sf.net の core と plugin は cvs、CodeRepos の contrib は svn を使って取得
cd /home/hsbt/tdiary cvs -z3 -d:pserver:anonymous@tdiary.cvs.sourceforge.net:/cvsroot/tdiary co -P core plugin svn co http://svn.coderepos.org/share/platform/tdiary contrib
sf.net のプロジェクトメンバーの場合はその辺を適当に設定する。ここでは省略。
公開用ディレクトリでは、以下の内容のファイルを index.rb として 配置して、実行属性を付加する。
#!/usr/bin/env ruby require '/home/hsbt/tdiary/core/index'
update.rb や tb.rb についても同じように作成する。
ちなみにこの内容は debian の tdiary-setup の default 指定で作成されるものと同じ。わざわざ上のようなファイルを作らなくてもシンボリックリンクでも出来るかもしれないけど hsbt.org ではシンボリックリンクだとダメだった。
この辺はいつもと同じように作るのでここで特化した内容は特になし。
通常設定は省略。
コードディレクトリの plugin と contrib のプラグインファイル全てを使用可能にするために
@options['sp.path'] = ['/home/hsbt/tdiary/plugin', '/home/hsbt/tdiary/contrib/plugin']
をload_cgi_conf の前に追加する。
CSS だけは公開用ディレクトリの下に配置しなければ、Apache が見ることができないので丸ごとコピー。今回は core に含まれるものだけを持ってくる。
cp -rf /home/hsbt/tdiary/core/theme /home/hsbt/public_html/diary/
他のテーマや自作したものを使っている人はよしなに対処。
ここまでくれば設置は完了しているとおもったんだけど、なにやら自動作成に失敗して Nil エラーが発生している模様。これ元からこういうものだったっけ?
touch /home/hsbt/data/tdiary.conf
した後だと問題無し。
ここまでで完成したのがこれ → http://www.hsbt.org/tdiary/
文字エンコーディングを見る限り utf-8 になってるっぽいので大丈夫かな。今後は配置したコードディレクトリで cvs up とか svn up とかするだけで常に人柱になることができる。
日記データ本体の移行は楽っぽいけど、cache 配下にデータを蓄積しているプラグインのデータ周りが大変そうだなあ。まあ、1週間くらいをめどに作業。