Gentoo Archives: gentoo-portage-dev

From: Brian Harring <ferringb@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] [PATCH] pre/post phase hooks for users
Date: Fri, 21 Oct 2005 01:07:29
Message-Id: 20051021010712.GD6127@nightcrawler
In Reply to: Re: [gentoo-portage-dev] [PATCH] pre/post phase hooks for users by Jason Stubbs
1 On Fri, Oct 21, 2005 at 08:43:49AM +0900, Jason Stubbs wrote:
2 > On Friday 21 October 2005 08:07, Brian Harring wrote:
3 > > Bash hooks would exist in 3.0; they're user specific hooks only, hence
4 > > the bit about java being an evil exception till 3.0 comes to town. I
5 > > intend to lock down the pre/post hooks prior to ebuild sourcing under
6 > > ebd, so ebuilds/eclasses trying to use those hooks won't be able to.
7 > >
8 > > In the meantime, it's a nice abuse of a user feature that makes java
9 > > 1.4->1.5 stuff work, and works fine when 3.0 autodisables it.
10 >
11 > I don't get why it's "needed" by java ebuilds? Is it a fasttrack to getting
12 > unsandboxed root access?
13 Env var preservation against portage stomp of the vars. java vars in
14 /etc/profile.env automatically stomp the re-loaded env per phase, to
15 fix this you need either
16
17 A) ebd with it's env saving/restoration
18 B1) ebuilds to reset those vars for every phase
19 B2) modify 700 ebuilds so they call this new func.
20 C1) eclass that defines it's own funcs, src_unpack() { reset_vars; jc_src_unpack; }
21 C2) Modify the couple hundred ebuilds that define *any* of the phase funcs.
22 C3) Work out the compatibility nightmare when dealing with other eclasses
23 D) Add a user feature (bonus for users), and have java eclasses abuse
24 it (including warnings), allowing the env fix to be deployed
25 without mangling ebuilds, and automatically disabled when the
26 executing portage is ebd based.
27
28 Granted... I laid it on thick, but D is the cleanest solution that
29 solves it now providing a useful user feature, and covering up a major
30 issue for java 1.4 -> java 1.5 support ebuild wise, without modifying
31 700 ebuilds.
32
33 Clarifying... I have no intention of expanding the phases, this is
34 intended to be strictly user hooks, with the exception that java
35 eclasses can abuse it right now (no other choice) till 3.0.
36 With the java scenario, disabling the env reset (abuse of user hooks)
37 works perfectly; under 3.0, they don't _need_ the env reset.
38 ~harring

Replies

Subject Author
Re: [gentoo-portage-dev] [PATCH] pre/post phase hooks for users Jason Stubbs <jstubbs@g.o>