1 |
> Yes, your words about "dependency" and "flexibility" are valid, but this |
2 |
> is also the most straightforward way to sync multiple machines at once. |
3 |
> If you do need to emerge a package when the laptop is away from home |
4 |
> then just --sync and it builds a portage tree at the "missing |
5 |
> mountpoint" (if that makes sense). |
6 |
|
7 |
I'll consider that, but seriously, I've tried many ways, including rsyncd, to |
8 |
sync portage on my computers and I've settled for unison. Really, I like it for |
9 |
its simplicity of use and maintenance and the fact that my host only has the ssh |
10 |
port open. Sync'ing portage is not a problem, i'll explore different ways along |
11 |
the way. Dont try to convince me of other ways, this one is working (and I |
12 |
don't mind whatever downsides). |
13 |
|
14 |
> Great! I'm glad you're happy with this. You're NFS exporting a |
15 |
> sub-directory of /usr/portage, then, in order to share the built packages? |
16 |
|
17 |
As said, no. I'm using a separate copy on each host, which is sync'ed manually |
18 |
between those hosts. It may sound awful, but it actually syncs my /home |
19 |
directory, as well as my /root dir (where I keep important system stuff, like |
20 |
dev drivers source). The sync'ing is not very long and once done, each computer |
21 |
is completely independant and contains all my stuff i need. Which creates |
22 |
redundancy. |
23 |
|
24 |
I had tried NFS before, and failed, but I was not very interested and the first |
25 |
few obstacles made me drop it. It was before I tried gentoo and started my own |
26 |
personal 'renaissance' and learned so much. I'll try it again soon, but it's |
27 |
not my priority for now. |
28 |
|
29 |
> I assume compilation errors. My usage is that I can turn distcc off for |
30 |
> the duration of the compile when I see something like this, and not |
31 |
> bother investigating it further, but I think the most likely cause is |
32 |
> that a library is needed for compilation that is not present on the |
33 |
> distcc server. Portage accepts the compile-time dependency because it is |
34 |
> filled on the distcc client, the machine on which you've run emerge, but |
35 |
> when that particular bit is sent off to the distcc server then that |
36 |
> machine doesn't have the lib needed. |
37 |
|
38 |
Well, this is the whole problem. You were right about the compilation error. |
39 |
And if it *may* happen, then a full emerge -e will take days (considering system |
40 |
has 143 pkgs and world has 499 pkgs to build). Turning it off, emerge the |
41 |
package, turn it on, resume emerge once in a while is really against my idea of |
42 |
automatism! I might make a script that checks for binpkgs after emerge returns, |
43 |
and if no pkg was created, then disable distcc for that one, re-enable |
44 |
automatically... maybe prepare a report to send to the ebuild maintainer, to |
45 |
let him know of the issue and all relevant details. |
46 |
|
47 |
> I would imagine that, assuming the above belief is correct, then the |
48 |
> workaround would be to `emerge -o` the package on the other machines on |
49 |
> your LAN (or the fastest machine, if you are using only that to emerge) |
50 |
> before distcc'ing it. This is slightly inelegant. |
51 |
|
52 |
Clearly less and less transparent... i'd say cloudy. Seriously at this point, |
53 |
i'd just drop distcc completely. But I don't think I'll have to go that far. |
54 |
|
55 |
> If you mostly have the same packages on all machines then hopefully you |
56 |
> shouldn't encounter this scenario too often, although I'd also think |
57 |
> that different USE flags could affect it. |
58 |
> |
59 |
> I'm also somewhat suspicious of different architectures - you wouldn't |
60 |
> try compiling for ARM or MIPS on an x86 PC, but I'm not sure how |
61 |
> compiling on an Athlon for a Pentium 3 or 4 affects things. Finally you |
62 |
> should make sure all machines are using the same versions of gcc and |
63 |
> glibc (also binutils? what else?). |
64 |
|
65 |
Same everything on every machine, i'll double check glibc and binutils too. |
66 |
|
67 |
Thanks Stroller, I'm really starting to see how I can manage my mini IT lab now! |
68 |
Simon |