commit: 1ac308f08029a00132d6989ceadb0bff5c7c3a05 Author: Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com> AuthorDate: Tue Nov 5 20:48:48 2024 +0000 Commit: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org> CommitDate: Wed Nov 6 07:56:15 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1ac308f0
media-sound/gpodder: add 3.11.4-r1 Apply patch from bug. Clean up python_test. Use`PYTEST_DISABLE_PLUGIN_AUTOLOAD=1` and `EPYTEST_IGNORE`. Make `-p pytest_httpserver` explicit. Bug: https://bugs.gentoo.org/909991#c6 Bug: https://bugs.gentoo.org/909991 Bug: https://bugs.gentoo.org/922991 Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com> Closes: https://github.com/gentoo/gentoo/pull/39215 Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org> .../gpodder/files/gpodder-3.11.4-make-build.patch | 16 ++++ media-sound/gpodder/gpodder-3.11.4-r1.ebuild | 97 ++++++++++++++++++++++ 2 files changed, 113 insertions(+) diff --git a/media-sound/gpodder/files/gpodder-3.11.4-make-build.patch b/media-sound/gpodder/files/gpodder-3.11.4-make-build.patch new file mode 100644 index 000000000000..c9f2d323b52e --- /dev/null +++ b/media-sound/gpodder/files/gpodder-3.11.4-make-build.patch @@ -0,0 +1,16 @@ +From: Brand Huntsman <[email protected]> +Bug: https://bugs.gentoo.org/909991#c6 + +--- a/makefile ++++ b/makefile +@@ -93,7 +93,9 @@ $(GPODDER_SERVICE_FILE): $(GPODDER_SERVICE_FILE_IN) + %.desktop.in.h: %.desktop.in + intltool-extract --quiet --type=gettext/ini $< + +-install: messages $(GPODDER_SERVICE_FILE) $(DESKTOP_FILES) ++build: messages $(GPODDER_SERVICE_FILE) $(DESKTOP_FILES) ++ ++install: build + $(PYTHON) setup.py install --root=$(DESTDIR) --prefix=$(PREFIX) --optimize=1 + + install-win: messages $(GPODDER_SERVICE_FILE) $(DESKTOP_FILES) diff --git a/media-sound/gpodder/gpodder-3.11.4-r1.ebuild b/media-sound/gpodder/gpodder-3.11.4-r1.ebuild new file mode 100644 index 000000000000..4f73c0e097bc --- /dev/null +++ b/media-sound/gpodder/gpodder-3.11.4-r1.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +DISTUTILS_SINGLE_IMPL=1 +PYTHON_COMPAT=( python3_{11..13} ) +PYTHON_REQ_USE="sqlite" + +inherit distutils-r1 optfeature xdg + +DESCRIPTION="A free cross-platform podcast aggregator" +HOMEPAGE="https://gpodder.github.io/" +SRC_URI=" + https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz +" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+dbus bluetooth mtp" + +RDEPEND=" + $(python_gen_cond_dep ' + dev-python/html5lib[${PYTHON_USEDEP}] + dev-python/pycairo[${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}] + dev-python/podcastparser[${PYTHON_USEDEP}] + dev-python/mygpoclient[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] ) + ') + bluetooth? ( net-wireless/bluez ) + mtp? ( media-libs/libmtp:= ) + kernel_linux? ( sys-apps/iproute2 ) +" +BDEPEND=" + dev-util/desktop-file-utils + dev-util/intltool + sys-apps/help2man + test? ( + $(python_gen_cond_dep ' + dev-python/minimock[${PYTHON_USEDEP}] + dev-python/pytest-httpserver[${PYTHON_USEDEP}] + ') + ) +" + +PATCHES=( + "${FILESDIR}/${P}-make-build.patch" +) + +distutils_enable_tests pytest + +src_prepare() { + default + + sed -e 's:--cov=gpodder::' -i makefile || die + + emake PYTHON="${EPYTHON}" build +} + +python_test() { + # These are pulled out from the Makefile to give us more control + # See bug #795165 + # Previously, we used 'emake releasetest' in src_test + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + + local -x EPYTEST_IGNORE=( + src/gpodder/utilwin32ctypes.py + ) + + epytest \ + --ignore=tests \ + --doctest-modules src/gpodder/util.py \ + src/gpodder/jsonconfig.py + + epytest tests \ + --ignore=src/mygpoclient \ + -p pytest_httpserver +} + +src_install() { + distutils-r1_src_install + + touch "${ED}/usr/share/gpodder/no-update-check" || die +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "track length detection for device sync (only one package is needed)" media-video/mplayer dev-python/eyeD3 + optfeature "for the YouTube extension" net-misc/yt-dlp + optfeature "iPod sync support" media-libs/libgpod +}
