#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: nvidia_xorg
# REQUIRE: LOGIN
# KEYWORD: shutdown

. /etc/rc.subr

name=nvidia_xorg
rcvar=nvidia_xorg_enable
desc="Nvidia GPU Dedicated Xorg"

load_rc_config $name

: ${nvidia_xorg_enable:=NO}
: ${nvidia_modeset:=NO}
: ${nvidia_manage_kld:=YES}

command=/usr/sbin/daemon
pidfile=/var/run/${name}.pid
procname="/usr/local/libexec/Xorg"
command_args="-p ${pidfile} -f /usr/local/bin/Xorg-nvidia-headless"
start_precmd="${name}_prestart"
stop_postcmd="${name}_poststop"

if checkyesno nvidia_modeset; then
	kmod=nvidia-modeset
else
	kmod=nvidia
fi

nvidia_xorg_prestart()
{
	if checkyesno nvidia_manage_kld; then
		kldload -n ${kmod} || return 1
	fi
}

nvidia_xorg_poststop()
{
	if checkyesno nvidia_manage_kld; then
		kldunload -f ${kmod} || return 1
	fi
}

run_rc_command "$1"
