1 |
Frank Peters posted on Mon, 30 Mar 2015 17:04:58 -0400 as excerpted: |
2 |
|
3 |
> On Mon, 30 Mar 2015 12:15:55 -0700 Mark Knecht <markknecht@×××××.com> |
4 |
> wrote: |
5 |
> |
6 |
>> Yesterday I was emerge -DuN @world clean. It took hours due to Gentoo |
7 |
>> decisions about multilib stuff. |
8 |
>> |
9 |
>> |
10 |
> Is it still necessary to be using multilib? |
11 |
|
12 |
If you're running 100% freedomware, almost certainly not -- if you look |
13 |
at the per-arch package coverage stats in the gentoo newsletter, amd64 |
14 |
actually has higher coverage now than x86, and the trend is certainly |
15 |
downward for x86. |
16 |
|
17 |
[x86 32-bit-only diversion] |
18 |
|
19 |
Actually, as some probably know I follow the gentoo-dev list as well, and |
20 |
just last week there was a short (only a handful of posts, maybe 3-5) |
21 |
discussion on demoting x86 to minor arch status, with the comment that |
22 |
all i86 based cpus have been 64-bit for some years now. |
23 |
|
24 |
Before the rumors get out of hand, however, the very quick conclusion was |
25 |
that now wasn't the time for that, but at the same time, that there's a |
26 |
real chance that conclusion will change in a few years... But note that |
27 |
as I said, the subthread was very short. I expect that if it had been a |
28 |
serious proposal, there would have been a few devs effectively saying |
29 |
"Over my dead body!", as they have for a few other proposals over the |
30 |
years. That, BTW, is why gentoo continues to have a very solid |
31 |
commitment to openrc, even as systemd is now well supported as |
32 |
effectively an equal option. There's some very core devs and some of |
33 |
gentoo's donated hosting running openrc on installations of hundreds or |
34 |
thousands of machines, and as long as that's the case, openrc support |
35 |
won't be going anywhere, because if it did, gentoo would suddenly find |
36 |
itself forked and much smaller! I have a feeling the resistance to |
37 |
dropping x86 to minor at this point would be very similar, tho I think |
38 |
everyone agrees now that the time is likely to eventually (perhaps 5-10 |
39 |
years out) come. |
40 |
|
41 |
Meanwhile, personally, I /did/ have a 32-bit-only original atom n270 |
42 |
netbook and thus could have cared, but as I said in the recommendations |
43 |
thread, I loaned it out and don't expect to ever get it back (tho I'm not |
44 |
actually too upset about it), and also as I said in that thread I'm |
45 |
basically standardizing on amd64 for everything now, so no big deal for |
46 |
me personally, tho I definitely agree with the conclusion above, now is |
47 |
not the time. |
48 |
|
49 |
[end diversion] |
50 |
|
51 |
Back to the 32-bit multilib on otherwise 64-bit amd64, tho... |
52 |
|
53 |
As I said, freedomware only, 64-bit-only is almost certainly easiest. |
54 |
If, however, you're running servantware binaries of any sort, well, the |
55 |
signature quote says it, you're effectively a slave to whatever whims the |
56 |
master of that binary may have, and if they've never come out with 64-bit |
57 |
or if you've never chosen to do whatever upgrade at whatever cost might |
58 |
be required to get it, well... |
59 |
|
60 |
But, for those where it's possible to go 64-bit only, I'd strongly |
61 |
recommend it. |
62 |
|
63 |
Back when I originally made the switch on my main machine, if you weren't |
64 |
actually running anything 32-bit it only mattered for a few core |
65 |
packages, glibc and gcc being big ones. But glibc in particular went |
66 |
from being a big deal to build, to just another package, because building |
67 |
it for 32-bit as well effectively doubled the package build time. (And |
68 |
back then, nptl was still new and many things still defaulted to Linux- |
69 |
threads instead of native-posix-thread-library, so big parts of glibc |
70 |
were already built twice, once for lt once for nptl, and building for 32- |
71 |
bit also actually doubled /that/, so people with multilib were actually |
72 |
building glibc FOUR times!! Of course that was on much slower equipment, |
73 |
when dual-core was new too, so it was a **BIG** deal!) |
74 |
|
75 |
But, while the emul-* thing was definitely faster for other packages, it |
76 |
was faster in the binary-distro sense of being pre-built, and thus, not |
77 |
really all that gentooish at all! Which is why, for people that wanted |
78 |
to do it the /real/ gentoo way, there was the 32-bit chroot guide. Which |
79 |
is what I expanded on when I did the 32-bit chroot buildroot for my 32- |
80 |
bit netbook, on my 64-bit main machine. Basically, the original 32-bit |
81 |
chroot guide was setup as a nearly full 32-bit x86, minus the stuff where |
82 |
the 64-bit native side provided the services -- the kernel, most system |
83 |
services like syslog, cron, etc. The point being, people could then |
84 |
actually build the 32-bit stuff themselves, as any real gentooer likely |
85 |
wanted anyway as the control it allows is the /point/ of gentoo, instead |
86 |
of installing the multilib stuff and using the un-gentoo pre-built-binary |
87 |
emul-* solution. Of course, since I was building a complete solution for |
88 |
a 32-bit machine, not just for running 32-bit apps in a chroot, I built |
89 |
the extra packages, kernel, services, etc, as well, in the chroot, and |
90 |
then transferred them to the 32-bit netbook. (Originally I rsynced by |
91 |
thumb-drive "sneakernet", which was how I did the initial install on the |
92 |
netbook. Then after I set up ssh, rsync over the LAN via SSH -- the |
93 |
netbook itself never actually had a copy of the gentoo tree as I never |
94 |
actually ran emerge on it at all, not even for binary packages, I simply |
95 |
rsynced from the 32-bit buildroot chroot.) |
96 |
|
97 |
What the new multilib solution enables is thus far more "gentooish" than |
98 |
emul-* /ever/ was, but by the very SAME token, it's ALSO a lot more work, |
99 |
because you're effectively building a lot more stuff twice, once each for |
100 |
32-bit and 64-bit. |
101 |
|
102 |
If you still actually NEED the multilib, that's great, you get far more |
103 |
control now by actually building it yourself! |
104 |
|
105 |
But if you do *NOT* need multilib, you're now building MUCH more stuff |
106 |
twice, entirely USELESSLY, simply because you're still setup for multilib |
107 |
and that's what it does, even tho you don't actually NEED it. |
108 |
|
109 |
Thus, as I said, if your use-case is such that you can do so, it's |
110 |
STRONGLY beneficial to go no-multilib, 64-bit only -- you'll save |
111 |
yourself LOTS of time and CPU cycles avoiding the double-builds. OTOH, |
112 |
if your use-case requires multilib, great, you now have it in a far more |
113 |
gentooish way than was ever possible with the emul-* solution! |
114 |
|
115 |
> I've been using pure AMD64 for so long I tend to forget that 32-bit |
116 |
> stuff still exists. |
117 |
|
118 |
Same here. Except that... |
119 |
|
120 |
Since I follow the gentoo-dev list, I saw all the new multilib stuff |
121 |
being hashed out there. Plus, I had a lot of otherwise useless revision- |
122 |
rebuilds to do, that was simply churn due to enabling the new multilib |
123 |
stuff that didn't affect me directly at all other than all the rebuilds |
124 |
(which I still did instead of simply blocking, because while I don't have |
125 |
Mark's 12-core monster, even with a 6-core first-gen amd bulldozer fx6100, |
126 |
it's less hassle and sometimes faster too, to simply do the rebuild than |
127 |
to fiddle with masking it because it's a multilib-only rebuild. But as |
128 |
I'm ~amd64 and even newer (overlays, live-git packages...), even most of |
129 |
those rebuilds happened months ago, far enough back in history that the |
130 |
details are already going fuzzy, for me. |
131 |
|
132 |
But yeah, pretty hard to forget the 32-bit stuff when you're doing a |
133 |
bunch of personally useless rebuilds due to the new multilib stuff that |
134 |
doesn't otherwise affect you at all... |
135 |
|
136 |
Just makes me even /more/ glad I'm no-multilib and don't have to worry |
137 |
about that stuff any longer! =:^) |
138 |
|
139 |
-- |
140 |
Duncan - List replies preferred. No HTML msgs. |
141 |
"Every nonfree program has a lord, a master -- |
142 |
and if you use the program, he is your master." Richard Stallman |