Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 909991 - media-sound/gpodder: needs to use PEP517 build (DistutilsNonPEP517Build)
Summary: media-sound/gpodder: needs to use PEP517 build (DistutilsNonPEP517Build)
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All All
: Normal normal (vote)
Assignee: Gentoo Sound Team
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks: pep517-porting
  Show dependency tree
 
Reported: 2023-07-08 06:57 UTC by Michał Górny
Modified: 2024-03-14 07:29 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2023-07-08 06:57:08 UTC
This package still uses the legacy eclass code paths.  These paths are deprecated and pose a significant maintenance cost.  Please update the package to use PEP517 build mode.  For more information, please see the Python Guide, particularly; https://projects.gentoo.org/python/guide/migration.html#migrating-to-pep-517-builds
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-07-08 20:40:53 UTC
[Adding this comment en-masse, sorry for the noise, but it's important.)

1. Please take particular care to check file diffs before/after, possibly using `iwdevtools`. Keep a particular eye out for e.g. config files now missing from /etc and instead being in /usr/lib/python*/site-packages, etc.

2. Please make sure to do the migration in a new revision in ~arch, partly because of 1.
Comment 2 Miroslav Šulc gentoo-dev 2023-10-01 08:17:15 UTC
this bug needs an attention from someone who knows python setup system more than i do.
Comment 3 Seth 2023-10-06 22:31:05 UTC
Does this also explain the uncaught exceptions I'm seeing in the gpo CLI utility?

https://bpa.st/YZYA
Comment 4 Brand Huntsman 2023-10-24 08:40:13 UTC
(In reply to Seth from comment #3)
> Does this also explain the uncaught exceptions I'm seeing in the gpo CLI
> utility?

No, the gpodder.net web service is unmaintained and almost always returns that "
HTTP Error 500: Internal Server Error".
Comment 5 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2024-03-06 15:30:19 UTC
Final ping.  Please note that we will not hesitate to last rite low profile packages over this.
Comment 6 Brand Huntsman 2024-03-14 07:27:09 UTC
These patches fix this issue and https://bugs.gentoo.org/922991. The makefile patch will be in the next gpodder release.


--- 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)




--- gpodder-3.11.4.ebuild	2024-03-07 13:08:04.334238937 -0700
+++ gpodder-3.11.4-r1.ebuild	2024-03-14 01:08:53.907616762 -0600
@@ -3,8 +3,8 @@
 
 EAPI=8
 
+DISTUTILS_USE_PEP517=setuptools
 DISTUTILS_SINGLE_IMPL=1
-DISTUTILS_USE_SETUPTOOLS=no
 PYTHON_COMPAT=( python3_{9..11} )
 PYTHON_REQ_USE="sqlite"
 
@@ -45,12 +45,18 @@
 	)
 "
 
+PATCHES=(
+	"${FILESDIR}"/${P}-make-build.patch
+)
+
 distutils_enable_tests pytest
 
 src_prepare() {
 	default
 
 	sed -i -e 's:--cov=gpodder::' makefile || die
+
+	emake PYTHON="${EPYTHON}" DESTDIR="${D}" build
 }
 
 python_test() {
@@ -64,8 +70,6 @@
 }
 
 src_install() {
-	emake PYTHON="${EPYTHON}" DESTDIR="${D}" install
-
 	distutils-r1_src_install
 
 	touch "${ED}"/usr/share/gpodder/no-update-check || die