diff options
Diffstat (limited to 'media-sound/mpd')
-rw-r--r-- | media-sound/mpd/Manifest | 2 | ||||
-rw-r--r-- | media-sound/mpd/mpd-0.21.4.ebuild | 298 |
2 files changed, 300 insertions, 0 deletions
diff --git a/media-sound/mpd/Manifest b/media-sound/mpd/Manifest index 5177a40a047a..02bc1ca7defa 100644 --- a/media-sound/mpd/Manifest +++ b/media-sound/mpd/Manifest @@ -4,6 +4,8 @@ AUX mpd-0.20.4.init 681 BLAKE2B 36f48fe4f2432f659c455e75c3e6a773e7d49b9194fea75c AUX mpd-0.21.1.logrotate 120 BLAKE2B 2111ba897a77a766adf0827c4da7132d5315c7c13ba8e29d582f1030a902492945b0bad6781bbf551e83afd38b957e953215674c669aa2745c1dfa004b20d4b6 SHA512 4a610d4805c32989673d6295fdf4290dc29b11e5b5f3baa2aa957ef9334566f13fa1937e70dc6fe414277e6a026442e4c7e4b406aaf424b96b392da0200ec732 DIST mpd-0.20.21.tar.xz 800476 BLAKE2B 0c807ae8d79abd9400aa417b516c709073b23390aeed2b385c716e20f8c4f93376a235b54fe5f5cfcd451b04c76e105b41acbd180d294281432d4d1b6a427a15 SHA512 d44fb326ea6213ecf46721ca81efdfffaec4faa5a66e627185fd5ab7c4f0c5a380f4d04aed5c2909746a37b33987cb61f62dc2d747365da06629fbb78bf7c7d6 DIST mpd-0.21.3.tar.xz 664992 BLAKE2B 42e2bef46f4eb99e43c4078373dab4301cafa3062459abfed08e9f4b448a1fcfaa40da5a53941b49b426abecf2f31278fdb0857293b24156fa77845c56cbd095 SHA512 c6ce513ea641d026594cd7ae6e9051bd0060e45f5839d89b350ba144cc9094a8e1490052df4d024cbc92d88680ee8e8bae14fc8037431394771018a75c3ee3d7 +DIST mpd-0.21.4.tar.xz 663648 BLAKE2B c9226d2b02b1035091d3af535c269aec3fead779bf17d95b858706affb84089ca85250452884ed5ee96008724735abf80cdfa4d2de14d9928748284d753a4638 SHA512 454fde206f98f89a58ac773037963ac895ee6ce3e7d1032c49b980a3bfbbb69782a62900a5c09e4b39f24b2d1bcd380d7b520935563dd3b8d02f701389389ca7 EBUILD mpd-0.20.21-r1.ebuild 7308 BLAKE2B a4579b515ea1904f2973f5b424f205cc08286aec7e516c33ba3aa035c2fca93117c8ede03818d3534a7cedba6b547fb1320039771f000a989ba218a60dcb7b87 SHA512 f7601f95f10158f112a65ac7625840f5a199bb349323c662dc6477e7a9b1498a593bff8cff289c1a37b78ebb80647136e843f8816bf77a5d7e1b8a0fc1624d66 EBUILD mpd-0.21.3.ebuild 8234 BLAKE2B a0f7578c2062368f60916d22c4b403fe192e1048bba733a9f17bed900bccc20f86dae23e1241d7ee84acc5a4cadd7ba7a40b397b536c6e85a6ffa242812c8464 SHA512 254d6ec58bca9086aed9c3bb0b858bcf4fabd74e4cd4a4a991e0a7a61a0839d31cf50cd997e4d5b7ce71817521b83c518cb6390a798552959577ff5c3a4c854f +EBUILD mpd-0.21.4.ebuild 8234 BLAKE2B e26601d1a2bba280083324b70b86ce7d52a81d91b94482120ca26f2f3390161d7c6c1b7faff64e7d891da671bb71223e621db026e6f99bff31bb34d911f212a5 SHA512 f2cd49afa96fe36502b3a03d105799209f7cd39bb20ed58b9f181eb8c454d71d0b917de8f5f41fdc421b1f7e94187ad4a534d00bd502d20a863c336dc71ba875 MISC metadata.xml 2537 BLAKE2B ac6bd3cee50be9327da28245f1ab8e0c64aec6af07f09cd62cf1e1f2e55e2e58e3168406250a83d404b564c33ae63450497a0c5d553c737f9637919b737e899b SHA512 20a7a662078ae05362f4109e574e1b6bb1e0cc085f24695c3fc885e2b4b3616fabcb21a9f376b7c1c09874ec7b108683467ea3644c9bed18610e8b5684a2383a diff --git a/media-sound/mpd/mpd-0.21.4.ebuild b/media-sound/mpd/mpd-0.21.4.ebuild new file mode 100644 index 000000000000..e93c903ec20c --- /dev/null +++ b/media-sound/mpd/mpd-0.21.4.ebuild @@ -0,0 +1,298 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit flag-o-matic linux-info meson systemd user + +MESON_AUTO_DEPEND="no" + +DESCRIPTION="The Music Player Daemon (mpd)" +HOMEPAGE="https://www.musicpd.org https://github.com/MusicPlayerDaemon/MPD" +SRC_URI="https://www.musicpd.org/download/${PN}/${PV%.*}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sh ~x86 ~x86-fbsd ~x64-macos" +IUSE="adplug +alsa ao audiofile bzip2 cdio chromaprint +cue +curl +dbus debug + +eventfd expat faad +ffmpeg +fifo flac fluidsynth gme +icu +id3tag +inotify + +ipv6 jack lame libav libmpdclient libsamplerate libsoxr +mad mikmod mms + modplug mpg123 musepack +network nfs openal opus oss pipe pulseaudio qobuz + recorder samba selinux sid signalfd sndfile soundcloud sqlite systemd tcpd + test tidal twolame udisks unicode vorbis wavpack webdav wildmidi upnp + zeroconf zip zlib" + +OUTPUT_PLUGINS="alsa ao fifo jack network openal oss pipe pulseaudio recorder" +DECODER_PLUGINS="adplug audiofile faad ffmpeg flac fluidsynth mad mikmod + modplug mpg123 musepack flac sid vorbis wavpack wildmidi" +ENCODER_PLUGINS="audiofile flac lame twolame vorbis" + +REQUIRED_USE=" + || ( ${OUTPUT_PLUGINS} ) + || ( ${DECODER_PLUGINS} ) + network? ( || ( ${ENCODER_PLUGINS} ) ) + recorder? ( || ( ${ENCODER_PLUGINS} ) ) + upnp? ( expat ) + webdav? ( curl expat ) + " + +RESTRICT="!test? ( test )" + +RDEPEND=" + adplug? ( media-libs/adplug:= ) + alsa? ( + media-libs/alsa-lib + media-sound/alsa-utils + ) + + ao? ( media-libs/libao[alsa?,pulseaudio?] ) + audiofile? ( media-libs/audiofile:= ) + + cdio? ( + dev-libs/libcdio:= + dev-libs/libcdio-paranoia + ) + + chromaprint? ( media-libs/chromaprint ) + curl? ( net-misc/curl ) + dbus? ( sys-apps/dbus ) + expat? ( dev-libs/expat ) + faad? ( media-libs/faad2 ) + + ffmpeg? ( + libav? ( media-video/libav:0= ) + !libav? ( media-video/ffmpeg:0= ) + ) + + flac? ( media-libs/flac ) + fluidsynth? ( media-sound/fluidsynth ) + gme? ( >=media-libs/game-music-emu-0.6.0_pre20120802 ) + icu? ( dev-libs/icu:= ) + id3tag? ( media-libs/libid3tag ) + jack? ( virtual/jack ) + lame? ( network? ( media-sound/lame ) ) + libmpdclient? ( media-libs/libmpdclient ) + libsamplerate? ( media-libs/libsamplerate ) + libsoxr? ( media-libs/soxr ) + mad? ( media-libs/libmad ) + mikmod? ( media-libs/libmikmod ) + mms? ( media-libs/libmms ) + modplug? ( media-libs/libmodplug ) + mpg123? ( media-sound/mpg123 ) + musepack? ( media-sound/musepack-tools ) + network? ( media-libs/libshout ) + nfs? ( net-fs/libnfs ) + openal? ( media-libs/openal ) + opus? ( media-libs/opus ) + pulseaudio? ( media-sound/pulseaudio ) + qobuz? ( dev-libs/libgcrypt:0 ) + samba? ( net-fs/samba ) + selinux? ( sec-policy/selinux-mpd ) + sid? ( || ( + media-libs/libsidplay:2 + media-libs/libsidplayfp + ) ) + sndfile? ( media-libs/libsndfile ) + soundcloud? ( >=dev-libs/yajl-2:= ) + sqlite? ( dev-db/sqlite:3 ) + systemd? ( sys-apps/systemd ) + tcpd? ( sys-apps/tcp-wrappers ) + twolame? ( media-sound/twolame ) + udisks? ( sys-fs/udisks:2 ) + upnp? ( net-libs/libupnp:0 ) + vorbis? ( media-libs/libvorbis ) + wavpack? ( media-sound/wavpack ) + wildmidi? ( media-sound/wildmidi ) + zeroconf? ( net-dns/avahi[dbus] ) + zip? ( dev-libs/zziplib ) + zlib? ( sys-libs/zlib:= )" + +DEPEND="${RDEPEND} + >=dev-libs/boost-1.58:= + test? ( dev-cpp/gtest )" + +BDEPEND=">dev-util/meson-0.47.1 + virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${PN}-0.18.conf.patch +) + +pkg_setup() { + enewuser mpd "" "" "/var/lib/mpd" audio + + if use eventfd; then + CONFIG_CHECK+=" ~EVENTFD" + ERROR_EVENTFD="${P} requires eventfd in-kernel support." + fi + + if use signalfd; then + CONFIG_CHECK+=" ~SIGNALFD" + ERROR_SIGNALFD="${P} requires signalfd in-kernel support." + fi + + if use inotify; then + CONFIG_CHECK+=" ~INOTIFY_USER" + ERROR_INOTIFY_USER="${P} requires inotify in-kernel support." + fi + + if use eventfd || use signalfd || use inotify; then + linux-info_pkg_setup + fi + + elog "If you will be starting mpd via /etc/init.d/mpd, please make + sure that MPD's pid_file is _set_." +} + +src_prepare() { + cp -f doc/mpdconf.example doc/mpdconf.dist || die "cp failed" + default +} + +src_configure() { + local emesonargs=( + -Dbzip2=$(usex bzip2 enabled disabled) + -Dcdio_paranoia=$(usex cdio enabled disabled) + -Dchromaprint=$(usex chromaprint enabled disabled) + -Dcue=$(usex cue true false) + -Dcurl=$(usex curl enabled disabled) + -Ddbus=$(usex dbus enabled disabled) + -Ddebug=$(usex debug true false) + -Deventfd=$(usex eventfd true false) + -Dexpat=$(usex expat enabled disabled) + -Dicu=$(usex icu enabled disabled) + -Did3tag=$(usex id3tag enabled disabled) + -Dinotify=$(usex inotify true false) + -Dipv6=$(usex ipv6 enabled disabled) + -Diso9660=$(usex cdio enabled disabled) + -Dlibmpdclient=$(usex libmpdclient enabled disabled) + -Dlibsamplerate=$(usex libsamplerate enabled disabled) + -Dlibwrap=$(usex tcpd enabled disabled) + -Dmms=$(usex mms enabled disabled) + -Dnfs=$(usex nfs enabled disabled) + -Dsignalfd=$(usex signalfd true false) + -Dsmbclient=$(usex samba enabled disabled) + -Dsoxr=$(usex libsoxr enabled disabled) + -Dsqlite=$(usex sqlite enabled disabled) + -Dsystemd=$(usex systemd enabled disabled) + -Dtest=$(usex test true false) + -Dudisks=$(usex udisks enabled disabled) + -Dupnp=$(usex upnp enabled disabled) + -Dwebdav=$(usex webdav enabled disabled) + -Dzeroconf=$(usex zeroconf avahi disabled) + -Dzlib=$(usex zlib enabled disabled) + -Dzzip=$(usex zip enabled disabled) + ) + + emesonargs+=( + -Dalsa=$(usex alsa enabled disabled) + -Dao=$(usex ao enabled disabled) + -Dfifo=$(usex fifo true false) + -Djack=$(usex jack enabled disabled) + -Dopenal=$(usex openal enabled disabled) + -Doss=$(usex oss enabled disabled) + -Dpipe=$(usex pipe true false) + -Dpulse=$(usex pulseaudio enabled disabled) + -Drecorder=$(usex recorder true false) + ) + + if use samba || use upnp; then + emesonargs+=( -Dneighbor=true ) + fi + + append-lfs-flags + append-ldflags "-L/usr/$(get_libdir)/sidplay/builders" + + if use network; then + + emesonargs+=( + -Dshine=disabled + -Dshout=enabled + -Dvorbisenc=$(usex vorbis enabled disabled) + -Dhttpd=true + -Dlame=$(usex lame enabled disabled) + -Dtwolame=$(usex twolame enabled disabled) + -Dwave_encoder=$(usex audiofile true false) + ) + fi + + emesonargs+=( + -Dadplug=$(usex adplug enabled disabled) + -Daudiofile=$(usex audiofile enabled disabled) + -Dfaad=$(usex faad enabled disabled) + -Dffmpeg=$(usex ffmpeg enabled disabled) + -Dflac=$(usex flac enabled disabled) + -Dfluidsynth=$(usex fluidsynth enabled disabled) + -Dgme=$(usex gme enabled disabled) + -Dmad=$(usex mad enabled disabled) + -Dmikmod=$(usex mikmod enabled disabled) + -Dmodplug=$(usex modplug enabled disabled) + -Dmpcdec=$(usex musepack enabled disabled) + -Dmpg123=$(usex mpg123 enabled disabled) + -Dopus=$(usex opus enabled disabled) + -Dsidplay=$(usex sid enabled disabled) + -Dsndfile=$(usex sndfile enabled disabled) + -Dvorbis=$(usex vorbis enabled disabled) + -Dwavpack=$(usex wavpack enabled disabled) + -Dwildmidi=$(usex wildmidi enabled disabled) + + ) + + emesonargs+=( + -Dqobuz=$(usex qobuz enabled disabled) + -Dsoundcloud=$(usex soundcloud enabled disabled) + -Dtidal=$(usex tidal enabled disabled) + ) + + emesonargs+=( + --libdir="/usr/$(get_libdir)" + -Ddocumentation=false + -Dsndio=disabled #not yet in the tree + -Dsolaris_output=disabled + + -Ddatabase=true + -Ddsd=true + -Dtcp=true + + -Dsystemd_system_unit_dir="$(systemd_get_systemunitdir)" + -Dsystemd_user_unit_dir="$(systemd_get_userunitdir)" + ) + + if use icu; then + emesonargs+=( -Diconv=enabled ) + else + emesonargs+=( -Diconv=disabled ) + fi + + meson_src_configure +} + +src_install() { + meson_src_install + + insinto /etc + newins doc/mpdconf.dist mpd.conf + + insinto /etc/logrotate.d + newins "${FILESDIR}"/${PN}-0.21.1.logrotate ${PN} + + newinitd "${FILESDIR}"/${PN}-0.20.4.init ${PN} + + if use unicode; then + sed -i -e 's:^#filesystem_charset.*$:filesystem_charset "UTF-8":' \ + "${ED}"/etc/mpd.conf || die "sed failed" + fi + + doman doc/mpd.1 + doman doc/mpd.conf.5 + + keepdir /var/lib/mpd + keepdir /var/lib/mpd/music + keepdir /var/lib/mpd/playlists + +} + +pkg_postinst() { + # also change the homedir if the user has existed before + usermod -d "/var/lib/mpd" mpd || die "usermod failed" +} |