#!/bin/sh # $FreeBSD$ # # PROVIDE: albatross_daemon # REQUIRE: LOGIN albatross_console albatross_log albatross_stat # KEYWORD: shutdown # # Define these albatross_daemon_* variables in one of these files # /etc/rc.conf # /etc/rc.conf.local # /etc/rc.conf.d/albatross_daemon # /usr/local/etc/rc.conf.d/albatross_daemon # # albatross_daemon_enable: Set YES to enable the albatross daemon service # Default: NO # albatross_daemon_flags: # Default: "" # # . /etc/rc.subr name=albatross_daemon rcvar=${name}_enable desc="Albatross service" load_rc_config $name start_cmd="albatross_daemon_start" start_precmd="albatross_daemon_precmd" : ${albatross_daemon_enable:="NO"} : ${albatross_daemon_flags:=""} pidfile="/var/run/albatross_daemon.pid" procname="/usr/local/libexec/albatross/albatrossd" # # force_depend script [rcvar] # Force a service to start. Intended for use by services # to resolve dependency issues. # $1 - filename of script, in /usr/local/etc/rc.d, to run # $2 - name of the script's rcvar (minus the _enable) # my_force_depend() { local _depend _dep_rcvar _depend="$1" _dep_rcvar="${2:-$1}_enable" [ -n "$rc_fast" ] && ! checkyesno always_force_depends && checkyesno $_dep_rcvar && return 0 /usr/local/etc/rc.d/${_depend} forcestatus >/dev/null 2>&1 && return 0 info "${name} depends on ${_depend}, which will be forced to start." if ! /usr/local/etc/rc.d/${_depend} forcestart; then warn "Unable to force ${_depend}. It may already be running." return 1 fi } albatross_daemon_precmd() { my_force_depend albatross_console || err 1 "Cannot run albatross_console" my_force_depend albatross_log || err 1 "Cannot run albatross_log" my_force_depend albatross_stat || err 1 "Cannot run albatross_stat" } albatross_daemon_start () { echo "Starting ${name}." /usr/sbin/daemon -S -p "${pidfile}" "${procname}" \ ${albatross_daemon_flags} } run_rc_command "$1"