From: Fabian Groffen <grobian@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] Gentoo Prefix: on EPREFIX, ED and EROOT inside ebuilds
Date: Fri, 20 Nov 2009 10:03:38 +0100 [thread overview]
Message-ID: <20091120090338.GK19586@gentoo.org> (raw)
In-Reply-To: <4B05F3F3.9020902@gentoo.org>
On 19-11-2009 19:42:11 -0600, Jeremy Olexa wrote:
> Some questions answered. snipped the rest.
readded questions where necessary
> Denis Dupeyron wrote:
> > 2009/10/18 Tomáš Chvátal <scarabeus@gentoo.org>:
> >> Why on earth portage simply does not detect the prefix enviroment is being run
> >> and then INTERNALY switch D->ED and other variables.
> >
> > If that means we can get away without touching ebuilds, apart from
> > changing their EAPI variable, then that's absolutely what we have to
> > do. I'd like things to be done the right way though (see below).
>
> When you change econf to do --prefix=${EPREFIX}/usr then you cannot
> simply s/D/ED/ for everything. I hope this makes sense when you think
> about it. ;)
>
> src_install() {
> emake DESTDIR="${D}" install || die
> mv "${ED}"/usr/bin/{,exuberant-}ctags || die
> }
>
> But then again, some ebuilds need no changing once you fix econf to do
> the work, which is nice.
>
> >
> > On Fri, Nov 13, 2009 at 4:43 AM, Ulrich Mueller <ulm@gentoo.org> wrote:
> >> However, there is need for additional discussion. From the council
> >> meeting log I could extract the following open questions:
> >
> > It would be preferable for the discussion to happen on this list
> > before the meeting or we'll end up postponing again due to having more
> > questions coming up at that time.
>
> We are willing to talk, but it always seems like the Council is "not
> prepared" no matter what we do. Hope everyone involved can change that.
>
> >
> >> 2. Should the Prefix team be allowed to do the necessary changes to
> >> ebuilds themselves, or should it be done by the respective
> >> maintainers?
> >
> > I think here it's obvious that anybody who is an ebuild dev and sees
> > anything to fix (prefix or else) is encouraged to go ahead and do it,
> > as we've always done. The recommendation is and will always be to talk
> > to the current maintainers out of politeness and to be extra careful
> > (i.e. usually letting the maintainers do it) in case of
> > system/tricky/exotic package. We don't give full cvs access to the
> > whole tree to all ebuild devs for nothing.
>
> It is quite obvious that we are not trying to make trouble. Talk is
> cheap, so we prefer that. But, we see no need to ask permission to add
> ~prefix keywords, same as other arch teams.
>
> Currently, 'repoman -d full' will fail in some packages. We are fixing this.
> > 4. EAPI numbering: Would this simply be added as an additional
> > feature to EAPI 3? Or should we have an intermediate EAPI slot,
> > e.g. 2.1 or 3 (and current EAPI 3 renamed to 4 in the latter
> > case)?
>
> Here I'd add to the choices: why not release an intermediate EAPI with
> the prefix stuff and whatever that has already been done for EAPI3?
> The exact name of a potential intermediate EAPI is a non-problem.
> However I would prefer if it were a number like 2.1 or 2.5 or even 3,
> because although we currently treat the EAPI variable as a simple
> string we may change our mind later and find it handy someday to use
> operators on them such as >=3D2.1.
While I think that this is a totally different discussion, unrelated to
Prefix (well, on a side-note, we once had things like EAPI="prefix 1",
which denoted both the features from "prefix" and "1"), it is good to
isolate things such that it is obvious what an EAPI stands for.
> > 5. Who is going to write the exact specification (PMS patch) for
> > this EAPI feature?
>
> I thought I asked Fabian to work on that at the end of the meeting. In
> case I didn't then consider this as me officially asking him if he can
> take care of it. Fabian is this OK with you?
Yes, I agreed coming up with some patch. I admit I haven't yet even
looked into it.
> Also I think it would be nice if somebody took care of a portage
Technically, Portage trunk already contains the most important bits that
allow us to continue since yesterday. The rest is waiting for a formal
approval of the council, and then it will most probably be me and Zac
fighting to get the prefix branch merged into trunk.
> > patch, since I hear it is rather simple. Fabian again? Or Zac? Any
> > other volunteers?
> >
> > I would prefer to have all the pieces in places before the next
> > meeting so that we can vote on the real thing and have prefix
> > implemented the right way before the end of the year.
>
> portage devs and prefix devs have agreed that it is rather 'easy' to
> merge the prefix-portage branch. Just waiting.. ;) We have access to
> check into the portage repo, so this should not hold anything up
> regarding any decisions.
just to repeat: the implementation already exists in the "prefix" branch
of the portage repository.
> >> 6. (Any question that I've missed?)
>
> >> How are scripts using #!shebangs going to work?
> >> You write an ebuild, and you DEPEND upon >=foo-3, because the build
> >> process includes some foo code. The foo code is executed via
> >> scripts using #!/usr/bin/foo. Normally, this is fine.
> >> But on prefix, /usr/bin/foo might be a crappy, OS X mangled foo-2
> >> that's no good. So even though you've got the foo-3 dep met, it'll be
> >> met in /opt/Gentoo/blah, so your package will fail.
>
> The prefix-portage branch has a nice feature that fixes shebangs
> automatically to be ${EPREFIX}/foo instead of /foo. It has even caught
> some Gentoo Linux bugs.
Next to that, it is part of the Prefix team's job to make sure that
whatever is installed, does not reference the host system when this is
not absolutely necessary. All of the questions you raise here, are
part of the job to get an ebuild "ported" from gx86 to Prefix. In fact,
the "crappy, on OS X mangled foo-2" was the main drive to get the
project going.
> >> How are ebuilds to be marked as supporting prefix or not?
> > (Here I'm guessing that changing the EAPI variable will do)
>
> Gentoo Prefix has keywords. So if EAPI 3 has ED/EROOT support but the
> ebuild doesn't use them then the ebuild does not need an EAPI bump. In
> this case, please rephrase your question to be "How are ebuilds to be
> marked as working on a prefix arch or not?" and then it is clear that it
> is the same as Gentoo Linux.
>
> >
> >> Why is there only a single permitted installation path?
> > (I'm under the impression this is a limitation of the windows
> > installer but not of prefix itself. So patching the installer would
> > fix that)
>
> My installation path on my 6-8 prefix arches is in my NFS home. If you
> are referring to the Windows special installation package, well..that is
> just a "stage4" installer with binary packages. The windows installer is
> no where near the heart of Gentoo Prefix, instead it is a product of
> Gentoo Prefix and a convenience factor offered by another Prefix dev. It
> showcases the possibilities quite well, IMO.
>
> You can set EPREFIX to anything. One of our users even set it to "/" -
> which we don't endorse but it is possible. :)
>
> >
> >> What exactly is expected from a prefix-compliant package manager to
> >> support full prefix installs, as opposed to just supporting installs
> >> to / with prefix-aware ebuilds?
> > (The PMS patch should answer that)
Agreed
--
Fabian Groffen
Gentoo on a different level
next prev parent reply other threads:[~2009-11-20 9:04 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-18 9:11 [gentoo-dev] Gentoo Prefix: on EPREFIX, ED and EROOT inside ebuilds Fabian Groffen
2009-10-18 11:57 ` Tomáš Chvátal
2009-10-18 12:31 ` Fabian Groffen
2009-10-19 19:44 ` Fabian Groffen
2009-10-24 19:37 ` Petteri Räty
2009-10-24 20:00 ` Fabian Groffen
2009-11-13 11:43 ` Ulrich Mueller
2009-11-20 8:45 ` Fabian Groffen
2009-11-20 0:26 ` Denis Dupeyron
2009-11-20 1:42 ` Jeremy Olexa
2009-11-20 9:03 ` Fabian Groffen [this message]
2009-11-25 23:43 ` Denis Dupeyron
2009-11-26 8:53 ` Fabian Groffen
2009-11-26 10:01 ` [gentoo-dev] " Duncan
2009-11-26 10:10 ` Fabian Groffen
2009-11-26 10:37 ` Duncan
2009-11-26 10:51 ` Fabian Groffen
2009-11-26 12:36 ` Duncan
2009-11-26 15:26 ` Fabian Groffen
2009-11-26 13:43 ` [gentoo-dev] " Fabian Groffen
2009-11-26 0:01 ` Denis Dupeyron
2009-11-26 9:02 ` Fabian Groffen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20091120090338.GK19586@gentoo.org \
--to=grobian@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox