1 |
Am Mittwoch, 7. November 2007 schrieb ext Fabian Groffen: |
2 |
> On 07-11-2007 17:28:04 +0200, Dirk Heinrichs wrote: |
3 |
> > Hi, |
4 |
> > |
5 |
> > I just found out about the prefixed portage project. Looks like it |
6 |
> > finally implements functionality I requested already two years ago. |
7 |
> > That's good news. |
8 |
> |
9 |
> My memory is bad, what in particular were/are you looking for? |
10 |
|
11 |
See background below. |
12 |
|
13 |
> > What I would like to know is the following: Would it be possible to |
14 |
> > build for one prefix, but install into another? |
15 |
> |
16 |
> I'm not sure if I get what exactly it is that you want, and I'm not |
17 |
> familiar with AFS (sorry Stefaan ;) ), but it looks a bit like |
18 |
> automounted stuff, and in particular the BSD automounter's scheme. |
19 |
|
20 |
No, it's far superior than that. It creates a global directory tree |
21 |
under /afs. The clients only mount /afs, the tree is assembled on the |
22 |
servers. Volumes are created on the servers and mounted into the tree |
23 |
somewhere, making them instantly visible on the clients. Volumes can be |
24 |
replicated (ro) for higher availability. However, if a ro replica of a |
25 |
volume exist, the client always prefers it over the rw replica, unless the |
26 |
path to the rw replica is used explicitely. |
27 |
|
28 |
And that's the problem I want to solve. Install software into a different |
29 |
path than it was compiled for, automatically. Plus, after installation of |
30 |
each package, release the volume (replicate the changes to all ro |
31 |
replicas). |
32 |
|
33 |
> Anyway. What you can do these days is: |
34 |
> a) |
35 |
> 1. "emerge" a package with "buildpkg" in FEATURES (or use quickpg |
36 |
> afterwards) |
37 |
> 2. make the binpkg (dir, or tbz alone) available through the |
38 |
> filesystem, or via PORTAGE_BINHOST (http and ftp I think) |
39 |
> 3. "emerge" using -k or -K to use the binary and install it on the |
40 |
> other system with offset-prefix != build systems's prefix |
41 |
> (restriction here is that len(target-prefix) <= len(build-prefix)) |
42 |
|
43 |
There is no "other" system. All systems see the same directory tree |
44 |
below /afs. There is also now offset, or prefix. The installation path |
45 |
(rw-volume) simply differs from the runtime path (ro-replica). |
46 |
|
47 |
> b) |
48 |
> 1. set up portage for offset-prefix A |
49 |
> 2. env EPREFIX=prefix-B emerge package |
50 |
> this would in theory allow to use a prefix installation to "clone" |
51 |
> itself, or for a build-host to maintain/compile for a target |
52 |
> prefix. |
53 |
> I must note that the latter only works on paper (need to iron some |
54 |
> issues out here) and the former I never tried. |
55 |
|
56 |
Can try this. |
57 |
|
58 |
> > Background: This would be an ideal thing for installing (and |
59 |
> > distributing) software into the AFS filesystem tree. As you may know, |
60 |
> > AFS supports read-only replication, were ro replicas of a volume (if |
61 |
> > existing) are accessed with preference over rw replicas. However, the |
62 |
> > rw replica can always be accessed through the so called rw path, like |
63 |
> > |
64 |
> > /afs/mydomain.com/myvolume (ro) |
65 |
> > /afs/.mydomain.com/myvolume (rw) |
66 |
> > |
67 |
> > The other thing that would be needed to support this is to be able to |
68 |
> > run user defined actions at certain states, like in this case run "vos |
69 |
> > release" after each successful install to synchronize the ro with the |
70 |
> > rw replica. |
71 |
|
72 |
Bye... |
73 |
|
74 |
Dirk |
75 |
-- |
76 |
Dirk Heinrichs | Tel: +49 (0)162 234 3408 |
77 |
Configuration Manager | Fax: +49 (0)211 47068 111 |
78 |
Capgemini Deutschland | Mail: dirk.heinrichs@×××××××××.com |
79 |
Wanheimerstraße 68 | Web: http://www.capgemini.com |
80 |
D-40468 Düsseldorf | ICQ#: 110037733 |
81 |
GPG Public Key C2E467BB | Keyserver: www.keyserver.net |