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: Aurélien Chabot <aurelien@chabot.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Aurélien Chabot 2015-02-24 00:39:22 +01:00 committed by Thomas Petazzoni
parent 7d2ba7116e
commit 84b13410b9
3 changed files with 66 additions and 0 deletions

View file

@ -0,0 +1,40 @@
#!/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 $?

View file

@ -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))

View file

@ -0,0 +1,11 @@
[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