aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--audio/firefly/Makefile36
-rw-r--r--audio/firefly/files/mt-daapd.in6
-rw-r--r--audio/firefly/files/patch-contrib_Makefile.in8
-rw-r--r--audio/firefly/files/patch-mt-daapd.conf.templ36
-rw-r--r--audio/firefly/files/patch-plugins_out-daap.c18
-rw-r--r--audio/firefly/files/pkg-message.in26
-rw-r--r--audio/firefly/pkg-descr11
-rw-r--r--audio/firefly/pkg-plist6
8 files changed, 95 insertions, 52 deletions
diff --git a/audio/firefly/Makefile b/audio/firefly/Makefile
index cdd0680a2e91..ddaccb0cb7ee 100644
--- a/audio/firefly/Makefile
+++ b/audio/firefly/Makefile
@@ -3,17 +3,15 @@
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= SF/fireflyserver-server/Sources/mt-daapd/svn-${PORTVERSION}
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
@@ -26,22 +24,25 @@ LIB_DEPENDS= libogg.so:${PORTSDIR}/audio/libogg \
GNU_CONFIGURE= yes
CPPFLAGS+= -I${LOCALBASE}/include
LIBS+= -L${LOCALBASE}/lib
-CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
-CONFIGURE_ARGS= --prefix=${PREFIX} --with-id3tag=${PREFIX} \
- --enable-sqlite3 --enable-oggvorbis --enable-flac
+CONFIGURE_ARGS= --with-id3tag=${LOCALBASE} --enable-sqlite3 \
+ --enable-oggvorbis --enable-flac --localstatedir=/var
USES= libtool
+INSTALL_TARGET= install-strip
DAAPD_USER?= daapd
DAAPD_GROUP?= daapd
-DAAPD_DBDIR?= ${PREFIX}/var/db/${PORTNAME}
+DAAPD_DBDIR?= /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-message
PLIST_SUB+= DAAPD_DBDIR=${DAAPD_DBDIR} \
DAAPD_USER=${DAAPD_USER} \
- DAAPD_GROUP=${DAAPD_GROUP} \
- DATADIR=${DATADIR}
+ DAAPD_GROUP=${DAAPD_GROUP}
USE_LDCONFIG= yes
@@ -62,25 +63,20 @@ pre-everything::
@${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})"
-
-post-patch:
- @${REINPLACE_CMD} -e 's|echo aout|echo elf|' \
- ${WRKSRC}/configure
+ @${ECHO_CMD} "DAAPD_DBDIR=${DAAPD_DBDIR} (default: /var/db/${PORTNAME})"
post-install:
.if ${PORT_OPTIONS:MDOCS}
@${MKDIR} ${STAGEDIR}${DOCSDIR}
.for i in README AUTHORS COPYING CREDITS \
ChangeLog INSTALL NEWS TODO
- @${INSTALL_DATA} ${WRKSRC}/${i} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/${i} ${STAGEDIR}${DOCSDIR}
.endfor
.endif
+ @${MKDIR} ${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}
- @${CHMOD} 0755 ${STAGEDIR}${DATADIR}
.include <bsd.port.mk>
diff --git a/audio/firefly/files/mt-daapd.in b/audio/firefly/files/mt-daapd.in
index 28ac781b1938..0b9b083b7847 100644
--- a/audio/firefly/files/mt-daapd.in
+++ b/audio/firefly/files/mt-daapd.in
@@ -12,10 +12,10 @@ name="firefly"
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="%%DAAPD_DBDIR%%"
+required_files="%%PREFIX%%/etc/firefly/mt-daapd.conf"
load_rc_config "$name"
run_rc_command "$1"
diff --git a/audio/firefly/files/patch-contrib_Makefile.in b/audio/firefly/files/patch-contrib_Makefile.in
index 2b51a4f5462b..c3ff6905801b 100644
--- a/audio/firefly/files/patch-contrib_Makefile.in
+++ b/audio/firefly/files/patch-contrib_Makefile.in
@@ -1,6 +1,6 @@
---- contrib/Makefile.in.orig 2007-10-29 15:03:19.000000000 +0900
-+++ contrib/Makefile.in 2010-10-08 18:39:10.000000000 +0900
-@@ -200,7 +200,7 @@
+--- contrib/Makefile.in.orig 2007-10-29 06:03:19 UTC
++++ contrib/Makefile.in
+@@ -200,7 +200,7 @@ SUBDIRS = init.d
EXTRA_DIST = README mt-daapd.spec mt-daapd.conf.templ mt-daapd-ssc.sh mt-daapd-ssc.pl
BUILT_SOURCES = mt-daapd.conf
bin_SCRIPTS = mt-daapd-ssc.sh
@@ -8,4 +8,4 @@
+dbdir = "$(localstatedir)/db/firefly"
all: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) all-recursive
-
+
diff --git a/audio/firefly/files/patch-mt-daapd.conf.templ b/audio/firefly/files/patch-mt-daapd.conf.templ
index 6b5e0653f529..03a3e398dc88 100644
--- a/audio/firefly/files/patch-mt-daapd.conf.templ
+++ b/audio/firefly/files/patch-mt-daapd.conf.templ
@@ -1,15 +1,24 @@
---- contrib/mt-daapd.conf.templ 2008-09-23 23:16:46.000000000 -0700
-+++ contrib/mt-daapd.conf.templ 2008-09-23 23:40:43.000000000 -0700
-@@ -57,7 +57,7 @@
+--- contrib/mt-daapd.conf.templ.orig 2007-09-25 07:55:23 UTC
++++ contrib/mt-daapd.conf.templ
+@@ -57,7 +57,7 @@ admin_pw = mt-daapd
# info in. Valid choices are "sqlite" and "sqlite3".
#
-
+
-db_type = sqlite
+db_type = sqlite3
-
+
#
# db_parms
-@@ -105,7 +105,7 @@
+@@ -81,7 +81,7 @@ db_parms = @dbdir@
+ # in the same physical filesystem.
+ #
+
+-mp3_dir = /mnt/mp3
++mp3_dir = /media,/mnt
+
+ #
+ # servername (required)
+@@ -105,7 +105,7 @@ servername = Firefly %v on %h
# This is also ignored on Windows.
#
@@ -18,7 +27,7 @@
#
# password (optional)
-@@ -136,7 +136,7 @@
+@@ -136,7 +136,7 @@ runas = nobody
# --enable-musepack.
#
@@ -27,7 +36,7 @@
#
# ssc_codectypes (optional)
-@@ -194,8 +194,8 @@
+@@ -194,8 +194,8 @@ ssc_prog = @prefix@/bin/mt-daapd-ssc.sh
# will vary the amount of logging you get.
#
@@ -38,7 +47,7 @@
#
# rescan_interval
#
-@@ -252,7 +252,7 @@
+@@ -252,7 +252,7 @@ ssc_prog = @prefix@/bin/mt-daapd-ssc.sh
# the file is indexed.
#
@@ -47,3 +56,12 @@
#
# compress
+@@ -267,7 +267,7 @@ scan_type = 2
+ # It will eventually default to 1, but currently it defaults to 0.
+ #
+
+-#compress = 0
++compress = 1
+
+ [plugins]
+ plugin_dir = @libdir@/mt-daapd/plugins
diff --git a/audio/firefly/files/patch-plugins_out-daap.c b/audio/firefly/files/patch-plugins_out-daap.c
index 2bd59918b114..d248ae343add 100644
--- a/audio/firefly/files/patch-plugins_out-daap.c
+++ b/audio/firefly/files/patch-plugins_out-daap.c
@@ -1,24 +1,24 @@
---- src/plugins/out-daap.c 2007-10-13 15:10:06.000000000 -0700
-+++ src/plugins/out-daap.c.new 2011-10-16 18:08:53.207764000 -0700
-@@ -1392,11 +1393,9 @@
-
+--- src/plugins/out-daap.c.orig 2007-10-13 22:10:06 UTC
++++ src/plugins/out-daap.c
+@@ -1392,11 +1392,9 @@ void out_daap_server_info(WS_CONNINFO *p
+
size = sizeof(servername);
pi_server_name(servername,&size);
- // supports_update = conf_get_int("daap","supports_update",1);
+ supports_update = pi_conf_get_int("daap","supports_update",1);
-
+
actual_length=139 + (int) strlen(servername);
- if(!supports_update)
- actual_length -= 9;
-
+
if(actual_length > sizeof(server_info)) {
pi_log(E_FATAL,"Server name too long.\n");
-@@ -1434,6 +1433,8 @@
+@@ -1434,6 +1432,8 @@ void out_daap_server_info(WS_CONNINFO *p
current += dmap_add_int(current,"msdc",1); /* 12 */
-
+
if(supports_update)
+ current += dmap_add_char(current,"msup",1); /* 9 */
+ else
current += dmap_add_char(current,"msup",0); /* 9 */
-
+
out_daap_output_start(pwsc,ppi,actual_length);
diff --git a/audio/firefly/files/pkg-message.in b/audio/firefly/files/pkg-message.in
new file mode 100644
index 000000000000..651a451c173d
--- /dev/null
+++ b/audio/firefly/files/pkg-message.in
@@ -0,0 +1,26 @@
+----------------------------------------------------------------------------
+
+Working configuration and an example are placed under
+
+ %%ETCDIR%%/mt-daapd.conf.sample
+ %%ETCDIR%%/mt-daapd.conf
+
+Change admin_pw, password and mp3_dir in the configuration according to your
+needs
+
+
+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/
+
+----------------------------------------------------------------------------
diff --git a/audio/firefly/pkg-descr b/audio/firefly/pkg-descr
index ef7a166198f3..8415eaa8e2d7 100644
--- a/audio/firefly/pkg-descr
+++ b/audio/firefly/pkg-descr
@@ -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/
diff --git a/audio/firefly/pkg-plist b/audio/firefly/pkg-plist
index da1a87afe18a..cc0844613452 100644
--- a/audio/firefly/pkg-plist
+++ b/audio/firefly/pkg-plist
@@ -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/xiph-license.txt
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%%