Gentoo Archives: gentoo-dev

From: Ciaran McCreesh <ciaranm@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] new glep draft: Portage as a secondary package manager
Date: Tue, 03 May 2005 14:12:52
Message-Id: 20050503151220.076cc62f@snowdrop
In Reply to: Re: [gentoo-dev] new glep draft: Portage as a secondary package manager by Brian Harring
1 On Mon, 2 May 2005 19:02:29 -0500 Brian Harring <ferringb@g.o>
2 wrote:
3 | State said problem for the general community. Guessing you're
4 | referencing the issue/request that being able to manage home, and
5 | 'global' installations?
6 |
7 | I'd still posit that the issue of installing to a user's home when
8 | portage's base prefix is /usr/local (fex) is a seperate issue. What
9 | you were requesting for vim plugins goes beyond haubi's initial
10 | goals...
11
12 Ok, here's the main issue. Simply changing prefix isn't enough to
13 automatically make every package in the tree work. A heck of a lot of
14 them will need manual modification, and there's no easy way to figure
15 out which these are. So...
16
17 My suggested way around this was to have a variable in ebuilds. Call it
18 something like ICANINSTALLTO (that name sucks, come up with something
19 better), which defaults to ICANINSTALLTO="usr". Ebuilds which have been
20 explicitly checked and designed by the maintainer for prefix installs
21 get ICANINSTALLTO="usr prefix".
22
23 This also allows us to do other cool stuff like ICANINSTALLTO="home",
24 for things like vim and gkrellm plugins which can go in ~/.vim/ and
25 ~/.gkrellm2/plugins/ respectively.
26
27 Thing is, if we introduce the PREFIX feature, people will expect it to
28 actually work. It won't, at least not straight away, because there are
29 so many ebuilds that use more than econf to get the prefix figured out.
30 By whitelisting we can at least display a nice "you can't install this
31 package in a prefix" message.
32
33 Another issue... Portage installs to /usr/local are no good, because
34 there might be other non-portage installs there too. If we're installing
35 to a prefix, we have to be the *only* thing installing there. No other
36 packages, not even other manual installs.
37
38 Yet another issue... As it stands, all deps must be installed into the
39 given PREFIX. This is messy. Is there a way around this? This would be
40 less of a problem with ICANINSTALLTO="home" -- presumably for these
41 portage could pass a var to the ebuild telling it in which prefix to
42 look for its deps.
43
44 That'll do for now. I'll shoot some more holes in it once these have
45 been figured out.
46
47 --
48 Ciaran McCreesh : Gentoo Developer (Vim, Shell tools, Fluxbox, Cron)
49 Mail : ciaranm at gentoo.org
50 Web : http://dev.gentoo.org/~ciaranm

Replies