summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound/beets')
-rw-r--r--media-sound/beets/Manifest2
-rw-r--r--media-sound/beets/beets-1.3.13.ebuild89
-rw-r--r--media-sound/beets/beets-1.3.3-r1.ebuild87
-rw-r--r--media-sound/beets/metadata.xml57
4 files changed, 235 insertions, 0 deletions
diff --git a/media-sound/beets/Manifest b/media-sound/beets/Manifest
new file mode 100644
index 000000000000..f7bae6deb3d6
--- /dev/null
+++ b/media-sound/beets/Manifest
@@ -0,0 +1,2 @@
+DIST beets-1.3.13.tar.gz 1269748 SHA256 6d973c3484079b22b7d281f771a97c03f9bb14bdd94f45b673f9d754875b2c59 SHA512 ffee7e16a115f16c26ab07a75e614746cd5871a7311660d37978deff34245f3aeab97b1a453fc0900442f40e6ac7d102c5adfce910edfec78387fc149fbea261 WHIRLPOOL 79b345612b04965aa6d4b7cc819d7ed1942b5686bf3990612f2c243dc47a2cfc3f15550f97ee30502ce42f4c24cf2ade27e9db6393f40022ffedf6842f4dc05c
+DIST beets-1.3.3.tar.gz 679050 SHA256 028e08b7bab2f9c14063f318e617fa82716410170753d6b2dbe8471a8bb1975e SHA512 0e715b4d042a96c5c521f8acc12c481baad11fb9ff2b825984f6f46a1ed6dea876000fde292851292c4466e9df93ec0439d2c0f57241174014ffbb46225792ab WHIRLPOOL 6999973bb1cafa6c211ef2c709062dc322437574a874e3997319542b65c677525365c94eb9d2fcac403e0c6e59440e8beb3e50558204d216025981418fdf6e3c
diff --git a/media-sound/beets/beets-1.3.13.ebuild b/media-sound/beets/beets-1.3.13.ebuild
new file mode 100644
index 000000000000..fd072c6b0f52
--- /dev/null
+++ b/media-sound/beets/beets-1.3.13.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="sqlite"
+inherit distutils-r1 eutils
+
+MY_PV=${PV/_beta/-beta.}
+MY_P=${PN}-${MY_PV}
+
+DESCRIPTION="A media library management system for obsessive-compulsive music geeks"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+HOMEPAGE="http://beets.radbox.org/ http://pypi.python.org/pypi/beets"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+LICENSE="MIT"
+IUSE="bpd chroma convert doc discogs echonest flac gstreamer lastgenre mpdstats
+ ogg opus replaygain test web"
+
+RDEPEND=">=dev-python/enum34-1.0.4[${PYTHON_USEDEP}]
+ dev-python/jellyfish[${PYTHON_USEDEP}]
+ dev-python/munkres[${PYTHON_USEDEP}]
+ >=dev-python/python-musicbrainz-ngs-0.4[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/unidecode[${PYTHON_USEDEP}]
+ >=media-libs/mutagen-1.27[${PYTHON_USEDEP}]
+ bpd? ( dev-python/bluelet[${PYTHON_USEDEP}] )
+ chroma? ( dev-python/pyacoustid[${PYTHON_USEDEP}] )
+ convert? ( media-video/ffmpeg:0[encode] )
+ discogs? ( dev-python/discogs-client[${PYTHON_USEDEP}] )
+ doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
+ echonest? ( >=dev-python/pyechonest-8.0.1[${PYTHON_USEDEP}] )
+ mpdstats? ( dev-python/python-mpd[${PYTHON_USEDEP}] )
+ lastgenre? ( dev-python/pylast[${PYTHON_USEDEP}] )
+ replaygain? (
+ gstreamer? ( media-libs/gstreamer:1.0[introspection]
+ media-libs/gst-plugins-good:1.0
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ ogg? ( media-plugins/gst-plugins-ogg )
+ flac? ( media-plugins/gst-plugins-flac:1.0 )
+ opus? ( media-plugins/gst-plugins-opus:1.0 ) )
+ !gstreamer? ( || ( media-sound/mp3gain
+ media-sound/aacgain ) ) )
+ web? ( dev-python/flask[${PYTHON_USEDEP}] )"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ # remove plugins that do not have appropriate dependencies installed
+ for flag in bpd chroma convert discogs echonest lastgenre mpdstats replaygain web; do
+ if ! use ${flag}; then
+ rm -r beetsplug/${flag}.py || \
+ rm -r beetsplug/${flag}/ ||
+ die "Unable to remove ${flag} plugin"
+ fi
+ done
+
+ for flag in bpd lastgenre web; do
+ if ! use ${flag}; then
+ sed -e "s:'beetsplug.${flag}',::" -i setup.py || \
+ die "Unable to disable ${flag} plugin "
+ fi
+ done
+
+ use bpd || rm -f test/test_player.py
+
+}
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_test() {
+ cd test
+ if ! use web; then
+ rm test_web.py || die "Failed to remove test_web.py"
+ fi
+ "${PYTHON}" testall.py || die "Testsuite failed"
+}
+
+python_install_all() {
+ doman man/beet.1 man/beetsconfig.5
+ use doc && dohtml -r docs/_build/html/
+}
diff --git a/media-sound/beets/beets-1.3.3-r1.ebuild b/media-sound/beets/beets-1.3.3-r1.ebuild
new file mode 100644
index 000000000000..e27ad390bc2e
--- /dev/null
+++ b/media-sound/beets/beets-1.3.3-r1.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1 eutils
+
+MY_PV=${PV/_beta/-beta.}
+MY_P=${PN}-${MY_PV}
+
+DESCRIPTION="A media library management system for obsessive-compulsive music geeks"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+HOMEPAGE="http://beets.radbox.org/ http://pypi.python.org/pypi/beets"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+LICENSE="MIT"
+IUSE="beatport bpd chroma convert doc discogs echonest echonest_tempo lastgenre mpdstats replaygain test web"
+
+RDEPEND="
+ dev-python/munkres[${PYTHON_USEDEP}]
+ >=dev-python/python-musicbrainz-ngs-0.4[${PYTHON_USEDEP}]
+ dev-python/unidecode[${PYTHON_USEDEP}]
+ >=media-libs/mutagen-1.22[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ beatport? ( dev-python/requests[${PYTHON_USEDEP}] )
+ bpd? ( dev-python/bluelet[${PYTHON_USEDEP}] )
+ chroma? ( dev-python/pyacoustid[${PYTHON_USEDEP}] )
+ convert? ( media-video/ffmpeg:0[encode] )
+ discogs? ( dev-python/discogs-client[${PYTHON_USEDEP}] )
+ doc? ( dev-python/sphinx )
+ echonest? ( dev-python/pyechonest[${PYTHON_USEDEP}] )
+ echonest_tempo? ( dev-python/pyechonest[${PYTHON_USEDEP}] )
+ mpdstats? ( dev-python/python-mpd[${PYTHON_USEDEP}] )
+ lastgenre? ( dev-python/pylast[${PYTHON_USEDEP}] )
+ replaygain? ( || ( media-sound/mp3gain media-sound/aacgain ) )
+ web? ( dev-python/flask[${PYTHON_USEDEP}] )
+"
+
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ # remove plugins that do not have appropriate dependencies installed
+ for flag in beatport bpd chroma convert discogs echonest echonest_tempo lastgenre \
+ mpdstats replaygain web;do
+ if ! use $flag ; then
+ rm -r beetsplug/${flag}.py || \
+ rm -r beetsplug/${flag}/ ||
+ die "Unable to remove $flag plugin"
+ fi
+ done
+
+ for flag in bpd lastgenre web;do
+ if ! use $flag ; then
+ sed -i "s:'beetsplug.$flag',::" setup.py || \
+ die "Unable to disable $flag plugin "
+ fi
+ done
+
+ use bpd || rm -f test/test_player.py
+
+}
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_test() {
+ cd test
+ if ! use web;then
+ rm test_web.py || die "Failed to remove test_web.py"
+ fi
+ "${PYTHON}" testall.py || die "Testsuite failed"
+}
+
+python_install_all() {
+ doman man/beet.1 man/beetsconfig.5
+
+ use doc && dohtml -r docs/_build/html/
+}
diff --git a/media-sound/beets/metadata.xml b/media-sound/beets/metadata.xml
new file mode 100644
index 000000000000..006bd4cd2f50
--- /dev/null
+++ b/media-sound/beets/metadata.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>sound@gentoo.org</email>
+ </maintainer>
+ <longdescription lang="en">
+ The purpose of beets is to get your music collection right once and for
+ all. It catalogs your collection, automatically improving its metadata as
+ it goes using the MusicBrainz database. (It also downloads cover art for
+ albums it imports.) Then it provides a bouquet of tools for manipulating
+ and accessing your music.
+
+ Because beets is designed as a library, it can do almost anything you can
+ imagine for your music collection. Via plugins, beets becomes a panacea:
+ * Embed and extract album art from files’ tags.
+ * Listen to your library with a music player that speaks the MPD protocol
+ and works with a staggering variety of interfaces.
+ * Fetch lyrics for all your songs from databases on the Web.
+ * Manage your MusicBrainz music collection.
+ * Analyze music files’ metadata from the command line.
+ * Clean up crufty tags left behind by other, less-awesome tools.
+ * Browse your music library graphically through a Web browser and play it
+ in any browser that supports HTML5 Audio.
+
+ If beets doesn’t do what you want yet, writing your own plugin is
+ shockingly simple if you know a little Python.
+ </longdescription>
+ <use>
+ <flag name="beatport">Enable support for beatport.com API</flag>
+ <flag name="bpd">
+ Enable support for <pkg>media-sound/mpd</pkg> server emulation
+ </flag>
+ <flag name="chroma">Enable support for acoustic fingerprinting plugin using
+ <pkg>media-libs/chromaprint</pkg></flag>
+ <flag name="convert">Enable support for the convert plugin which makes it
+ possible to transcode files</flag>
+ <flag name="discogs">Enable support for the discogs API plugin</flag>
+ <flag name="echonest_tempo">Enable support for writing the BPM of a track
+ into its metadata</flag>
+ <flag name="echonest">Enable support for fetching and storing acoustic
+ attributes of a track from Echo Nest</flag>
+ <flag name="lastgenre">Enable support for importing music genres from
+ last.fm tags</flag>
+ <flag name="mpdstats">Enable support for collecting statistic about
+ listening habits from <pkg>media-sound/mpd</pkg></flag>
+ <flag name="opus">Enable opus support in gstreamer-based replaygain</flag>
+ <flag name="replaygain">Enable support for Replay Gain metadata calculation
+ during import</flag>
+ <flag name="web">
+ Enable embedded webserver support through <pkg>dev-python/flask</pkg>
+ </flag>
+ </use>
+ <upstream>
+ <remote-id type="pypi">beets</remote-id>
+ </upstream>
+</pkgmetadata>