1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-19 00:13:33 +00:00

audio/owntone: DAAP (iTunes), MPD (Music Player Daemon) and RSP (Roku) media server

This commit is contained in:
Dirk Meyer 2023-02-01 20:10:03 +01:00
parent 85faac2f4c
commit 17e9a151d8
8 changed files with 193 additions and 1 deletions

2
MOVED
View File

@ -17407,7 +17407,7 @@ multimedia/mpeg_play||2022-06-30|Has expired: Obsolete, please consider using mu
multimedia/mpeg_stat||2022-06-30|Has expired: Obsolete, please consider using multimedia/mediainfo or multimedia/ffmpeg
multimedia/qt-faststart||2022-06-30|Has expired: Obsolete, please consider using multimedia/Bento4, multimedia/gpac-mp4box or multimedia/ffmpeg
multimedia/spigot||2022-06-30|Has expired: Deprecated hardware, released in the early 90s
audio/forked-daapd||2022-06-30|Has expired: Deprecated upstream, project is now called OwnTone
audio/forked-daapd|audio/owntone|2022-06-30|Has expired: Deprecated upstream, project is now called OwnTone
multimedia/tstools||2022-06-30|Has expired: Obsolete, please consider using multimedia/ffmpeg
multimedia/sabbu||2022-06-30|Has expired: please consider using multimedia/aegisub
multimedia/avinfo||2022-06-30|Has expired: Last release in 2008, please consider using multimedia/mediainfo or multimedia/ffmpeg instead

View File

@ -559,6 +559,7 @@
SUBDIR += osd-lyrics
SUBDIR += osdmixer
SUBDIR += oss
SUBDIR += owntone
SUBDIR += p5-Audio-CD
SUBDIR += p5-Audio-Ecasound
SUBDIR += p5-Audio-FLAC-Header

71
audio/owntone/Makefile Normal file
View File

@ -0,0 +1,71 @@
PORTNAME= owntone
DISTVERSION= 28.5
PORTREVISION= 0
CATEGORIES= audio
MASTER_SITES= https://github.com/owntone/owntone-server/releases/download/${DISTVERSION}/
MAINTAINER= dinoex@FreeBSD.org
COMMENT= DAAP (iTunes), MPD (Music Player Daemon) and RSP (Roku) media server
WWW= https://github.com/owntone/owntone-server
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libantlr3c.so:devel/libantlr3c \
libavahi-client.so:net/avahi-app \
libavcodec.so:multimedia/ffmpeg \
libconfuse.so:devel/libconfuse \
libcurl.so:ftp/curl \
libevent_pthreads.so:devel/libevent \
libgcrypt.so:security/libgcrypt \
libgpg-error.so:security/libgpg-error \
libjson-c.so:devel/json-c \
libinotify.so:devel/libinotify \
libmxml.so:textproc/mxml \
libplist-2.0.so:devel/libplist \
libsodium.so:security/libsodium \
libunistring.so:devel/libunistring \
libwebsockets.so:net/libwebsockets \
libprotobuf-c.so:devel/protobuf-c \
libuuid.so:misc/e2fsprogs-libuuid
USES= tar:xz localbase libtool iconv:wchar_t pkgconfig gnome gmake gperf \
sqlite gnome pathfix
USE_GNOME= libxml2
GNU_CONFIGURE= yes
USE_RC_SUBR= ${PORTNAME}
SUB_FILES= pkg-message
USERS= daapd
GROUPS= daapd
OPTIONS_DEFINE= ALSA ITUNES MPD PULSEAUDIO NLS DOCS
OPTIONS_DEFAULT= ITUNES MPD NLS DOCS
ITUNES_DESC= iTunes XML support
MPD_DESC= Music Player Daemon protocol support
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib
ALSA_CONFIGURE_WITH= alsa
ITUNES_CONFIGURE_ENABLE= itunes
MPD_CONFIGURE_ENABLE= mpd
PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio
PULSEAUDIO_CONFIGURE_WITH= pulseaudio
NLS_USES= gettext-runtime
NLS_CONFIGURE_ENABLE= nls
post-install:
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/owntone/owntone-sqlext.so
${RM} ${STAGEDIR}${PREFIX}/etc/systemd/system/owntone.service
${MV} ${STAGEDIR}${PREFIX}/etc/owntone.conf \
${STAGEDIR}${PREFIX}/etc/owntone.conf.sample
${REINPLACE_CMD} -i '' -e 's|uid = "owntone"|uid = "daapd"|' \
${STAGEDIR}${PREFIX}/etc/owntone.conf.sample
.include <bsd.port.mk>

3
audio/owntone/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1674999426
SHA256 (owntone-28.5.tar.xz) = c9ee0152dc488f782a25a68e72d24c109882bef3dd2914315fe499c8415fd898
SIZE (owntone-28.5.tar.xz) = 1057644

View File

