aboutsummaryrefslogblamecommitdiffstats
path: root/main/mpd/mpd.initd
blob: b894dd2fd8a4d3ff5cd7e614c5c114b69fb289af (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
                  



                                     
                     




                                                   
                      








                                                    
                                                                            



                                                  
                               
                   


                                                            

                                                   






                                                       
                          

               
#!/sbin/openrc-run

# init.d file for music player daemon

NAME=mpd
DAEMON=/usr/bin/$NAME
CONF=/etc/mpd.conf

depend() {
	need localmount
	use net netmount nfsmount esound pulseaudio
	after firewall
} 

checkconfig() {
	[ -f "$CONF" ] && return 0
	eerror "configuration file $CONF is missing"
	return 1
}

get_pidfile() {
	pidfile=$(awk '$1 == "pid_file" { print $2 }' "$CONF" | sed 's/"//')
	pidfile=${pidfile:-/var/run/mpd/$NAME.pid}
}

start() {
	checkconfig || return 1
	get_pidfile
	checkpath --owner ${M_USER:-mpd}:${M_GROUP:-audio} \
		--directory ${pidfile%/*}

	ebegin "Starting ${NAME}"
		start-stop-daemon --start --quiet \
			--exec ${DAEMON} -- ${MPD_OPTS}
	eend $?
}

stop() {
	get_pidfile
	ebegin "Stopping ${NAME}"
		mpd --kill
	eend $?
}