#!/sbin/runscript # Copyright 1999-2005 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/net-misc/yacy/files/yacy.rc,v 1.2 2005/08/19 22:17:53 slick Exp $ depend() { need net } cd $YACY_HOME JAVA="$(java-config --java)" CLASSPATH="" test -e lib/ && for N in `ls -1 lib/*.jar`; do CLASSPATH="$CLASSPATH$N:"; done test -e libx/ && for N in `ls -1 libx/*.jar`; do CLASSPATH="$CLASSPATH$N:"; done CLASSPATH="-classpath classes:htroot:$CLASSPATH" if [ -n "${NICENESS}" ] ; then NICE="nice -n ${NICENESS}" fi start() { ebegin "Starting yacy" ${NICE} sudo -u ${YACY_USER} ${JAVA} ${JAVA_OPTIONS} ${CLASSPATH} yacy &> ${LOG} & echo $! > /var/run/yacy.pid sleep 1 ps ax|grep "^ *$(cat /var/run/yacy.pid)" > /dev/null eend $? } stop() { ebegin "Shutting down yacy" sudo -u ${YACY_USER} ${JAVA} ${JAVA_OPTIONS} ${CLASSPATH} yacy -shutdown &> ${LOG} & einfon "Waiting ." cnt=0 while ( ps ax|grep "^ *$(cat /var/run/yacy.pid)" > /dev/null ) do cnt=`expr $cnt + 2` if [ $cnt -gt ${WAIT_ON_STOP} ] ; then eend 1 "Failed." break fi sleep 2 echo -n "." done echo "done." rm /var/run/yacy.pid eend $? } status() { if service_started "${myservice}" ; then if ! ps p `cat /var/run/yacy.pid` &> /dev/null ; then eerror "service seems to be down" return 1 fi else if [ -e /var/run/yacy.pid ]; then eerror "service seems to be already running" return 1 fi return 0 fi }