diff options
| -rw-r--r-- | media-sound/quodlibet/Manifest | 1 | ||||
| -rw-r--r-- | media-sound/quodlibet/quodlibet-4.7.1.ebuild | 88 |
2 files changed, 89 insertions, 0 deletions
diff --git a/media-sound/quodlibet/Manifest b/media-sound/quodlibet/Manifest index b8deab4e7cfe..4a1d02515136 100644 --- a/media-sound/quodlibet/Manifest +++ b/media-sound/quodlibet/Manifest @@ -1 +1,2 @@ DIST quodlibet-4.6.0.tar.gz 5719390 BLAKE2B 3b5d43c2fc1e5c3dabdf17c1d35f42762f9db4849a2e99e69a261bc72d5af6f0edac56a1f0e888989a839a4fa905209384b1e37a624676e1c52ca7a5d33ce53c SHA512 eb3bae6eaa2b976bce11ded1a521dc3f2a0a83358ae53215d3f5bce82447f721e7fef2e05b5d1ba87ac984c176e52d7915c4d40b529394d8616d846b78a2af8c +DIST quodlibet-4.7.1.tar.gz 6019630 BLAKE2B e61de03c1802ba6e7d036e53652d6901d52d0de97cdc71cfdf3f308c61ac85f25bb00334f9bb2144652f3e96deb5f93ac1ab96cb13eb89f44bf07c5ade9a8f8e SHA512 57431eb02e31b8691c858aa3126241aee886839067ee760d38613e3db7076af54fb2ba277aa9f92e1079b128959b1278ee955e0680db1147c5faf2c7826e4684 diff --git a/media-sound/quodlibet/quodlibet-4.7.1.ebuild b/media-sound/quodlibet/quodlibet-4.7.1.ebuild new file mode 100644 index 000000000000..f0cd709d9c15 --- /dev/null +++ b/media-sound/quodlibet/quodlibet-4.7.1.ebuild @@ -0,0 +1,88 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# See https://quodlibet.readthedocs.io/en/latest/packaging.html +PYTHON_COMPAT=( python3_{11..13} ) +inherit edo python-single-r1 virtualx xdg + +DESCRIPTION="audio library tagger, manager, and player for GTK+" +HOMEPAGE="https://quodlibet.readthedocs.io/" +SRC_URI="https://github.com/${PN}/${PN}/archive/release-${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-release-${PV}" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +IUSE="+dbus gstreamer +udev" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + dev-libs/keybinder:3[introspection] + $(python_gen_cond_dep ' + >=dev-python/feedparser-6.0.11[${PYTHON_USEDEP}] + >=dev-python/pycairo-1.19[${PYTHON_USEDEP}] + >=dev-python/pygobject-3.34.0:3[${PYTHON_USEDEP}] + >=media-libs/mutagen-1.45[${PYTHON_USEDEP}] + ') + net-libs/libsoup:3.0[introspection] + x11-libs/gtk+[introspection] + gstreamer? ( + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + media-libs/gst-plugins-good:1.0 + media-plugins/gst-plugins-meta:1.0 + ) + !gstreamer? ( media-libs/xine-lib ) + dbus? ( + app-misc/media-player-info + $(python_gen_cond_dep ' + dev-python/dbus-python[${PYTHON_USEDEP}] + ') + ) + udev? ( virtual/udev ) +" +DEPEND="dev-util/intltool" + +src_prepare() { + default + + local qlconfig=quodlibet/config.py + + if ! use gstreamer; then + sed -i -e '/backend/s:gstbe:xinebe:' ${qlconfig} || die + fi + + sed -i -e '/gst_pipeline/s:"":"alsasink":' ${qlconfig} || die +} + +src_compile() { + # The package has a complex setuptools-based build system inside + # of gdist/. Using PEP517 requires some workarounds and isn't + # really useful here. + edo ${EPYTHON} setup.py build +} + +src_test() { + EPYTEST_DESELECT=( + # Network tests + 'tests/plugin/test_covers.py::test_live_cover_download[lastfm-cover]' + 'tests/plugin/test_covers.py::test_live_cover_download[discogs-cover]' + tests/test_browsers_iradio.py::TInternetRadio::test_click_add_station + # ? + tests/plugin/test_replaygain.py::TReplayGain::test_analyze_sinewave + ) + + # https://quodlibet.readthedocs.io/en/latest/development/testing.html#testing + #virtx edo ${EPYTHON} setup.py test + virtx epytest || die "Tests failed with ${EPYTHON}" +} + +src_install() { + edo ${EPYTHON} setup.py install --prefix="${EPREFIX}/usr" --root="${D}" + python_optimize + + dodoc README.rst +} |
