Bugzilla – Attachment 63491 Details for
Bug 143397
festival init script
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
IDP Log In
|
Forgot Password
festival init script
festival (text/plain), 7.78 KB, created by
Andreas Schneider
on 2006-01-16 15:56:51 UTC
(
hide
)
Description:
festival init script
Filename:
MIME Type:
Creator:
Andreas Schneider
Created:
2006-01-16 15:56:51 UTC
Size:
7.78 KB
patch
obsolete
>#! /bin/sh ># Copyright (c) 1995-2004 SUSE Linux AG, Nuernberg, Germany. ># All rights reserved. ># ># Author: Kurt Garloff ># Please send feedback to http://www.suse.de/feedback/ ># ># /etc/init.d/festival ># and its symbolic link ># /(usr/)sbin/rcfestival ># ># This program is free software; you can redistribute it and/or modify ># it under the terms of the GNU General Public License as published by ># the Free Software Foundation; either version 2 of the License, or ># (at your option) any later version. ># ># This program is distributed in the hope that it will be useful, ># but WITHOUT ANY WARRANTY; without even the implied warranty of ># MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ># GNU General Public License for more details. ># ># You should have received a copy of the GNU General Public License ># along with this program; if not, write to the Free Software ># Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ># ># LSB compatible service control script; see http://www.linuxbase.org/spec/ ># ># Note: This template uses functions rc_XXX defined in /etc/rc.status on ># UnitedLinux (UL) based Linux distributions. If you want to base your ># script on this template and ensure that it works on non UL based LSB ># compliant Linux distributions, you either have to provide the rc.status ># functions from UL or change the script to work without them. ># >### BEGIN INIT INFO ># Provides: festival ># Required-Start: $syslog $remote_fs ># Should-Start: $time ypbind sendmail ># Required-Stop: $syslog $remote_fs ># Should-Stop: $time ypbind sendmail ># Default-Start: 3 5 ># Default-Stop: 0 1 2 6 ># Short-Description: festival daemon providing full text-to-speech system ># Description: Start festival to allow applications to access a ># text-to-speech system with various APIs, as well as an environment ># for development and research of speech synthesis techniques. It is ># written in C++ and has a Scheme-based command interpreter for ># general control. >### END INIT INFO > > ># ># Note on runlevels: ># 0 - halt/poweroff 6 - reboot ># 1 - single user 2 - multiuser without network exported ># 3 - multiuser w/ network (text mode) 5 - multiuser w/ network and X11 (xdm) ># ># Note on script names: ># http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/scrptnames.html ># A registry has been set up to manage the init script namespace. ># http://www.lanana.org/ ># Please use the names already registered or register one or use a ># vendor prefix. > > ># Check for missing binaries (stale symlinks should not happen) ># Note: Special treatment of stop for LSB conformance >FESTIVAL_BIN=/usr/bin/festival >test -x $FESTIVAL_BIN || { echo "$FESTIVAL_BIN not installed"; > if [ "$1" = "stop" ]; then exit 0; > else exit 5; fi; } > ># Check for existence of needed config file and read it >FESTIVAL_CONFIG=/etc/sysconfig/festival >test -r $FESTIVAL_CONFIG || { echo "$FESTIVAL_CONFIG not existing"; > if [ "$1" = "stop" ]; then exit 0; > else exit 6; fi; } > ># Read config >. $FESTIVAL_CONFIG > ># Source LSB init functions ># providing start_daemon, killproc, pidofproc, ># log_success_msg, log_failure_msg and log_warning_msg. ># This is currently not used by UnitedLinux based distributions and ># not needed for init scripts for UnitedLinux only. If it is used, ># the functions from rc.status should not be sourced or used. >#. /lib/lsb/init-functions > ># Shell functions sourced from /etc/rc.status: ># rc_check check and set local and overall rc status ># rc_status check and set local and overall rc status ># rc_status -v be verbose in local rc status and clear it afterwards ># rc_status -v -r ditto and clear both the local and overall rc status ># rc_status -s display "skipped" and exit with status 3 ># rc_status -u display "unused" and exit with status 3 ># rc_failed set local and overall rc status to failed ># rc_failed <num> set local and overall rc status to <num> ># rc_reset clear both the local and overall rc status ># rc_exit exit appropriate to overall rc status ># rc_active checks whether a service is activated by symlinks >. /etc/rc.status > ># Reset status of this service >rc_reset > ># Return values acc. to LSB for all commands but status: ># 0 - success ># 1 - generic or unspecified error ># 2 - invalid or excess argument(s) ># 3 - unimplemented feature (e.g. "reload") ># 4 - user had insufficient privileges ># 5 - program is not installed ># 6 - program is not configured ># 7 - program is not running ># 8--199 - reserved (8--99 LSB, 100--149 distrib, 150--199 appl) ># ># Note that starting an already running service, stopping ># or restarting a not-running service as well as the restart ># with force-reload (in case signaling is not supported) are ># considered a success. > >case "$1" in > start) > echo -n "Starting festival " > ## Start daemon with startproc(8). If this fails > ## the return value is set appropriately by startproc. > #/sbin/startproc -u "$FESTIVAL_USERID" -g "$FESTIVAL_GROUPID" -e $FESTIVAL_BIN $FESTIVAL_OPTIONS >/dev/null 2>&1 > /sbin/startproc $FESTIVAL_BIN $FESTIVAL_OPTIONS >/dev/null 2>&1 > > # Remember status and be verbose > rc_status -v > ;; > stop) > echo -n "Shutting down festival " > ## Stop daemon with killproc(8) and if this fails > ## killproc sets the return value according to LSB. > > /sbin/killproc -TERM $FESTIVAL_BIN > > # Remember status and be verbose > rc_status -v > ;; > try-restart|condrestart) > ## Do a restart only if the service was active before. > ## Note: try-restart is now part of LSB (as of 1.9). > ## RH has a similar command named condrestart. > if test "$1" = "condrestart"; then > echo "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}" > fi > $0 status > if test $? = 0; then > $0 restart > else > rc_reset # Not running is not a failure. > fi > # Remember status and be quiet > rc_status > ;; > restart) > ## Stop the service and regardless of whether it was > ## running or not, start it again. > $0 stop > $0 start > > # Remember status and be quiet > rc_status > ;; > force-reload) > ## Signal the daemon to reload its config. Most daemons > ## do this on signal 1 (SIGHUP). > ## If it does not support it, restart the service if it > ## is running. > > echo -n "Reload service festival " > ## if it supports it: > /sbin/killproc -HUP $FESTIVAL_BIN > #touch /var/run/festival.pid > rc_status -v > > ## Otherwise: > #$0 try-restart > #rc_status > ;; > reload) > ## Like force-reload, but if daemon does not support > ## signaling, do nothing (!) > > # If it supports signaling: > echo -n "Reload service festival " > /sbin/killproc -HUP $FESTIVAL_BIN > #touch /var/run/festival.pid > rc_status -v > > ## Otherwise if it does not support reload: > #rc_failed 3 > #rc_status -v > ;; > status) > echo -n "Checking for service festival " > ## Check status with checkproc(8), if process is running > ## checkproc will return with exit status 0. > > # Return value is slightly different for the status command: > # 0 - service up and running > # 1 - service dead, but /var/run/ pid file exists > # 2 - service dead, but /var/lock/ lock file exists > # 3 - service not running (unused) > # 4 - service status unknown :-( > # 5--199 reserved (5--99 LSB, 100--149 distro, 150--199 appl.) > > # NOTE: checkproc returns LSB compliant status values. > /sbin/checkproc $FESTIVAL_BIN > # NOTE: rc_status knows that we called this init script with > # "status" option and adapts its messages accordingly. > rc_status -v > ;; > probe) > ## Optional: Probe for the necessity of a reload, print out the > ## argument to this init script which is required for a reload. > ## Note: probe is not (yet) part of LSB (as of 1.9) > > test /etc/festival.scm -nt /var/run/festival.pid && echo reload > ;; > *) > echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}" > exit 1 > ;; >esac >rc_exit
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
Actions:
View
Attachments on
bug 143397
: 63491 |
63492
|
64231