1 |
Beso <givemesugarr@×××××.com> posted |
2 |
d257c3560811250316g6a10f8ccoee464fe64c272fa7@××××××××××.com, excerpted |
3 |
below, on Tue, 25 Nov 2008 12:16:56 +0100: |
4 |
|
5 |
> 2008/11/25 Duncan <1i5t5.duncan@×××.net>: |
6 |
>> "Mark Knecht" <markknecht@×××××.com> posted |
7 |
>> 5bdc1c8b0811241446s7b7b01e7qba78f4e6de060a38@××××××××××.com, excerpted |
8 |
>> below, on Mon, 24 Nov 2008 14:46:35 -0800: |
9 |
>> |
10 |
>>>> Personally, I default to ~arch, and unmask hard-masked packages |
11 |
>>>> either in- tree or from various overlays from time to time as well. |
12 |
>>> |
13 |
>>> Where do you do this? In /etc/make.conf? I've never run a machine like |
14 |
>>> that but would be interested in at least seeing how many packages this |
15 |
>>> machine would have to rebuild if I went there. |
16 |
>> |
17 |
>> Yes, I set ACCEPT_KEYWORDS=~amd64 (which automatically includes stable |
18 |
>> amd64 as well, as shown by an emerge --info) in /etc/make.conf. You'd |
19 |
>> be surprised at how far out of date stable arch is in some cases. Of |
20 |
>> course in other cases, generally mature and real slow moving packages, |
21 |
>> the latest version available has long been stable on most or all archs |
22 |
>> (see below). |
23 |
>> |
24 |
> if i recall corectly in the past some packages that were under amd64 |
25 |
> only needed also accept keywords amd64 near ~amd64. has this changed |
26 |
> lately? usually the latest includes the former but sometimes when the |
27 |
> packages are just amd64 and no ~amd64 ones i remember that i needed to |
28 |
> add amd64 also in the keywords. |
29 |
|
30 |
I'm not saying it can't happen, but if it does, it's certainly a bug, |
31 |
either of the package (not testing the keyword correctly) or of portage |
32 |
(not setting it correctly), or possibly of the user (maybe a typo, ~adm64 |
33 |
instead of ~amd64, say). |
34 |
|
35 |
Here's what I know: |
36 |
|
37 |
From my make.conf: |
38 |
ACCEPT_KEYWORDS="~amd64" |
39 |
|
40 |
emerge --info |grep ACCEPT |
41 |
ACCEPT_KEYWORDS="amd64 ~amd64" |
42 |
|
43 |
So portage is actively adding the amd64 stable keyword, based on the |
44 |
~amd64 in make.conf. It has done so since at least whatever portage was |
45 |
around for 2004.1, which is when I started with Gentoo/~amd64. (As I |
46 |
switched from Mandrake Cooker for AMD64, I never even seriously |
47 |
considered stable Gentoo/amd64, and have run ~amd64 from day one.) As I |
48 |
said, if it didn't work that way for some package, there was a bug |
49 |
somewhere! |
50 |
|
51 |
Also note the wording in the handbook and the Code Listing 1.1 found here |
52 |
(link should be a single line, in case I forget to come back and unwrap |
53 |
this before sending or if it wraps on your end): |
54 |
|
55 |
http://www.gentoo.org/doc/en/handbook/handbook-amd64.xml? |
56 |
part=3&chap=3#doc_chap1 |
57 |
|
58 |
>>> Generally I've always run stable and then never shied away from having |
59 |
>>> a larger set of file in my package.keywords file to get what I think I |
60 |
>>> want to run. |
61 |
>> |
62 |
>> With ~arch by default, you normally have very few packages listed in |
63 |
>> package.keywords. There /may/ be a few individual packages that you |
64 |
>> choose to stay with stable on, but at least here, I don't use |
65 |
>> package.keywords for that but rather, package.mask, and mask whatever |
66 |
>> individual version I'm having problems with, thereby forcing portage |
67 |
>> back to a previous version, whether that's stable or an earlier ~arch |
68 |
>> version. |
69 |
>> |
70 |
> i found out that is better to have a less long package.mask instead of a |
71 |
> long package.unmask. it's faster to controll the stuff in your pc. |
72 |
|
73 |
That sentence is rather difficult to parse, here. I think it's probably |
74 |
because English isn't your native language, right? See if the following |
75 |
accurately conveys your intention or if am I still confused? |
76 |
|
77 |
"I [have] found out that [it] is better to have a short package.mask |
78 |
instead of a long package.unmask. It's more efficient control of the |
79 |
stuff on your PC." |
80 |
|
81 |
If that's your intent, I agree. I prefer the shorter file version here |
82 |
myself. It's just simpler to manage. |
83 |
|
84 |
However you're not directly addressing what I was. Note that I was |
85 |
talking about package.keywords as opposed to package.mask, not |
86 |
package.unmask, which I didn't mention at all. |
87 |
|
88 |
I was suggesting that if one has ~arch by default and finds an individual |
89 |
package where one wishes to revert to to stable arch, it may be better to |
90 |
list the broken ~arch version in package.mask, thus reverting to the |
91 |
working arch/stable version, instead of using package.keywords to revert |
92 |
to stable. For one thing, masking an individual version only affects |
93 |
that version, not newer versions, and in the next round, it's quite |
94 |
possible the ~arch version will be perfectly fine. If one has created |
95 |
the entry in package.keywords, one will still be stuck with it for the |
96 |
next version, while if the individual broken version is listed in |
97 |
package.mask, the next ~arch release will show up as unmasked again, |
98 |
giving one a chance to evaluate whether the problem is fixed or not. |
99 |
Hopefully it is. |
100 |
|
101 |
In practice I don't end up using package.mask very much. Most of the |
102 |
time, if a package doesn't work, I check bugs and if necessary file one, |
103 |
but often someone already has a bug filed and there's already a patch |
104 |
available for me to apply. I'll normally do that instead of masking the |
105 |
package. And occasionally I'll leave an update unmerged for a couple |
106 |
days if it's broken, hoping either a further update is release or a patch |
107 |
appears on the bug (which I've CCed to if I didn't file it myself) that I |
108 |
can apply (in my local overlay or whatever) and then merge the package. |
109 |
|
110 |
If I put something in package.mask here, it's because it truly is broken |
111 |
on my config, perhaps because I often run hard-masked new gcc or |
112 |
baselayout/openrc versions or the like, before they even hit ~arch, or |
113 |
maybe because I tend to customize my system more than most and the |
114 |
package simply was never tested (even upstream) on a system that looked |
115 |
like mine before. In any case, I check for a filed bug and file one |
116 |
myself if necessary. Since that type of bug tends to take somewhat |
117 |
longer to fix than the trivial ones, if the package won't compile at all |
118 |
or has broken functionality I truly depend on, I'll package.mask that |
119 |
version and fall back to an earlier version until the bug is fixed, or in |
120 |
some cases I decide whatever customization I had that was breaking things |
121 |
isn't worth the trouble and I change it to something that works. |
122 |
|
123 |
So I usually have a very small package.mask. Right now there's only one |
124 |
entry in it, a permanent one, app-emacs/emerge, because one time I |
125 |
accidently double-typed "emerge emerge" and got /very/ confused when |
126 |
there actually /was/ a package called "emerge" and it tried to emerge it! |
127 |
=:^) So I keep that entry there to give me a warning I can understand |
128 |
(instead of a long list of new packages I didn't expect), if I ever make |
129 |
that mistake again. |
130 |
|
131 |
> if there's the lack of testing devs for going into stable i don't really |
132 |
> know if it worths to continue keeping this distinction. maybe it would |
133 |
> be better to have something like a hardened branch in which to go with |
134 |
> only stable and secure stuff that gets updated rarely but that can be |
135 |
> used as production system. more like the fedora red hat enterprise |
136 |
> approach, where red hat is very stable and not updated very often |
137 |
> if not for security reasons and fedora that gets the new stuff. |
138 |
|
139 |
Well, keep in mind what you're replying to was written by a guy (myself) |
140 |
who doesn't have much personal use for stable. Some people do, and I |
141 |
probably would too if I were running a production server on it. But... |
142 |
Gentoo really does /not/ have an "Enterprise class" stable branch. Every |
143 |
year or so the discussion comes up again on the dev list, and we've had |
144 |
devs try to start such a project, and devs leave when it didn't work the |
145 |
way they wanted it to. The problem is that supporting such an ultra- |
146 |
stable branch, backporting fixes to old versions instead of forcing |
147 |
upgrades, etc, requires enormous development and testing resources that |
148 |
Gentoo simply doesn't have, and as it's currently structured, IMO will |
149 |
never have because it's in conflict with the whole idea behind Gentoo, |
150 |
rolling updates and all. |
151 |
|
152 |
Honestly, while I'll straight up admit I'm biased, I don't really see the |
153 |
purpose behind a Gentoo (as opposed to say Red Hat) stable in any case. |
154 |
The idea of a compile-your-own, seriously customizable (USE flags, |
155 |
CFLAGS), rolling update distribution, fits very well the user that loves |
156 |
that sort of customization and control, and sees keeping up to date with |
157 |
the latest as a good thing. This is where Gentoo works best. |
158 |
|
159 |
But it doesn't fit with the user who needs long term support, who would |
160 |
rather keep a known working version and only change the bare minimum to |
161 |
get security fixes and the like, who often needs a one-size-fits-all less |
162 |
customized install (a known and predictable set of CFLAGS, a known set of |
163 |
dependencies that always apply to a given package, etc) so it's efficient |
164 |
for third party and proprietaryware (Oracle, for example) folks to |
165 |
support them, etc. That's the domain of the Enterprise distribution, and |
166 |
Gentoo's whole structure just doesn't fit. Now, it certainly WOULD be |
167 |
possible for a third party to create a Gentoo BASED Enterprise |
168 |
distribution, and that would be great! However, I'd argue that Gentoo |
169 |
itself can't do this, because it's antithetical to the very assumptions |
170 |
on which Gentoo is based, and were Gentoo to head that direction, it |
171 |
would by definition, lose those qualities for which it is known and which |
172 |
attracted many of us to it in the first place. |
173 |
|
174 |
So as I said, every year or two there's a big discussion on -dev about |
175 |
trying to force Gentoo into the Enterprise mold, and unfortunately, every |
176 |
year or two when it does, some devs tend to get disillusioned and leave, |
177 |
because the rest of the devs resist casting Gentoo in concrete like that, |
178 |
and as a result, it'll never be the big money big business distribution |
179 |
these disillusioned devs seem to think they want. But if they wanted |
180 |
that, my question is why they're working on Gentoo in the first place, |
181 |
when there's far better matches for that ideal. Let Gentoo do what |
182 |
Gentoo does best, and let Red Hat do what Red Hat does best. |
183 |
|
184 |
While we're at it, the same applies to the usual KDE/GNOME/XFCE/etc wars, |
185 |
and the VIM/EMACS wars, and ... and ... I've come to realize that the |
186 |
approaches are just different, neither one "better", altho certainly |
187 |
individuals will find one or the other "better" for their individual |
188 |
needs. But GNOME folks complain about the confusing array of |
189 |
configuration options available on KDE, and KDE folks complain about the |
190 |
crippling lack of configuration options and the "There can be only one |
191 |
best way and we know it" philosophy GNOME seems to have at times, and |
192 |
what few realize is that it's NOT a wasted duplication of effort, and |
193 |
that the GNOME folks wouldn't WANT the KDE folks there breaking their |
194 |
precious ONE BEST WAY ideas, and conversely, the KDE folks wouldn't WANT |
195 |
the GNOME folks trying to take away all those nice config options we |
196 |
like, so it really IS best they keep to their own projects, cooperating |
197 |
where they can of course, but still separate projects. And a parallel |
198 |
idea applies to VIM/EMACS, etc. |
199 |
|
200 |
Let each project do what it does best, and attract the devs and users |
201 |
that fit best, and let the alternatives continue to exist and flourish as |
202 |
well, so everyone finds a home that works for them, and nobody ends up |
203 |
breaking the already working just fine solutions others have developed |
204 |
for their own needs/wants niche. |
205 |
|
206 |
-- |
207 |
Duncan - List replies preferred. No HTML msgs. |
208 |
"Every nonfree program has a lord, a master -- |
209 |
and if you use the program, he is your master." Richard Stallman |