Browse Source

shairpoint-sync: proper startup integration

Signed-off-by: Joerg Seitter <adk@seitter.net>
Joerg Seitter 3 years ago
parent
commit
7dc649ed6d

+ 4 - 3
package/shairport-sync/Makefile

@@ -9,7 +9,7 @@ PKG_RELEASE:=		1
 PKG_GIT:=		tag
 PKG_DESCR:=		airplay daemon	
 PKG_SECTION:=		mm/audio	
-PKG_DEPENDS:=		libressl popt libdaemon libconfig jack mosquitto
+PKG_DEPENDS:=		libressl libpopt libdaemon libconfig jack mosquitto
 PKG_BUILDDEP:=		libressl popt libdaemon libconfig jack mosquitto
 PKG_URL:=		https://github.com/mikebrady/shairport-sync
 PKG_SITES:=		https://github.com/mikebrady/shairport-sync.git
@@ -32,9 +32,10 @@ CONFIGURE_ARGS+=	--with-pkg-config \
 
 shairport-sync-install:
 	$(INSTALL_DIR) $(IDIR_SHAIRPORT_SYNC)/usr/bin
+	$(INSTALL_DIR) $(IDIR_SHAIRPORT_SYNC)/etc/shairport-sync
 	$(INSTALL_BIN) $(WRKINST)/usr/bin/shairport-sync \
 		$(IDIR_SHAIRPORT_SYNC)/usr/bin
-	$(INSTALL_DATA) $(WRKINST)/etc/shairport-sync.conf \
-		$(IDIR_SHAIRPORT_SYNC)/etc/shairport-sync.conf
+	$(INSTALL_DATA) $(WRKINST)/etc/* \
+		$(IDIR_SHAIRPORT_SYNC)/etc/shairport-sync/
 
 include $(ADK_TOPDIR)/mk/pkg-bottom.mk

+ 28 - 0
package/shairport-sync/files/shairport-sync.init

@@ -0,0 +1,28 @@
+#!/bin/sh
+#PKG shairport-sync
+#INIT 80
+. /etc/rc.conf
+
+case $1 in
+autostop) ;;
+autostart)
+	test x"${shairport_sync:-NO}" = x"NO" && exit 0
+	test x"$shairport_sync" = x"DAEMON" && test -x /bin/mksh && exec mksh -T- $0 start
+	exec sh $0 start
+	;;
+start)
+	/usr/bin/shairport-sync -c /etc/shairport/shairport-sync.conf -d $shairport_sync_flags
+	;;
+stop)
+	/usr/bin/shairport-sync -k
+	;;
+restart)
+	sh $0 stop
+	sh $0 start
+	;;
+*)
+	echo "Usage: $0 {start | stop | restart}"
+	exit 1
+	;;
+esac
+exit $?

+ 7 - 0
package/shairport-sync/files/shairport-sync.postinst

@@ -0,0 +1,7 @@
+#!/bin/sh
+. $IPKG_INSTROOT/etc/functions.sh
+add_rcconf shairport_sync NO
+add_rcconf shairport_sync_flags " "
+gid=$(get_next_gid) 
+add_group shairport-sync $gid 
+add_user shairport-sync $(get_next_uid) $gid /etc/shairport-sync