mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-14 07:43:06 +00:00
83eb2c3700
literal name_enable wherever possible, and ${name}_enable when it's not, to prepare for the demise of set_rcvar(). In cases where I had to hand-edit unusual instances also modify formatting slightly to be more uniform (and in some cases, correct). This includes adding some $FreeBSD$ tags, and most importantly moving rcvar= to right after name= so it's clear that one is derived from the other.
72 lines
1.4 KiB
Bash
72 lines
1.4 KiB
Bash
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# PROVIDE: gpsd
|
|
# REQUIRE: NETWORKING DAEMON cleanvar devfs
|
|
# BEFORE: ntpd
|
|
# KEYWORD: shutdown
|
|
|
|
#
|
|
# Add the following lines to /etc/rc.conf to enable gpsd:
|
|
#
|
|
# gpsd_enable (bool): Set to "NO" by default.
|
|
# Set it to "YES" to enable gpsd.
|
|
#
|
|
# gpsd_flags (str): Set to "" by default.
|
|
# See gpsd(8) for flags.
|
|
#
|
|
# gpsd_devices (str): Set to "" by default.
|
|
# Example: "/dev/cuaU0" for a USB serial GPS.
|
|
#
|
|
|
|
. /etc/rc.subr
|
|
|
|
name=gpsd
|
|
rcvar=gpsd_enable
|
|
|
|
start_postcmd=start_postcmd
|
|
stop_postcmd=stop_postcmd
|
|
|
|
start_postcmd()
|
|
{
|
|
if ! checkyesno gpxlogger_enable; then
|
|
return;
|
|
fi
|
|
|
|
cd ${gpxlogger_logdir};
|
|
gpx=$(date +"${gpxlogger_format}")
|
|
touch "${pidfile_logger}" "${gpx}"
|
|
chown nobody:nobody "${pidfile_logger}" "${gpx}"
|
|
/usr/sbin/daemon -u nobody -p "${pidfile_logger}" \
|
|
${gpxlogger} ${gpxlogger_flags} > ${gpx}
|
|
}
|
|
|
|
stop_postcmd()
|
|
{
|
|
if ! checkyesno gpxlogger_enable; then
|
|
return;
|
|
fi
|
|
|
|
/bin/kill $(/bin/cat "${pidfile_logger}")
|
|
}
|
|
|
|
load_rc_config $name
|
|
|
|
# Set defaults
|
|
: ${gpsd_enable:="NO"}
|
|
: ${gpxlogger_enable:="NO"}
|
|
: ${gpxlogger_flags:="-i 600"}
|
|
: ${gpxlogger_logdir:="/var/log"}
|
|
: ${gpxlogger_format:="%d %B %Y - %H:%M.gpx"}
|
|
|
|
pidfile=/var/run/$name.pid
|
|
command=%%PREFIX%%/sbin/$name
|
|
command_args="-P $pidfile $gpsd_devices"
|
|
|
|
gpxlogger=/usr/local/bin/gpxlogger
|
|
pidfile_logger=/var/run/gpxlogger.pid
|
|
|
|
run_rc_command "$1"
|