で、こいつのPantherにこれまでやった内容を再度行うことにした。localへの移行とかでいろいろごちゃごちゃしたし、ちょうどいいかなぁ、とね。やった通りのメモを置いておく。
で、もちろんこの辺を入れるためにはXcodeがちゃんと入っていないとまずいんやけど、ここで躓いていたのでめも。
なぜかソフトウェアリストアではXcodeがちゃんと入らず、前代のために購入したPantherについてきたインストーラで入れても何やらgccで実行ファイルを作れないと言ってconfigureで落ちてしまう。
結局ADCから送られて来ていた1.1のインストーラでインストールしたときにうまく行ったのだが、何が悪かったのかは不明。
多分、単にXcodeは1.1じゃないといけないのか、リストア実行中にソフトウェアアップデートが動いていたりしたのがまずかったのか、あるいはリストアのxcodeが壊れていたのか、そんな所かな。Xcodeのインストールと更新はちゃんとしておいた方が無難です。てか、普通インストーラとアップデートを同時に動かしたりしませんから。切腹。
閑話休題。まずportsから。
cd /usr/local
cvs -d :pserver:anonymous@anoncvs.opendarwin.org:/Volumes/src/cvs/od login
cvs -d :pserver:anonymous@anoncvs.opendarwin.org:/Volumes/src/cvs/od co -P darwinports
mv -Rf darwinports/dports ./dports
cd darwinports/base/
./configure --prefix=/usr/local
make
make install
ports.confとかは/usr/local/etcに置かれる。ports.confとsouces.confを確認。多分sources.confはdportsフォルダを指すように修正する必要があるはず。
あと、/etc/profileを修正して、/usr/local/binやら/usr/local/sbinなんかにパスを通しておく。で、この先の作業のために
export $PATH=$PATH:/usr/local/bin:/usr/local/sbin
としておく。
次はapache2を入れる。
cd /usr/local/dports/www/apache2
ports install
cd /usr/local/apache2/conf/
cp httpd.conf.sample httpd.conf
PHP5も。
cd /usr/local/dports/www/php5
ports install +apache2
Apache2の設定をおこなう。次の2行を/usr/local/apache2/conf/httpd.confの適当な場所に追加
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
さらにsubversion。
cd /usr/local/dports/devel/subversion
port install subversion +mod_dav_svn
リポジトリを作成する。今回は/usr/localが別パーティションなんで/usr/local以下にsvnrootを作る。
cd /usr/local
mkdir svnroot
cd svnroot
mkdir test
svnadmin create --fs-type fsfs test
あと、パスワードファイルも作る。
htpasswd -c passwd [ユーザ名]
パスワードを2回聞くので、適宜設定。さらに設定するユーザ分、-cを外して繰り返す。
で、apacheにも設定。httpd.confに
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
というのをLoadModuleの最後に、
# Location for subversion
<Location /svn>
DAV svn
SVNParentPath /usr/local/svnroot
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /usr/local/svnroot/passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
という記述をLocationの記述のところにそれぞれ加えておく。
最後に、web共有でapache2を使うようにする。
cd /usr/sbin
mv httpd httpd13
mv apachectl apache13ctl
ln -s ../local/apache2/bin/httpd httpd
ln -s ../local/apache2/bin/apachectl apachectl
以上でセットアップ完了。