Gentoo Archives: gentoo-portage-dev

From: Ned Ludd <solar@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] prefix portage chaining
Date: Wed, 25 Mar 2009 18:44:32
Message-Id: 1238006668.11833.21.camel@hangover
In Reply to: Re: [gentoo-portage-dev] prefix portage chaining by Markus Duft
1 On Wed, 2009-03-25 at 14:14 +0100, Markus Duft wrote:
2 > On Wed, 2009-03-25 at 12:00 +0100, Fabian Groffen wrote:
3 > > On 20-03-2009 11:35:09 +0100, Markus Duft wrote:
4 > > > i'll try and explain what i want in the first place: i'm porting things
5 > > > to native windows. since windows isn't too cooperative, i'm unable to
6 > > > merge most things (and with other things, i simply don't want to), and
7 > > > thus i need to take those things from somewhere else (more or less the
8 > > > complete @system). I _am_ able to build all those things for interix
9 > > > (which is the host system in the windows case). So what i want is a
10 > > > setup of two prefix instances with a certain relation to each other: the
11 > > > native windows prefix should be able to recognize installed packages
12 > > > from the other instance, and resolve dependencies by eventually using
13 > > > the other .../var/db/...
14 > >
15 > > Since Windows and Interix seem to be two different things to me, can you
16 > > explain why in this case Portage can resolve the dependencies from the
17 > > Interix system to use for the Windows system? What dependencies are we
18 > > talking about? Build tools? Libraries? Runtime dependencies?
19 >
20 > i'm using it to resolve DEPEND atoms only. of course my notion of valid
21 > DEPENDs and RDEPENDs is influenced by this, and i'm alergic against
22 > RDEPEND=$DEPEND and such :) since it doesn't work in this setup. however
23 > right now most things i need don't make too much problems.
24 >
25 > >
26 > > > This could be (and is) quite usefull for all other platforms too. For
27 > > > exmaple i could use prefix chaining on a linux box. I could create a
28 > > > prefix containing a base system, and then for testing of
29 > > > i-don't-know-whatever, i could create another small prefix inheriting
30 > > > all installed packages from the other one. this way new prefixes can
31 > > > stay very slim, but still the "parent" prefix is not altered on merges.
32 > >
33 > > That potentially is useful, in the case where you want to upgrade a
34 > > critical system package and test it out or something. Can't think of an
35 > > example other than Portage itself for the moment, though. (And that one
36 > > can be hairy, for instance if the vdb format changes NEEDED ->
37 > > NEEDED.ELF.2)
38 >
39 > ++ :)
40 >
41 > >
42 > > > one issue not handled by the current patch is, that prefixes can have
43 > > > different CHOST/ARCH/... (which is the case with x86-interix and
44 > > > x86-winnt for example).
45 > >
46 > > Then how does it work for you?
47 >
48 > as i said, i'm using DEPENDs only from the other prefix with the
49 > different CHOST/ARCH. this works, since on interix i can execute windows
50 > binaries, and vice versa (limited).
51 >
52 > the patch i proposed here and on gentoo-alt@ (btw. i have a fixed
53 > version lying around since a few minutes ...) allows the user to set
54 > which atoms should be resolve-able from the chain. for exmaple for
55 > windows i'm doing this in /my/winnt/prefix/etc/make.conf:
56 >
57 > READONLY_EROOT=/my/interix/prefix:DEPEND
58 >
59 > on linux, if both prefixes are x86-linux for example i could to
60 > in /my/prefix/two/etc/make.conf:
61 >
62 > READONLY_EROOT=/my/prefix/one:DEPEND,RDEPEND
63 >
64 > (btw. this forces PDEPENDs to merge in /my/prefix/two. i guess most of
65 > the time this makes sense, since with a PDEPEND from a lib, i want the
66 > PDEPEND package to link against this lib... you know what i mean? of
67 > course PDEPEND can still be added to the above list...)
68 >
69 > (btw2. the name READONLY_EROOT is discussed on gentoo-alt@ already, so i
70 > won't comment on it beeing cool/uncool here... ;) )
71 >
72 > Cheers, Markus
73 >
74 > >
75 > >
76 >
77 > \
78
79
80 While much of what you are talking about here mainly applies to prefix,
81 it looks to me from glancing over the code that you might of solved a
82 long standing problem in the embedded world with cross compiling via
83 portage. 222895 If that is the case, then I owe you a beer. one about
84 the size of a keg.
85
86
87 --
88 Ned Ludd <solar@g.o>
89 Gentoo Linux

Replies

Subject Author
Re: [gentoo-portage-dev] prefix portage chaining Markus Duft <mduft@g.o>