Commit 84b13410 authored by Aurélien Chabot's avatar Aurélien Chabot Committed by Thomas Petazzoni
Browse files

minidlna: add init script for sysv and systemd



[Thomas: add a sleep 1 between stop and start, otherwise minidlnad
does not restart properly.]

Signed-off-by: default avatarAurélien Chabot <aurelien@chabot.fr>
Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
parent 7d2ba711
Loading
Loading
Loading
Loading
+40 −0
Original line number Diff line number Diff line
#!/bin/sh
#
# minidlnad        Starts minidlnad.
#

start() {
	echo -n "Starting minidlna: "
	umask 077
	start-stop-daemon -S -q -p /var/run/minidlna/minidlna.pid \
		--exec /usr/sbin/minidlnad
	[ $? = 0 ] && echo "OK" || echo "FAIL"
}
stop() {
	echo -n "Stopping minidlna: "
	start-stop-daemon -K -q -p /var/run/minidlna/minidlna.pid
	[ $? = 0 ] && echo "OK" || echo "FAIL"
}
restart() {
	stop
	# Sleep needed for minidlna to restart properly
	sleep 1
	start
}

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

exit $?
+15 −0
Original line number Diff line number Diff line
@@ -24,4 +24,19 @@ MINIDLNA_CONF_OPTS = \
	--disable-static
endif

define MINIDLNA_INSTALL_INIT_SYSV
	$(INSTALL) -D -m 0755 package/minidlna/S60minidlnad \
		$(TARGET_DIR)/etc/init.d/S60minidlnad
endef

define MINIDLNA_INSTALL_INIT_SYSTEMD
	$(INSTALL) -D -m 0755 package/minidlna/minidlnad.service \
		$(TARGET_DIR)/lib/systemd/system/minidlnad.service

	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants

	ln -fs ../minidlnad.service \
		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/minidlnad.service
endef

$(eval $(autotools-package))
+11 −0
Original line number Diff line number Diff line
[Unit]
Description=minidlna server
After=network.target

[Service]
Type=forking
ExecStart=/usr/sbin/minidlnad
PIDFile=/var/run/minidlna/minidlna.pid

[Install]
WantedBy=multi-user.target