Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 469312 - python-single-r1.eclass makes vala.eclass-based packages fail
Summary: python-single-r1.eclass makes vala.eclass-based packages fail
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-05-10 12:40 UTC by Tiziano Müller (RETIRED)
Modified: 2013-05-10 22:03 UTC (History)
1 user (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 Tiziano Müller (RETIRED) gentoo-dev 2013-05-10 12:40:31 UTC
Currently affected packages:
* evolution-data-server
* gnome-extra/zeitgeist-datasources

The reason for this is that python-single-r1.eclass calls python_wrapper_setup in pkg_setup which creates $T/pkgconfig as root:root with permission 0755.

vala.eclass then tries to create a symlink in $T/pkgconfig in src_prepare phase which fails since src_prepare is run as portage or paludisbuild.

Making $T/pkgconfig is a no-go since an unprivileged user may alter content there (because $T is most probably 0755).
Comment 1 Gilles Dartiguelongue (RETIRED) gentoo-dev 2013-05-10 13:44:20 UTC
hum I think doing stuff for build in pkg_setup is wrong and should be moved to src_prepare where it belongs.
Comment 2 Mike Gilbert gentoo-dev 2013-05-10 14:25:47 UTC
(In reply to comment #1)

I can agree with that. I guess I'm just a bit worried about our wrapper setup and env var export getting clobbered by ebuilds that define src_prepare without calling our function. I guess that's on the ebuild author, not us though.

mgorny: Thoughts on if/how we should change this?
Comment 3 Gilles Dartiguelongue (RETIRED) gentoo-dev 2013-05-10 15:40:54 UTC
imho, the best we can do is respect phase definitions as much as we can, which is not exactly the case for vala eclass either and leave the ebuilds author with the responsability to use the eclasses properly.
Comment 4 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-05-10 16:16:19 UTC
(In reply to comment #2)
> (In reply to comment #1)
> 
> I can agree with that. I guess I'm just a bit worried about our wrapper
> setup and env var export getting clobbered by ebuilds that define
> src_prepare without calling our function. I guess that's on the ebuild
> author, not us though.
> 
> mgorny: Thoughts on if/how we should change this?

That's one problem, and the other is that people may run things needing Python in pkg_* phases.

And one more is that changing anything involving exported phases means tree-wide hell-of-a-breakage and is basically impossible. As a simplest solution, I think we can switch to using separate dirs for those created as root and with userpriv. Changing either is fine with me.
Comment 5 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-05-10 22:03:55 UTC
I went ahead and switched all the eclasses to consistently use ${T}/${EPYTHON} for the wrappers. This also fixes this issue.