Index: audio/Makefile =================================================================== --- audio/Makefile +++ audio/Makefile @@ -167,6 +167,7 @@ SUBDIR += fluidsynth SUBDIR += fluidsynth-dssi SUBDIR += fmit + SUBDIR += forked-daapd SUBDIR += fpc-a52 SUBDIR += fpc-mad SUBDIR += fpc-modplug Index: audio/forked-daapd/Makefile =================================================================== --- /dev/null +++ audio/forked-daapd/Makefile @@ -0,0 +1,66 @@ +# Created by: Takumi Takahashi +# $FreeBSD$ + +PORTNAME= forked-daapd +PORTVERSION= 24.1 +CATEGORIES= audio + +MAINTAINER= takumiiinn@gmail.com +COMMENT= DAAP (iTunes), MPD (Music Player Daemon) and RSP (Roku) media server + +LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/COPYING + +USE_GITHUB= yes +GH_ACCOUNT= ejurgensen + +USES= autoreconf compiler gettext gmake gperf iconv libtool localbase pathfix pkgconfig sqlite + +BUILD_DEPENDS= antlr3:devel/antlr3 +LIB_DEPENDS= libantlr3c.so:devel/libantlr3c \ + libavahi-client.so:net/avahi-app \ + libavcodec.so:multimedia/ffmpeg \ + libconfuse.so:devel/libconfuse \ + libevent.so:devel/libevent2 \ + libgcrypt.so:security/libgcrypt \ + libinotify.so:devel/libinotify \ + libmxml.so:textproc/mxml \ + libunistring.so:devel/libunistring + +GNU_CONFIGURE= yes +INSTALL_TARGET= install-strip +USE_LDCONFIG= ${LOCALBASE}/lib/forked-daapd + +USE_RC_SUBR= ${PORTNAME} +RC_NAME= forked_daapd +SUB_LIST= PORTNAME=${PORTNAME} RC_NAME=${RC_NAME} +SUB_FILES= pkg-message + +USERS= daapd +GROUPS= daapd + +OPTIONS_DEFINE= ALSA ITUNES LASTFM MPD +OPTIONS_DEFAULT=ITUNES LASTFM MPD + +ITUNES_DESC= iTunes XML support +MPD_DESC= Music Player Daemon protocol support + +ALSA_CONFIGURE_WITH= alsa +ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib +ITUNES_CONFIGURE_ENABLE=itunes +ITUNES_LIB_DEPENDS= libplist.so:devel/libplist +LASTFM_CONFIGURE_ENABLE=lastfm +LASTFM_LIB_DEPENDS= libcurl.so:ftp/curl +MPD_CONFIGURE_ENABLE= mpd + +post-patch: +# respect hier(7) +# pkg-plist for @dir(daapd,daapd,700) /var/cache/forked-daapd/libspotify +# pkg-plist for @dir(daapd,daapd,700) /var/cache/forked-daapd + @${REINPLACE_CMD} -e 's@$$(DESTDIR)$$(localstatedir)@${STAGEDIR}/var@' ${WRKSRC}/Makefile.am + +post-install: +# pkg-plist for @sample etc/forked-daapd.conf.sample + @${MV} ${STAGEDIR}${PREFIX}/etc/forked-daapd.conf ${STAGEDIR}${PREFIX}/etc/forked-daapd.conf.sample + +.include Index: audio/forked-daapd/distinfo =================================================================== --- /dev/null +++ audio/forked-daapd/distinfo @@ -0,0 +1,2 @@ +SHA256 (ejurgensen-forked-daapd-24.1_GH0.tar.gz) = 2d0353b318c10dc53928b40010ffeaca1264c8219dff15d715953ded2c3ba73d +SIZE (ejurgensen-forked-daapd-24.1_GH0.tar.gz) = 344140 Index: audio/forked-daapd/files/forked-daapd.in =================================================================== --- /dev/null +++ audio/forked-daapd/files/forked-daapd.in @@ -0,0 +1,35 @@ +#!/bin/sh + +# $FreeBSD$ +# +# PROVIDE: %%PORTNAME%% +# REQUIRE: avahi_daemon dbus +# KEYWORD: shutdown +# +# Add these lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# %%RC_NAME%%_enable (bool): Set to NO by default. +# Set it to YES to enable %%PORTNAME%%. +# %%RC_NAME%%_config (path): Set to %%PREFIX%%/etc/forked-daapd.conf +# by default. +# %%RC_NAME%%_flags (str): Set to "" by default + +. /etc/rc.subr + +name=%%RC_NAME%% +rcvar=${name}_enable + +load_rc_config $name + +: ${%%RC_NAME%%_enable:="NO"} +: ${%%RC_NAME%%_config:="%%PREFIX%%/etc/forked-daapd.conf"} +: ${%%RC_NAME%%_flags:=""} + +pidfile="/var/run/%%PORTNAME%%.pid" +required_files="$%%RC_NAME%%_config" + +command="%%PREFIX%%/sbin/%%PORTNAME%%" +command_args="-P $pidfile -c $%%RC_NAME%%_config $%%RC_NAME%%_flags" + +run_rc_command "$1" Index: audio/forked-daapd/files/pkg-message.in =================================================================== --- /dev/null +++ audio/forked-daapd/files/pkg-message.in @@ -0,0 +1,21 @@ +%%PORTNAME%% uses FFmpeg for transcoding audio playback. +The default ports/pkg build of FFmpeg on FreeBSD has a number +of options which could be SET/UNSET to provide support for +additional audio codecs. + +If you find %%PORTNAME%% does not support the audio codecs you +require, it is recommended to recompile the multimedia/ffmpeg +package from ports with the necessary options ENABLED (SET). + +You should review and edit the %%PORTNAME%% configuration +file %%PREFIX%%/etc/%%PORTNAME%%.conf before first use. + +To automatically start %%PORTNAME%% at boot time: +# sysrc 'dbus_enable=YES' +# sysrc 'avahi_daemon_enable=YES' +# sysrc '%%RC_NAME%%_enable=YES' + +To then manually start %%PORTNAME%% without rebooting: +# service dbus start +# service avahi-daemon start +# service %%PORTNAME%% start Index: audio/forked-daapd/pkg-descr =================================================================== --- /dev/null +++ audio/forked-daapd/pkg-descr @@ -0,0 +1,15 @@ +forked-daapd is a DAAP (iTunes), MPD (Music Player Daemon) and RSP (Roku) media +server. It is a complete rewrite of mt-daapd (Firefly Media Server). + +It has support for AirPlay devices/speakers, Apple Remote (and compatibles), +MPD clients, Chromecast, network streaming, internet radio, Spotify and LastFM. + +It does not support streaming video by AirPlay nor Chromecast. + +DAAP stands for Digital Audio Access Protocol, and is the protocol used +by iTunes and friends to share/stream media libraries over the network. + +RSP is Roku's own media sharing protocol. Roku are the makers of the +SoundBridge devices. + +WWW: http://ejurgensen.github.io/forked-daapd/ Index: audio/forked-daapd/pkg-plist =================================================================== --- /dev/null +++ audio/forked-daapd/pkg-plist @@ -0,0 +1,6 @@ +@sample etc/forked-daapd.conf.sample +lib/forked-daapd/forked-daapd-sqlext.so +man/man8/forked-daapd.8.gz +sbin/forked-daapd +@dir(daapd,daapd,700) /var/cache/forked-daapd/libspotify +@dir(daapd,daapd,700) /var/cache/forked-daapd