Install on MacOS X

0.9.0 になって大分よくなっているので、システムサービスとして追加する*1

普通に ./configure; make & make install; でいいんだけれど、Mac の(OpenDirectory上の)ユーザーの作り方。

sudo dseditgroup -o create -i 100 -r "CouchDB Users" _couchdb
sudu dscl . -create /Users/_couchdb
sudu dscl . -create /Users/_couchdb UniqueID 100
sudu dscl . -create /Users/_couchdb NFSHomeDirectory /usr/local/var/lib/couchdb
sudu dscl . -create /Users/_couchdb PrimaryGroupID 100
sudu dscl . -create /Users/_couchdb Password *

_couchdb にしている理由は、_www とか _mysql とかの慣例に従って。

plist のほうは、make install したときに、/usr/local/Library/LaunchDaemons/org.apache.couchdb.plist に配置されます。少し編集して以下のような感じ。

mac:~ yssk22$ cat /usr/local/Library/LaunchDaemons/org.apache.couchdb.plist 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>EnvironmentVariables</key>
	<dict>
		<key>DYLD_LIBRARY_PATH</key>
		<string>/opt/local/lib:$DYLD_LIBRARY_PATH</string>
		<key>PATH</key>
		<string>/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/opt/local/bin:/opt/local/sbin</string>
		<key>HOME</key>
		<string>~</string>
	</dict>
	<key>KeepAlive</key>
	<true/>
	<key>Label</key>
	<string>org.apache.couchdb</string>
	<key>OnDemand</key>
	<true/>
	<key>ProgramArguments</key>
	<array>
		<string>/usr/local/bin/couchdb</string>
	</array>
	<key>RunAtLoad</key>
	<true/>
	<key>StandardErrorPath</key>
	<string>/dev/null</string>
	<key>StandardOutPath</key>
	<string>/dev/null</string>
	<key>UserName</key>
	<string>couchdb</string>
</dict>
</plist>

*1:MarPortsにもcouchdb-develとcouchdbがあるんだけれど、0.9.0になっているかどうか調べていない