@ -0,0 +1,33 @@
#!/bin/sh
# PROVIDE: owntone
# REQUIRE: avahi_daemon dbus
# KEYWORD: shutdown
#
# Add these lines to /etc/rc.conf.local or /etc/rc.conf
# to enable this service:
#
# owntone_enable (bool): Set to NO by default.
# Set it to YES to enable owntone.
# owntone_config (path): Set to %%PREFIX%%/etc/owntone.conf
# by default.
# owntone_flags (str): Set to "" by default
. /etc/rc.subr
name=owntone
rcvar=${name}_enable
load_rc_config $name
: ${owntone_enable:="NO"}
: ${owntone_config:="%%PREFIX%%/etc/owntone.conf"}
: ${owntone_flags:=""}
pidfile="/var/run/owntone.pid"
required_files="$owntone_config"
command="%%PREFIX%%/sbin/owntone"
command_args="-P $pidfile -c $owntone_config $owntone_flags"
run_rc_command "$1"

View File

@ -0,0 +1,27 @@
[
{ type: install
message: <<EOM
owntone 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 owntone 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 owntone configuration
file %%PREFIX%%/etc/owntone.conf before first use.
To automatically start owntone at boot time:
# sysrc 'dbus_enable=YES'
# sysrc 'avahi_daemon_enable=YES'
# sysrc 'owntone_enable=YES'
To then manually start owntone without rebooting:
# service dbus start
# service avahi-daemon start
# service owntone start
EOM
}
]

11
audio/owntone/pkg-descr Normal file
View File

@ -0,0 +1,11 @@
OwnTone is a DAAP (iTunes), MPD (Music Player Daemon) and RSP (Roku) media
server. It supports 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 which is the protocol used by
iTunes and friends to share/stream media libraries over the network.
OwnTone was previously called forked-daapd, which again was a rewrite of
mt-daapd (Firefly Media Server).

46
audio/owntone/pkg-plist Normal file
View File

@ -0,0 +1,46 @@
@sample etc/owntone.conf.sample
etc/systemd/system/owntone@.service
lib/owntone/owntone-sqlext.so
man/man8/owntone.8.gz
sbin/owntone
%%PORTDOCS%%%%DOCSDIR%%/README.md
%%PORTDOCS%%%%DOCSDIR%%/UPGRADING
%%PORTDOCS%%%%DOCSDIR%%/docs/advanced/multiple-instances.md
%%PORTDOCS%%%%DOCSDIR%%/docs/advanced/outputs-alsa.md
%%PORTDOCS%%%%DOCSDIR%%/docs/advanced/outputs-pulse.md
%%PORTDOCS%%%%DOCSDIR%%/docs/advanced/radio-streams.md
%%PORTDOCS%%%%DOCSDIR%%/docs/advanced/remote-access.md
%%PORTDOCS%%%%DOCSDIR%%/docs/artwork.md
%%PORTDOCS%%%%DOCSDIR%%/docs/clients/cli.md
%%PORTDOCS%%%%DOCSDIR%%/docs/clients/mpd.md
%%PORTDOCS%%%%DOCSDIR%%/docs/clients/remote.md
%%PORTDOCS%%%%DOCSDIR%%/docs/clients/supported-clients.md
%%PORTDOCS%%%%DOCSDIR%%/docs/clients/web-interface.md
%%PORTDOCS%%%%DOCSDIR%%/docs/getting-started.md
%%PORTDOCS%%%%DOCSDIR%%/docs/index.md
%%PORTDOCS%%%%DOCSDIR%%/docs/installation.md
%%PORTDOCS%%%%DOCSDIR%%/docs/integrations/lastfm.md
%%PORTDOCS%%%%DOCSDIR%%/docs/integrations/spotify.md
%%PORTDOCS%%%%DOCSDIR%%/docs/json-api.md
%%PORTDOCS%%%%DOCSDIR%%/docs/library.md
%%PORTDOCS%%%%DOCSDIR%%/docs/outputs/airplay.md
%%PORTDOCS%%%%DOCSDIR%%/docs/outputs/chromecast.md
%%PORTDOCS%%%%DOCSDIR%%/docs/outputs/local-audio.md
%%PORTDOCS%%%%DOCSDIR%%/docs/outputs/streaming.md
%%PORTDOCS%%%%DOCSDIR%%/docs/playlists.md
%%PORTDOCS%%%%DOCSDIR%%/docs/smart-playlists.md
%%PORTDOCS%%%%DOCSDIR%%/scripts/pairinghelper.sh
%%DATADIR%%/htdocs/android-chrome-192x192.png
%%DATADIR%%/htdocs/android-chrome-512x512.png
%%DATADIR%%/htdocs/apple-touch-icon.png
%%DATADIR%%/htdocs/assets/index.css
%%DATADIR%%/htdocs/assets/index.js
%%DATADIR%%/htdocs/browserconfig.xml
%%DATADIR%%/htdocs/favicon-16x16.png
%%DATADIR%%/htdocs/favicon-32x32.png
%%DATADIR%%/htdocs/favicon.ico
%%DATADIR%%/htdocs/index.html
%%DATADIR%%/htdocs/mstile-150x150.png
%%DATADIR%%/htdocs/safari-pinned-tab.svg
%%DATADIR%%/htdocs/site.webmanifest
@dir(daapd,daapd,700) /var/cache/owntone