DAViCAL サーバーのセットアップ手順について説明しています。公開されているドキュメントはバージョンが古く、現在配布されているバージョンと内容が一致していないので注意が必要です。(データベース名そのものもやdbユーザー名も変わってます・・・)
CentOS-4.7 (RHEL4系) にてセットアップを行っています。CentOS-4.x では PHP4、PostgreSQL-7.4 であるため DAViCAL の動作条件を満たしていませんので、CentOS Plus リポジトリより PHP-5関連、PostgreSQL 関連をアップデートする必要があります。
PHP4 は既にサポートが終了しており、セキュリティメンテナンスも 2008年 8月で終了しています。PHP5への以降により、稼動中のサービスに不具合が出る可能性もあるため、慎重に判断してください。
DAViCAL (rscds-0.9.5-2)をセットアップするには以下の環境が必要です。
本家 Web サイトでは Debian を中心に説明されていますが、RHEL系 (rpm) パッケージも配布されています。必要とするパッケージがあれば FedoraCore でも Vine でも大丈夫だと思います。適宜、読み換えてください。
冒頭で述べたように配布されているバージョンと本家サイトのドキュメント(2008/10/23 現在)は内容が一致していないため、ドキュメント通りにセットアップしても動きません。
以下の URL で配布されています。
rscdsとlibawl-phpの二つのパッケージが必要です。適当なディレクトリにダウンロードして下さい。 ここで使用したバージョンは rscds-0.9.5-2.noarch.rpm と libawl-php-0.29-2.noarch.rpm です。
先に依存関係にあるパッケージをインストールしておく必要があります。PHP5関連、PostgreSQL-8.1 関連、Apache Webサーバー等のインストールについては割愛します。これらのサーバー環境が既に構築済みである事が前提です。
perl-DBI が必要です。以下のコマンドで確認してください。
でインストールされていなければ yum でインストールします。
rscds-0.9.5-2.noarch.rpm のインストールには依存関係にある perl モジュール YAML と libyaml が必要です。CentOS の公式リポジトリにはパッケージ(rpm)が用意されていませんので、自分で解決する必要があります。方法は4つあります。
1.と 2.は基本的にやってることは同じですが、後々のメンテナンスを考えれば 3.の信頼のおける非公式リポジトリから引っ張ってくる方が楽です。ちなみに 2.のCPAN でコンパイル、インストールした場合、rscds rpm の依存関係に引っかかってインストールは出来ませんでした。
ここでは 3.の方法で perl-YAML をインストールします。同一構成の別サーバーで 4.の cpan2rpm を試しましたが、この方法でも依存関係はクリアできます。
dries リポジトリ(非公式) perl-YAML-0.66-1.el4.rf.rpm が配布されているのでこれを利用しました。yum で dries リポジトリを利用するには以下の手順を踏みます。
/etc/yum.repos.d/dries.repo を作成し、以下を記述します。
[dries]
name=Extra Fedora rpms dries - $releasever - $basearch
baseurl=http://ftp.riken.jp/Linux/dag/dries/redhat/el4/en/i386/dries/RPMS
gpgcheck=1
gpgkey=http://ftp.riken.jp/Linux/dag/dries/RPM-GPG-KEY.dries.txt
perl-YAML / libyaml をインストールします。
続いて先ほどダウンロードした rscds と libawl-php のディレクトリへ移動してインストールします。
以上でインストールは完了です。続いて DAViCAL の環境設定を行います。
perl-YAML-LibYAML に関して
後述する create-databese.sh を実行する際に、この YAML ライブラリは使えない旨のエラーが出るのですが、Dag リポジトリにある perl-YAML-LibYAML を試しても同様の結果でした。データベース、ユーザー、テーブルは作成されているようで動作します。後述しますが CalDAV Display に関しては未確認です。