diff options
Diffstat (limited to 'media-sound/forked-daapd')
-rw-r--r-- | media-sound/forked-daapd/Manifest | 9 | ||||
-rw-r--r-- | media-sound/forked-daapd/files/antlr-3.5.patch | 81 | ||||
-rw-r--r-- | media-sound/forked-daapd/files/daapd.confd | 11 | ||||
-rw-r--r-- | media-sound/forked-daapd/files/daapd.initd | 31 | ||||
-rw-r--r-- | media-sound/forked-daapd/files/forked-daapd-23.2-fix-arg-enable.patch | 57 | ||||
-rw-r--r-- | media-sound/forked-daapd/forked-daapd-23.2-r1.ebuild | 81 | ||||
-rw-r--r-- | media-sound/forked-daapd/metadata.xml | 23 |
7 files changed, 293 insertions, 0 deletions
diff --git a/media-sound/forked-daapd/Manifest b/media-sound/forked-daapd/Manifest new file mode 100644 index 000000000000..e7943464920a --- /dev/null +++ b/media-sound/forked-daapd/Manifest @@ -0,0 +1,9 @@ +AUX antlr-3.5.patch 1576 SHA256 210a2143403b2bf3b3f9b298b4624818c4e14278d0b1d1fb627f4120c73e07be SHA512 221dc595c39ea312cab8d7afb2fbc56736036b4e2bae31621b621318742abcbae9fde5c8a54540d4b1d6b2fc30a7d4accaf812b43d89ecf50f5dd3a709b0857e WHIRLPOOL cdcbbb86f1a51a9e371155b3eda1c61243c1e50be2c678e60c5f81f578f8e4f90e8796da05074b4a32e815c649205162d9430bff8a133da7407eecfe6e908b9d +AUX daapd.confd 344 SHA256 321e76c102ad09c93c4c88d3cfc19c6c4573306b137c4d5cb1eb8973ccb03439 SHA512 b8e2d1bc61fbaa23d9b99770657fbf3af55a9e6fd39a34af4e90379f5ce883f29458dae48f424b77c3000933932b31106466714838da38e9a159d34af6cbdacc WHIRLPOOL 10715a02cfcab482f450a4a055a05239d44ecc1c98d08e176ae899fdaa37f8f6f33c2f93b630f1adac3b31648cc7c74239fac38ec849f04aa02434ceef157808 +AUX daapd.initd 583 SHA256 80cfe89cb083de05a2671141b98c303d2cd8e7f24beef123195074b8e27cd1d6 SHA512 a584cd71c5673732ac0c31fb92d156f5c480ced066d0686f957d6adf9c769ec234fe46a468077ea6b28efca132336e186fa0adc2200150e9fca11f2800aeb67a WHIRLPOOL 6769966d0a84b6b6330a852dc588d8efa8eeb4c35bd12179e1cccd5bc8e597046b6479c604003536a51048197776fea9ab9280f201a8e94c4e7d80d4dfefa4e4 +AUX forked-daapd-23.2-fix-arg-enable.patch 2272 SHA256 0b79bcc65975370cc24de2fe0d28f7d3cdbaaeae9701703907646bbd3caf6025 SHA512 48768ab213334c2324435a82cb58982100e8467001284bf589816e983982d4916198e659afad1fd7ca8e437c48971fb5ed7eeafcfa0118965d91fac839bfafe4 WHIRLPOOL 86b1aa7c702f4df83cb0303ad5ed2ae467e74636f45f19f4b7d48c1c6dceb425dcb3b4f980c126b3b15a2cb0c61e5359901185f23ce5ab00752af0a02408e5c3 +DIST forked-daapd-23.2.tar.gz 325895 SHA256 8a85dfc479cfb3aeb01f5cec7f782b9eee749121f2d8a2b30932de9fbb31d19c SHA512 11b5c6c16c0c9e20f1c196941cd09602d90b5e2ed0765e4fac25c6aeba388706bd7ede9f6c467227c245f2597466e8658f9db75073ee8b47b16f947514eb1511 WHIRLPOOL 05fd527a3ae57bb3ff3bf11b455bd926ee76d4358a569da674745a6e2b30343a35bc40cc44c90aaa10b70f496ddbf99e0975910b8ab3f759cc43929a0d19119f +EBUILD forked-daapd-23.2-r1.ebuild 1710 SHA256 fe7d95c4a693cef36ecbe63728ea471678b2140ab14b68e05a3720c368a92eda SHA512 dadfdbf217507b5ddff5681d13d6d3f657f3229fbb85599da0ad347a0633b1e09a214241103aa00dc881303d0e6537a5515fcb93dcd0df827e599dd1cd3dc288 WHIRLPOOL 6a4824f0c66b3db5aa2eea594de8c16a15c7731c962bdd74b36a2722162dc8ee787b8da33d3e778e06c6f7aa90604a48a12406bc0f0c0333daac8323bc24e781 +MISC ChangeLog 2983 SHA256 f3e254ba2c5a81a24c6d48c773ff670e7d9ebd69f7c5ec7824975d80d4b8cfac SHA512 262d3f7e02442c464656f3fb5428979295268ec238a978e2f7ba493ef0dad7a1faebdddfbc26fc6c7a753584dbe2daf54e596fe848e1c7cc0dfec71b97eedff8 WHIRLPOOL 29de5aeb8519a997a4e0c55fc81282f8df609f4cc4dc35a2930de58b3022aa85f16e1a750987479cfcc79f7e8c285fdddfbe940b7552a4af2538419f19130db6 +MISC ChangeLog-2015 490 SHA256 9e3931dbe0bb29f0832d73885f66ea47279899869d34e5ba0fc18b6eab666511 SHA512 c89c5ae26861c7994cbec03bb59d672b3f890d2c30c080c4c85151b226b5a908cd0db116d3b5e586e56802d7b0acf6ce9ff05f990eae9972b88211da4d6634f9 WHIRLPOOL d5304b6c77e7872c63b2e561d12521d90b29822254cefcedc5f74ddcd6c137664566b9edbd844922349f2b0a2f57a4ac98a099cef2caed25a8dfd11faa5300ea +MISC metadata.xml 793 SHA256 9638b5bb0caf27603abe8a0c42d0a8d8a3a8e06dca9c734cfa236679b319f2f9 SHA512 43ef73e58b7e999ee49ac1af5fcf1861e19debcad5cb783f3cec5e977badef997be362520932b97e404b39c5578df91b26821289733458cf1125d41572bf4d34 WHIRLPOOL 7020f1d6aa7f7becbdb138b8b88b7cdcdcb7ee961bea047df7f1c4b5ef7f75cd4868b97dc45c39d51f2b229e2d3cf740717fbff7c6ef478018883f2891943237 diff --git a/media-sound/forked-daapd/files/antlr-3.5.patch b/media-sound/forked-daapd/files/antlr-3.5.patch new file mode 100644 index 000000000000..86461f3f0ba5 --- /dev/null +++ b/media-sound/forked-daapd/files/antlr-3.5.patch @@ -0,0 +1,81 @@ +From 7cf35d1e8bb8dedb710e4a60bada2739d60306d0 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Mon, 5 Oct 2015 23:10:45 +0100 +Subject: [PATCH 1/2] Allow ANTLR 3.5 to work + +This involves a harmless backwards-compatible adjustment to the +grammar. I can't explain why this is necessary but this might help. + +http://stackoverflow.com/questions/20057063/follow-set-in-is-undefined-in-generated-parser +--- + src/RSP.g | 34 +++++++++++++++++----------------- + 1 file changed, 17 insertions(+), 17 deletions(-) + +diff --git a/src/RSP.g b/src/RSP.g +index 435de16..6a27536 100644 +--- a/src/RSP.g ++++ b/src/RSP.g +@@ -43,43 +43,43 @@ strcrit : FIELD strop STR -> ^(strop FIELD STR) + | FIELD NOT strop STR -> ^(NOT ^(strop FIELD STR)) + ; + +-strop : EQUAL +- | INCLUDES +- | STARTSW +- | ENDSW ++strop : equal=EQUAL ++ | includes=INCLUDES ++ | startsw=STARTSW ++ | endsw=ENDSW + ; + + intcrit : FIELD intop INT -> ^(intop FIELD INT) + | FIELD NOT intop INT -> ^(NOT ^(intop FIELD INT)) + ; + +-intop : EQUAL +- | LESS +- | GREATER +- | LTE +- | GTE ++intop : equal=EQUAL ++ | less=LESS ++ | greater=GREATER ++ | lte=LTE ++ | gte=GTE + ; + + datecrit: FIELD dateop datespec -> ^(dateop FIELD datespec) + ; + +-dateop : BEFORE +- | AFTER ++dateop : before=BEFORE ++ | after=AFTER + ; + + datespec: dateref + | INT dateintval dateop dateref -> ^(dateop dateref INT dateintval) + ; + +-dateref : DATE +- | TODAY ++dateref : date=DATE ++ | today=TODAY + ; + + dateintval +- : DAY +- | WEEK +- | MONTH +- | YEAR ++ : day=DAY ++ | week=WEEK ++ | month=MONTH ++ | year=YEAR + ; + + QUOTE : '"'; +-- +2.4.3 + diff --git a/media-sound/forked-daapd/files/daapd.confd b/media-sound/forked-daapd/files/daapd.confd new file mode 100644 index 000000000000..8b268509861b --- /dev/null +++ b/media-sound/forked-daapd/files/daapd.confd @@ -0,0 +1,11 @@ +# Set the log level (0-5) +#LOG_LEVEL=2 + +# Specify the log domains. Comma-separated, choose from: config, +# daap, db, httpd, main, mdns, misc, rsp, scan, xcode, event, remote, +# dacp, ffmpeg, artwork, player, raop, laudio, dmap, dbperf, spotify, +# lastfm, cache +#LOG_DOMAINS=main,config + +# ffid to be broadcast in mDNS records +#FFID=homeserver diff --git a/media-sound/forked-daapd/files/daapd.initd b/media-sound/forked-daapd/files/daapd.initd new file mode 100644 index 000000000000..7854bd4cc40e --- /dev/null +++ b/media-sound/forked-daapd/files/daapd.initd @@ -0,0 +1,31 @@ +#!/sbin/openrc-run + +# Override in /etc/conf.d/daapd +LOG_LEVEL=${LOG_LEVEL:-2} +LOG_DOMAINS=${LOG_DOMAINS:-'main,mdns,db,scan'} +FFID=${FFID:-daapd} + +PIDFILE=/var/run/forked-daapd.pid + +depend() { + need avahi-dnsconfd +} + +start() { + ebegin "Starting daapd" + start-stop-daemon --start forked-daapd \ + --pidfile "$PIDFILE" \ + -- \ + -P "$PIDFILE" \ + -d "$LOG_LEVEL" \ + -b "$FFID" \ + -D "$LOG_DOMAINS" + eend $? +} + +stop() { + ebegin "Stopping daapd" + start-stop-daemon --stop forked-daapd \ + --pidfile "$PIDFILE" + eend $? +} diff --git a/media-sound/forked-daapd/files/forked-daapd-23.2-fix-arg-enable.patch b/media-sound/forked-daapd/files/forked-daapd-23.2-fix-arg-enable.patch new file mode 100644 index 000000000000..7c4297ef0e9f --- /dev/null +++ b/media-sound/forked-daapd/files/forked-daapd-23.2-fix-arg-enable.patch @@ -0,0 +1,57 @@ +--- configure.ac.orig 2015-07-20 18:03:12.270584746 -0500 ++++ configure.ac 2015-07-20 18:03:00.050585581 -0500 +@@ -51,25 +51,35 @@ + AC_SYS_LARGEFILE + AC_TYPE_OFF_T + +-AC_ARG_ENABLE(flac, AS_HELP_STRING([--enable-flac], [extract FLAC metadata with libflac (default=no)]), +- use_flac=true; +- CPPFLAGS="${CPPFLAGS} -DFLAC") +- +-AC_ARG_ENABLE(musepack, AS_HELP_STRING([--enable-musepack], [extract Musepack metadata with taglib (default=no)]), +- use_musepack=true; +- CPPFLAGS="${CPPFLAGS} -DMUSEPACK") +- +-AC_ARG_ENABLE(itunes, AS_HELP_STRING([--enable-itunes], [enable iTunes library support (default=no)]), +- use_itunes=true; +- CPPFLAGS="${CPPFLAGS} -DITUNES") +- +-AC_ARG_ENABLE(spotify, AS_HELP_STRING([--enable-spotify], [enable Spotify library support (default=no)]), +- use_spotify=true; +- CPPFLAGS="${CPPFLAGS} -DSPOTIFY") +- +-AC_ARG_ENABLE(lastfm, AS_HELP_STRING([--enable-lastfm], [enable LastFM support (default=no)]), +- use_lastfm=true; +- CPPFLAGS="${CPPFLAGS} -DLASTFM") ++AC_ARG_ENABLE(flac, AS_HELP_STRING([--enable-flac], [extract FLAC metadata with libflac (default=no)])) ++AS_IF([test "x$enable_flac" = "xyes"], [ ++ use_flac=true; ++ CPPFLAGS="${CPPFLAGS} -DFLAC" ++]) ++ ++AC_ARG_ENABLE(musepack, AS_HELP_STRING([--enable-musepack], [extract Musepack metadata with taglib (default=no)])) ++AS_IF([test "x$enable_musepack" = "xyes"], [ ++ use_musepack=true; ++ CPPFLAGS="${CPPFLAGS} -DMUSEPACK" ++]) ++ ++AC_ARG_ENABLE(itunes, AS_HELP_STRING([--enable-itunes], [enable iTunes library support (default=no)])) ++AS_IF([test "x$enable_itunes" = "xyes"], [ ++ use_itunes=true; ++ CPPFLAGS="${CPPFLAGS} -DITUNES" ++]) ++ ++AC_ARG_ENABLE(spotify, AS_HELP_STRING([--enable-spotify], [enable Spotify library support (default=no)])) ++AS_IF([test "x$enable_spotify" = "xyes"], [ ++ use_spotify=true; ++ CPPFLAGS="${CPPFLAGS} -DSPOTIFY" ++]) ++ ++AC_ARG_ENABLE(lastfm, AS_HELP_STRING([--enable-lastfm], [enable LastFM support (default=no)])) ++AS_IF([test "x$enable_lastfm" = "xyes"], [ ++ use_lastfm=true; ++ CPPFLAGS="${CPPFLAGS} -DLASTFM" ++]) + + case "$host" in + *-*-linux-*) diff --git a/media-sound/forked-daapd/forked-daapd-23.2-r1.ebuild b/media-sound/forked-daapd/forked-daapd-23.2-r1.ebuild new file mode 100644 index 000000000000..291b1f091c68 --- /dev/null +++ b/media-sound/forked-daapd/forked-daapd-23.2-r1.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# TODO: +# Add --enable-spotify when it works + +EAPI=5 + +inherit autotools eutils user + +DESCRIPTION="A DAAP (iTunes) media server" +HOMEPAGE="https://github.com/ejurgensen/forked-daapd" +SRC_URI="https://github.com/ejurgensen/forked-daapd/archive/${PV}.tar.gz -> ${P}.tar.gz" +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" +IUSE="alsa flac itunes lastfm mpd musepack" + +# Note: mpd support appears to be standalone, e.g. --enable-mpd doesn't +# result in additional linkage. +RDEPEND=" + dev-db/sqlite:3 + dev-libs/antlr-c:0 + dev-libs/confuse + dev-libs/libevent + dev-libs/libgcrypt:0 + dev-libs/libunistring + dev-libs/mini-xml[threads] + media-libs/alsa-lib + net-dns/avahi[dbus] + virtual/ffmpeg + + flac? ( media-libs/flac ) + itunes? ( app-pda/libplist ) + lastfm? ( net-misc/curl ) + musepack? ( media-libs/taglib ) +" + +DEPEND=" + dev-java/antlr:3.5 + ${RDEPEND} +" + +pkg_setup() { + enewuser daapd + enewgroup daapd +} + +src_prepare() { + # Fixed in 23.3. + epatch "${FILESDIR}/${P}-fix-arg-enable.patch" + + # https://github.com/ejurgensen/forked-daapd/pull/185 + epatch "${FILESDIR}/antlr-3.5.patch" + + eautoreconf +} + +src_configure() { + ac_cv_prog_ANTLR=antlr3.5 \ + econf \ + --with-alsa \ + $(use_enable flac) \ + $(use_enable musepack) \ + $(use_enable itunes) \ + $(use_enable lastfm) \ + $(use_enable mpd) +} + +src_install() { + emake DESTDIR="${D}" install + + newinitd "${FILESDIR}/daapd.initd" daapd + newconfd "${FILESDIR}/daapd.confd" daapd + + # dodir by itself fails in the likely case of /srv/music having a + # volume mounted already. + test -d /srv/music || dodir /srv/music + + fowners -R daapd:daapd /var/lib/cache/forked-daapd +} diff --git a/media-sound/forked-daapd/metadata.xml b/media-sound/forked-daapd/metadata.xml new file mode 100644 index 000000000000..4f9e72da3bf6 --- /dev/null +++ b/media-sound/forked-daapd/metadata.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>stasibear@gentoo.org</email> + <name>Erik Mackdanz</name> + </maintainer> + <longdescription> + This is a much updated version of the original + forked-daapd 0.19 (non-gcd), a Linux/FreeBSD DAAP + (iTunes) media server with support for AirPlay + devices, Apple Remote (and compatibles), Spotify and + internet radio. + </longdescription> + <use> + <flag name="itunes">Enable support for iTunes library XML</flag> + <flag name="lastfm">Enable LastFM scrobbling support</flag> + <flag name="mpd">Enable streaming to mpd</flag> + </use> + <upstream> + <remote-id type="github">ejurgensen/forked-daapd</remote-id> + </upstream> +</pkgmetadata> |