Arcを制御するrc-script
Gentoo LinuxでArcを動かす人向けっていうニッチなネタだけども。
たとえば、news.arcの起動を制御したい場合、まず、nsvを起動するファイルを作成する。とりあえず、ロードして起動するだけの簡単なスクリプト。
rc-news.arc
(load "news.arc")
(nsv)
次に、rc-scriptだけど、Anarkiのas.scmはパラメータでファイルを渡せる拡張が入ってるのでそれを利用する。あと、start-stop-daemonが便利すぎるので、デーモン化とかそういう難しそうなことは、こいつに任せる。
/etc/init.d/news
#!/sbin/runscript
depend() {
use net
before lighttpd
}
MZSCHEME="/usr/local/bin/mzscheme" # path to mzscheme
ARC_HOME="/usr/local/arc" # path to arc directory
start() {
ebegin "Starting News"
start-stop-daemon --start --quiet --background --make-pidfile \
--pidfile /var/run/news.pid --exec "$MZSCHEME" \
-- --no-init-file --mute-banner --load-cd \
"$ARC_HOME/as.scm" "$ARC_HOME/rc-news.arc"
eend $? "Failed to start News"
}
stop() {
ebegin "Stopping News"
start-stop-daemon --stop --quiet --pidfile /var/run/news.pid
eend $? "Failed to stop News"
}
これで、
# /etc/init.d/news start
# /etc/init.d/news restart
# /etc/init.d/news stop
って感じで、起動停止の制御が可能。OSブート時に一緒に起動したいなら、
# rc-update add news default
とでもしておけばok。