Index: Makefile =================================================================== --- Makefile (Revision 372949) +++ Makefile (Arbeitskopie) @@ -3,17 +3,17 @@ PORTNAME= firefly PORTVERSION= 1696 -PORTREVISION= 10 +PORTREVISION= 11 CATEGORIES= audio -MASTER_SITES= http://nightlies.fireflymediaserver.org/nightlies/svn-${PORTVERSION}/ \ - http://www.magnesium.net/~mdf/distfiles/ +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} \ + ${MASTER_SITE_SOURCEFORGE} +MASTER_SITE_SUBDIR= fireflyserver-server/Sources/mt-daapd/svn-1696 DISTNAME= mt-daapd-svn-${PORTVERSION} -MAINTAINER= info@netocean.de +MAINTAINER= info@NetOcean.de COMMENT= Open-source media server for the Roku SoundBridge and iTunes LICENSE= GPLv2 -BROKEN= Does not fetch BUILD_DEPENDS= ${LOCALBASE}/include/vorbis/codec.h:${PORTSDIR}/audio/libvorbis \ ${LOCALBASE}/include/FLAC/metadata.h:${PORTSDIR}/audio/flac @@ -33,11 +33,16 @@ DAAPD_USER?= daapd DAAPD_GROUP?= daapd -DAAPD_DBDIR?= ${PREFIX}/var/db/${PORTNAME} +DAAPD_DBDIR?= ${BASEDIR}/var/db/${PORTNAME} USE_RC_SUBR= mt-daapd USERS= ${DAAPD_USER} GROUPS= ${DAAPD_GROUP} +SUB_LIST+= DAAPD_USER=${DAAPD_USER} \ + DAAPD_GROUP=${DAAPD_GROUP} \ + DAAPD_DBDIR=${DAAPD_DBDIR} + +SUB_FILES= pkg-install pkg-message PLIST_SUB+= DAAPD_DBDIR=${DAAPD_DBDIR} \ DAAPD_USER=${DAAPD_USER} \ DAAPD_GROUP=${DAAPD_GROUP} \ @@ -62,7 +67,7 @@ @${ECHO_CMD} "Define vars below if you need:" @${ECHO_CMD} "DAAPD_USER=${DAAPD_USER} (default: daapd)" @${ECHO_CMD} "DAAPD_GROUP=${DAAPD_GROUP} (default: daapd)" - @${ECHO_CMD} "DAAPD_DBDIR=${DAAPD_DBDIR} (default: ${PREFIX}/var/db/${PORTNAME})" + @${ECHO_CMD} "DAAPD_DBDIR=${DAAPD_DBDIR} (default: ${BASEDIR}/var/db/${PORTNAME})" post-patch: @${REINPLACE_CMD} -e 's|echo aout|echo elf|' \ @@ -76,11 +81,14 @@ @${INSTALL_DATA} ${WRKSRC}/${i} ${STAGEDIR}${DOCSDIR} .endfor .endif + @${MKDIR} ${STAGEDIR}${PREFIX}/etc/${PORTNAME} + @${CHMOD} 0755 ${STAGEDIR}${PREFIX}/etc/${PORTNAME} ${INSTALL_DATA} ${WRKSRC}/contrib/mt-daapd.conf \ - ${STAGEDIR}${PREFIX}/etc/mt-daapd.conf.sample + ${STAGEDIR}${PREFIX}/etc/${PORTNAME}/mt-daapd.conf.sample @${MKDIR} ${STAGEDIR}${DAAPD_DBDIR} @${MKDIR} ${STAGEDIR}${DATADIR} @${CHMOD} 0755 ${STAGEDIR}${DAAPD_DBDIR} + @${CHOWN} -R ${DAAPD_USER}:${DAAPD_GROUP} ${STAGEDIR}${DAAPD_DBDIR} @${CHMOD} 0755 ${STAGEDIR}${DATADIR} .include Index: files/mt-daapd.in =================================================================== --- files/mt-daapd.in (Revision 372949) +++ files/mt-daapd.in (Arbeitskopie) @@ -12,10 +12,10 @@ rcvar=firefly_enable command="%%PREFIX%%/sbin/mt-daapd" -command_args="-c %%PREFIX%%/etc/mt-daapd.conf" +command_args="-c %%PREFIX%%/etc/firefly/mt-daapd.conf" pidfile="/var/run/mt-daapd.pid" -required_dirs="%%PREFIX%%/var/db/firefly" -required_files="%%PREFIX%%/etc/mt-daapd.conf" +required_dirs="%%BASEDIR%%/var/db/firefly" +required_files="%%PREFIX%%/etc/firefly/mt-daapd.conf" load_rc_config "$name" run_rc_command "$1" Index: files/pkg-install.in =================================================================== --- files/pkg-install.in (Revision 0) +++ files/pkg-install.in (Arbeitskopie) @@ -0,0 +1,80 @@ +#!/bin/sh + +user="%%DAAPD_USER%%" +group="%%DAAPD_GROUP%%" +etcdir=%%ETCDIR%% +dbdir=%%DAAPD_DBDIR%% + +#function mkpw () { +# head /dev/urandom | uuencode -m - | sed -n 2p | cut -c1-${1:-8} +#} + +case ${2} in +POST-INSTALL) + + if [ -f ${etcdir}/mt-daapd.conf.sample ]; then + + # Check whether .../mt-daapd.conf had been modified + CHK_ONE=$(cat ${etcdir}/mt-daapd.conf | md5) + CHK_TWO='empty' + if [ -f ${etcdir}/mt-daapd.conf.sample ]; then + CHK_TWO=$(cat ${etcdir}/mt-daapd.conf.sample | md5) + fi + + + if [ "${CHK_ONE}" != "${CHK_TWO}" ]; then + + echo "" + echo "INFO: ${etcdir}/mt-daapd.conf" + echo "INFO: exists already. I rather won't" + echo "INFO: overwrite it with the example." + echo "" + + else + cp -a ${etcdir}/mt-daapd.conf.sample ${etcdir}/mt-daapd.conf + FILE=${etcdir}/mt-daapd.conf + + + DIRS="/home /media /mnt" + for DIR in ${DIRS}; do + if [ -d ${DIR} ]; then + mp3_dir="$( echo "${mp3_dir},${DIR}" )" + fi + done + mp3_dir="$( echo "${mp3_dir}" | sed -E 's|^,||')" + mp3_dir="$( echo "${mp3_dir}" | sed -E 's|,$||')" + + + RESULT="$( cat ${FILE} | sed -E 's|^(mp3_dir =).*|\1 '${mp3_dir}'|' )" + [ ! -z "${RESULT}" ] && echo "${RESULT}" > ${FILE} + + + RESULT="$( cat ${FILE} | sed -E 's|^(db_parms =).*|\1 '${dbdir}'|' )" + [ ! -z "${RESULT}" ] && echo "${RESULT}" > ${FILE} + + + RESULT="$( cat ${FILE} | sed -E 's|^(servername =).*|\1 '$(hostname)'|' )" + [ ! -z "${RESULT}" ] && echo "${RESULT}" > ${FILE} + + + #RESULT="$( cat ${FILE} | sed -E 's|(admin_pw =).*|\1 '$(mkpw 10)'|' )" + RESULT="$( cat ${FILE} | sed -E 's|(admin_pw =).*|\1 '$(head /dev/urandom | uuencode -m - | sed -n 2p | cut -c1-10)'|' )" + [ ! -z "${RESULT}" ] && echo "${RESULT}" > ${FILE} + + + RESULT="$( cat ${FILE} | sed -E 's|^#?(password =).*|\1 firefly|' )" + [ ! -z "${RESULT}" ] && echo "${RESULT}" > ${FILE} + + + RESULT="$( cat ${FILE} | sed -E 's|^#?(compress =).*|\1 1|' )" + [ ! -z "${RESULT}" ] && echo "${RESULT}" > ${FILE} + + + RESULT="$( cat ${FILE} | sed -E 's|(logfile =).*|\1 /var/log/mt-daapd.log|' )" + [ ! -z "${RESULT}" ] && echo "${RESULT}" > ${FILE} + fi + fi + +;; +esac + Eigenschaftsänderungen: files/pkg-install.in ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: files/pkg-message.in =================================================================== --- files/pkg-message.in (Revision 0) +++ files/pkg-message.in (Arbeitskopie) @@ -0,0 +1,25 @@ + +---------------------------------------------------------------------------- + + +Working configuration and an example is placed under + + %%ETCDIR%%/mt-daapd.conf.sample + %%ETCDIR%%/mt-daapd.conf + + +In order to let FireFly service start at boot, add following to rc.conf + + firefly_enable="YES" + + +FireFly service can be initialized by the following command + + service mt-daapd start + + +For further information and tips, see the following webpage + + https://sourceforge.net/projects/fireflyserver-server/ + +---------------------------------------------------------------------------- Eigenschaftsänderungen: files/pkg-message.in ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: pkg-descr =================================================================== --- pkg-descr (Revision 372949) +++ pkg-descr (Arbeitskopie) @@ -1,5 +1,8 @@ -Firefly (mt-daapd) is an open-source media server for the Roku SoundBridge -and Apple iTunes. It runs on POSIX platforms as well as Win32. It supports -server-side transcoding and other advanced features. +iTunes-compatible DAAP Server -WWW: http://www.fireflymediaserver.org/ +Firefly Media Server (formerly mt-daapd) is an open-source audio media server +(or daemon) for the Roku SoundBridge and iTunes. It serves media files using +Roku Server Protocol (RSP) and Digital Audio Access Protocol (DAAP). It +supports server-side transcoding and other advanced features. + +WWW: https://sourceforge.net/projects/fireflyserver-server/ Index: pkg-plist =================================================================== --- pkg-plist (Revision 372949) +++ pkg-plist (Arbeitskopie) @@ -1,4 +1,4 @@ -@sample etc/mt-daapd.conf.sample +@sample %%ETCDIR%%/mt-daapd.conf.sample bin/mt-daapd-ssc.sh bin/wavstreamer lib/mt-daapd/plugins/out-daap.a @@ -64,5 +64,5 @@ share/mt-daapd/admin-root/zlib-license.html share/mt-daapd/admin-root/zlib-license.txt @dir(%%DAAPD_USER%%,%%DAAPD_GROUP%%,) %%DATADIR%% -@rmtry var/db/firefly/songs3.db -@dir(%%DAAPD_USER%%,%%DAAPD_GROUP%%,) var/db/firefly +@rmtry %%DAAPD_DBDIR%%/songs3.db +@dir(%%DAAPD_USER%%,%%DAAPD_GROUP%%,) %%DAAPD_DBDIR%%