Gentoo Archives: gentoo-dev

From: Paul Smith <pausmith@××××××××××××××.com>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] ROOT variable (was: Creating multiple "installations" on the same host)
Date: Tue, 23 Mar 2004 23:54:19
Message-Id: vpdrekrjjf16.fsf_-_@lemming.engeast.baynetworks.com
In Reply to: Re: [gentoo-dev] Creating multiple "installations" on the same host by david@futuretel.com
1 %% david@×××××××××.com writes:
2
3 d> On Tue, Mar 23, 2004 at 01:57:06PM -0600, Joseph Booker wrote:
4
5 >> for merging the packages..........$ROOT sounds like to me (and I
6 >> havn't checked) that when an emerge is done, when it 'merges'
7 >> /..../image with /, it insteads merges it with $ROOT, for example,
8 >> if $ROOT was /usr, then all the files installed in /etc would to
9 >> got /usr/etc, all in /usr/bin goto /usr/usr/bin, etc.
10
11 d> I have use $ROOT quite extensively. I can vouch for it's working
12 d> in this fashion, the only time it doesn't produce expected results
13 d> is specific checks in ebuilds. Some ebuilds will check for a
14 d> library(in the actual ebuild, not a configure script, ex: perl
15 d> checks for libperl) and the check will be done on / not $ROOT So if
16 d> the file/library required exists on $ROOT but not / the build
17 d> fails.
18
19 Either I'm doing something wrong, or I'm still not understanding, or
20 there are problems in $ROOT handling.
21
22
23 I just tried a basic setup with a vanilla Portage install without any of
24 our local changes (from Portage CVS circa 2003/03/19).
25
26 When I run "ROOT=/tmp/ptest emerge someapp" I get these errors:
27
28 >>> /tmp/ptest/tmp doesn't exist, creating it...
29 >>> /tmp/ptest/var/tmp doesn't exist, creating it...
30 Traceback (most recent call last):
31 File "/tmp/ptest/usr/lib/portage/bin/emerge", line 14, in ?
32 import portage
33 File "/tmp/ptest/usr/lib/portage/pym/portage.py", line 6320, in ?
34 os.makedirs(cachedir,0755)
35 File "/usr/lib/python2.2/os.py", line 203, in makedirs
36 mkdir(name, mode)
37 OSError: [Errno 13] Permission denied: '/var/cache/edb'
38
39
40 Looking the code, it's looking for _BOTH_ /var/cache/edb _AND_
41 $ROOT/var/cache/edb.
42
43 I don't want to have to have the former, if $ROOT is set. In fact in
44 our environment it won't exist. Is there a reason we need to test for
45 both?
46
47
48 Anyway, I'll continue with this and report problems as I find them.
49 Is this better discussed on the gentoo-portage-dev list? Or should I
50 just file bugs in Gentoo Bugzilla without discussion? Or...?
51
52 --
53 -------------------------------------------------------------------------------
54 Paul D. Smith <psmith@××××××××××××××.com> HASMAT--HA Software Mthds & Tools
55 "Please remain calm...I may be mad, but I am a professional." --Mad Scientist
56 -------------------------------------------------------------------------------
57 These are my opinions---Nortel Networks takes no responsibility for them.
58
59 --
60 gentoo-dev@g.o mailing list

Replies