summaryrefslogtreecommitdiffstats
path: root/multimedia/jellyfin-bin/rc.jellyfin
blob: 6af29237e2e8f2ac4cd05bca709d8a7fdf5a1bf2 (plain)
#!/bin/sh

### BEGIN INIT INFO
# Provides:          Jellyfin Media Server
# Required-Start:    
# Required-Stop:     
# Default-Start:     S
# Default-Stop:      
# Short-Description: Jellyfin Media Server
# Description:       Runs Jellyfin Media Server
### END INIT INFO

# Load the defaults
. /etc/default/jellyfin


start() {
if [ -x /opt/jellyfin/jellyfin/jellyfin ]; then
	if [ "$USER" = "" ]; then
		echo "Starting Jellyfin Media Server"
		/usr/bin/daemon --name=jellyfin --pidfile=/var/run/jellyfin.pid -- \
		/opt/jellyfin/jellyfin/jellyfin \
		-d $DATADIR \
		-C $CACHEDIR \
		-c $CONFIGDIR \
		-l $LOGDIR
	else 
		echo "Starting Jellyfin Media Server"
		/usr/bin/daemon --name=jellyfin --pidfile=/var/run/jellyfin.pid -- \
		/opt/jellyfin/jellyfin/jellyfin \
		-d $DATADIR \
		-C $CACHEDIR \
		-c $CONFIGDIR \
		-l $LOGDIR \
		-u $USER:$GROUP
	fi
fi
}

stop() {
echo "Stopping Jellyfin Media Server"
if /usr/bin/daemon --name=jellyfin --pidfile=/var/run/jellyfin.pid --running ; then
	/usr/bin/daemon --name=jellyfin --pidfile=/var/run/jellyfin.pid --stop
fi
}

restart() {
echo "Restarting Jellyfin Media Server"
if /usr/bin/daemon --name=jellyfin --pidfile=/var/run/jellyfin.pid --running ; then
	/usr/bin/daemon --name=jellyfin --pidfile=/var/run/jellyfin.pid --restart
 fi
}

status() {
/usr/bin/daemon --name=jellyfin --running --pidfile=/var/run/jellyfin.pid --verbose
}

case "$1" in
start)
	start
	;;
stop)
	stop
	;;
restart)
	restart
	;;
status)
	status
	;;
*)
	echo $"Usage: $0 {start|stop|restart|status}"
	exit 1
esac