diff options
author | sergei <sergei@FreeBSD.org> | 2003-10-24 04:24:42 +0800 |
---|---|---|
committer | sergei <sergei@FreeBSD.org> | 2003-10-24 04:24:42 +0800 |
commit | 1abc33db68d4eaa69f6a1acd980d06a22c7dbc8b (patch) | |
tree | 7ee895dfada054b33bd849db7d574a5913b34eaa /audio/daapd | |
parent | 4d0b801b27ae8730557ddb5cc8a1ce236e33851e (diff) | |
download | freebsd-ports-gnome-1abc33db68d4eaa69f6a1acd980d06a22c7dbc8b.tar.gz freebsd-ports-gnome-1abc33db68d4eaa69f6a1acd980d06a22c7dbc8b.tar.zst freebsd-ports-gnome-1abc33db68d4eaa69f6a1acd980d06a22c7dbc8b.zip |
Add daapd 0.2.1c, server for Digital Audio Access Protocol.
daapd scans a directory for music files and makes them available via
the Apple proprietary protocol DAAP. DAAP clients can browse the
directory and retrieve individual files, either by streaming or by
downloading them.
PR: 58352
Submitted by: Lars Thegler <lars@thegler.dk>
Approved by: krion (implicit)
Diffstat (limited to 'audio/daapd')
-rw-r--r-- | audio/daapd/Makefile | 65 | ||||
-rw-r--r-- | audio/daapd/distinfo | 1 | ||||
-rw-r--r-- | audio/daapd/files/daapd.sh | 28 | ||||
-rw-r--r-- | audio/daapd/files/patch-makefile | 15 | ||||
-rw-r--r-- | audio/daapd/pkg-deinstall | 27 | ||||
-rw-r--r-- | audio/daapd/pkg-descr | 6 | ||||
-rw-r--r-- | audio/daapd/pkg-install | 40 | ||||
-rw-r--r-- | audio/daapd/pkg-message | 28 | ||||
-rw-r--r-- | audio/daapd/pkg-plist | 6 |
9 files changed, 216 insertions, 0 deletions
diff --git a/audio/daapd/Makefile b/audio/daapd/Makefile new file mode 100644 index 000000000000..d91355771ab1 --- /dev/null +++ b/audio/daapd/Makefile @@ -0,0 +1,65 @@ +# New ports collection makefile for: daapd +# Date created: 19 October 2003 +# Whom: Lars Thegler <lars@thegler.dk> +# +# $FreeBSD$ +# + +PORTNAME= daapd +PORTVERSION= 0.2.1c +CATEGORIES= audio +MASTER_SITES= http://www.deleet.de/projekte/daap/daapd/ +EXTRACT_SUFX= .tgz + +MAINTAINER= lars@thegler.dk +COMMENT= Server for Digital Audio Access Protocol + +BUILD_DEPENDS= ${LOCALBASE}/lib/libid3tag.a:${PORTSDIR}/audio/mad \ + ${LOCALBASE}/lib/libdaaplib.a:${PORTSDIR}/audio/daaplib \ + ${LOCALBASE}/lib/libhttpd.a:${PORTSDIR}/www/libhttpd-persistent + +USE_GMAKE= yes +USE_REINPLACE= yes +MAKEFILE= makefile +ALL_TARGET= daapd + +PKGMESSAGE= ${WRKDIR}/pkg-message +PKGINSTALL= ${WRKDIR}/pkg-install +PKGDEINSTALL= ${WRKDIR}/pkg-deinstall + +DAAPD_USER= daapd +DAAPD_GROUP= daapd + +LOGDIR= ${DATADIR} +FILES_SUB= USER=${DAAPD_USER} GROUP=${DAAPD_GROUP} \ + PREFIX=${PREFIX} LOGDIR=${LOGDIR} DOCSDIR=${DOCSDIR} \ + LOCALBASE=${LOCALBASE} + +post-patch: + @${REINPLACE_CMD} ${FILES_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \ + ${WRKSRC}/${MAKEFILE} + +pre-install: + @${SED} ${FILES_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \ + ${PKGDIR}/pkg-install > ${PKGINSTALL} + @${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL + +post-install: + @${INSTALL_DATA} ${WRKSRC}/daapd-example.conf ${PREFIX}/etc/daapd.conf.sample + @${SED} ${FILES_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \ + ${FILESDIR}/daapd.sh > ${WRKDIR}/daapd.sh + @${INSTALL_SCRIPT} ${WRKDIR}/daapd.sh ${PREFIX}/etc/rc.d/daapd.sh + @${SED} ${FILES_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \ + ${PKGDIR}/pkg-deinstall > ${PKGDEINSTALL} + @${SED} ${FILES_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \ + ${PKGDIR}/pkg-message > ${PKGMESSAGE} +.if !defined(NOPORTDOCS) + @${MKDIR} ${DOCSDIR} + @${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR} +.endif + @${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL +.if !defined(BATCH) + @${CAT} ${PKGMESSAGE} +.endif + +.include <bsd.port.mk> diff --git a/audio/daapd/distinfo b/audio/daapd/distinfo new file mode 100644 index 000000000000..1f4913eeb030 --- /dev/null +++ b/audio/daapd/distinfo @@ -0,0 +1 @@ +MD5 (daapd-0.2.1c.tgz) = 6f4d9a4d6aaaaafea9d82e3f31cb055f diff --git a/audio/daapd/files/daapd.sh b/audio/daapd/files/daapd.sh new file mode 100644 index 000000000000..6c4052638952 --- /dev/null +++ b/audio/daapd/files/daapd.sh @@ -0,0 +1,28 @@ +#!/bin/sh +# $FreeBSD$ + +DAAPD_USER=%%USER%% +DAAPD=%%PREFIX%%/sbin/daapd +DAAPD_LOG=%%LOGDIR%%/daapd.log +DAAPD_PID=/var/run/daapd.pid +DAAPD_CONF=%%PREFIX%%/etc/daapd.conf + +case "$1" in + start) + if [ -r "${DAAPD_CONF}" ]; then + su -m ${DAAPD_USER} -c "${DAAPD} -c ${DAAPD_CONF}" \ + >> ${DAAPD_LOG} 2>&1 & + echo $(($!+1)) > "${DAAPD_PID}" + echo -n ' daapd' + fi + ;; + stop) + kill -TERM `cat "${DAAPD_PID}"` && rm -f "${DAAPD_PID}" + ;; + *) + echo "" + echo "Usage: `basename $0` { start | stop }" + echo "" + exit 64 + ;; +esac diff --git a/audio/daapd/files/patch-makefile b/audio/daapd/files/patch-makefile new file mode 100644 index 000000000000..07ee1c58e4cc --- /dev/null +++ b/audio/daapd/files/patch-makefile @@ -0,0 +1,15 @@ +--- makefile.orig Tue Oct 21 22:59:55 2003 ++++ makefile Tue Oct 21 23:00:44 2003 +@@ -2,9 +2,9 @@ + TARGET = daapd + OBJS = daapd.o db.o dboutput.o songcache.o parsemp3.o + LIBS = -ldaaplib -lhttpd -lid3tag -lz +-LIBPATH = -L. -L/usr/local/lib +-INCPATH = -I. +-DEPLOY = /usr/local/bin ++LIBPATH = -L. -L%%LOCALBASE%%/lib ++INCPATH = -I. -I%%LOCALBASE%%/include ++DEPLOY = %%PREFIX%%/sbin + CFLAGS = -Wall -Wno-multichar + + .cc.o: diff --git a/audio/daapd/pkg-deinstall b/audio/daapd/pkg-deinstall new file mode 100644 index 000000000000..a0ca6d0332b2 --- /dev/null +++ b/audio/daapd/pkg-deinstall @@ -0,0 +1,27 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +PATH=/bin:/usr/bin:/usr/sbin + +case $2 in + +POST-DEINSTALL) + echo '---> Starting post-deinstall script:' + + if [ -f %%PREFIX%%/etc/daapd.conf ]; then + echo '---> You seem to have made some custom daapd configuration.' + echo '---> The "%%USER%%" user and "%%GROUP%%" group were therefore not deleted.' + echo '---> You may delete them with "pw groupdel %%GROUP%%; pw userdel %%USER%%".' + + else + echo '---> Removing group "%%GROUP%%"' + /usr/sbin/pw groupdel -n %%GROUP%% + echo '---> Removing user "%%USER%%"' + echo 'y' | /usr/sbin/pw userdel -n %%USER%% + fi + + ;; + +esac diff --git a/audio/daapd/pkg-descr b/audio/daapd/pkg-descr new file mode 100644 index 000000000000..c098e1c2c705 --- /dev/null +++ b/audio/daapd/pkg-descr @@ -0,0 +1,6 @@ +daapd scans a directory for music files and makes them available via +the Apple proprietary protocol DAAP. DAAP clients can browse the +directory and retrieve individual files, either by streaming or by +downloading them. + +WWW: http://www.deleet.de/projekte/daap/daapd/ diff --git a/audio/daapd/pkg-install b/audio/daapd/pkg-install new file mode 100644 index 000000000000..b539b4621aac --- /dev/null +++ b/audio/daapd/pkg-install @@ -0,0 +1,40 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +PATH=/bin:/usr/bin:/usr/sbin + +case $2 in + +PRE-INSTALL) + echo "---> Starting pre-install script:" + + if pw showgroup "%%GROUP%%" 2>/dev/null; then + echo "---> Using existing group \"%%GROUP%%\"" + else + echo "---> Adding group \"%%GROUP%%\"" + pw addgroup %%GROUP%% -h - || exit 1 + fi + + # Create user if required + if pw showuser "%%USER%%" 2>/dev/null; then + echo "---> Using existing user \"%%USER%%\"" + else + echo "---> Adding user \"%%USER%%\"" + pw adduser %%USER%% -g %%GROUP%% -h - \ + -d "%%LOGDIR%%" -s "/sbin/nologin" -c "daapd User" || exit 1 + fi + + ;; + +POST-INSTALL) + echo "---> Starting post-install script:" + + echo "---> Creating directory \"%%LOGDIR%%\"" + mkdir %%LOGDIR%% + chown %%USER%% %%LOGDIR%% + + ;; + +esac diff --git a/audio/daapd/pkg-message b/audio/daapd/pkg-message new file mode 100644 index 000000000000..6a1922c4c684 --- /dev/null +++ b/audio/daapd/pkg-message @@ -0,0 +1,28 @@ +================================================================= + +daapd has now been installed. + +A sample configuration file has been placed at: + + %%PREFIX%%/etc/daapd.conf.sample + +You need to copy this to + + %%PREFIX%%/etc/daapd.conf + +and edit it to suit your requirements. +Documentation is installed at: + + %%DOCSDIR%%/README + +Once configured, you can start daapd by running: + + %%PREFIX%%/etc/rc.d/daapd.sh start + +daapd keeps its logfile in + + %%LOGDIR%%/daapd.log + +Enjoy! + +================================================================= diff --git a/audio/daapd/pkg-plist b/audio/daapd/pkg-plist new file mode 100644 index 000000000000..71b9af9603c9 --- /dev/null +++ b/audio/daapd/pkg-plist @@ -0,0 +1,6 @@ +@comment $FreeBSD$ +sbin/daapd +etc/daapd.conf.sample +etc/rc.d/daapd.sh +%%PORTDOCS%%%%DOCSDIR%%/README +@dirrm %%DATADIR%% |