Gentoo Archives: gentoo-catalyst

From: Eric Edgar <rocket@g.o>
To: gentoo-catalyst@l.g.o
Subject: Re: [gentoo-catalyst] Couple of questions
Date: Thu, 15 Dec 2005 15:58:47
Message-Id: 20051215155809.GA24652@toucan.gentoo.org
In Reply to: Re: [gentoo-catalyst] Couple of questions by Mikey
1 On 08:47 Thu 15 Dec , Mikey wrote:
2 > On Thursday 15 December 2005 07:34, Chris Gianelloni spammed:
3 >
4 > > It is a bug in the snapshot/tree, as I stated in bug #115445. I'm
5 > > almost getting tired of explaining things seeing as how I have to do it
6 > > multiple times. Rather than me repeating myself, please read each
7 > > message a few times instead? ;P
8 >
9 > > know will not work as expected. We are not stupid. We have been
10 > > working with portage and Gentoo for a long time and know what is and is
11 > > not possible quite well by now.
12 >
13 > As I am tired of repeating over and over that something is wrong with the
14 > stage1 target and all you seem to be able to do is blame me. It only took
15 > me 5 freaking times to explain something was wrong.
16 You also have to concider that you were doing things incorrectly. We
17 only have so much time in the day and have to go after the low hanging
18 fruit first per say. While you are correct that something is wrong in
19 the tree the initial results did not indicate that.
20 > So hey, you are not
21 > the only one who gets tired of repeating shit to thick headed people. My
22 > snapshot version was right there in the spec files I posted, a simple 20
23 > minute test on your part would have confirmed the bug.
24 For you it might be a simple 20 minute test. For us it takes much
25 longer. We are working on getting catalyst ready to deploy a release.
26 Catalyst is the tool that allows us to do this .. that is its primary
27 purpose from our perspective. While we do accept patches and generally
28 take the view point that catalyst should be as generic of a tool as
29 possible we have to shift gears into release mode when it comes time to
30 put out a new gentoo cd. There are only 2 main developers working on
31 catalyst at the moment, Myself and wolf31o2.
32
33 We are fully aware that there are bugs and inconsistencies and warts and
34 who knows what else. Thats what happens when you have numerous
35 developers working in the tree. I dont want to get into a political
36 flamewar on how it should be different. Frankly we dont have the time.
37 We are developers who are donating our time to try and do things that
38 interest us.
39
40 I am a catalyst developer now because the concept interested me. I
41 started hacking on it to make it better. I know its not perfect but its
42 good enough right now for its stated purpose of releasing gentoo install
43 media. I am working on generalizing things and if you look at the code
44 between catalyst1 and catalyst2 you will see significant changes that
45 include additional error checks and user warnings for the most common
46 issues we see.
47 > Apparently you
48 > portage people are not as smart as you would like me to believe, portage
49 > has its share of bugs and rarely behaves consistently. I have been
50 > compiling linux from source for over 12 years, I happen to know a little
51 > bit about what I am talking about as well. Probably not as much as you
52 > know about gentoo, but hey, I can recognize an obvious glaring problem when
53 > I see it.
54 from my standpoint I have seen you as quite firm in your convictions
55 that you were right. I agree that the stage1 bug you posted is valid,
56 but you could have also performed the few requested steps to follow
57 wolf31o2's suggestions.
58
59 Catalyst is designed to be as repeatable as possible. We havent found
60 every issue yet and are always looking at smoothing those bumps over.
61 Making a new profile is really very easy to do and with catalysts
62 portage_overlay features quite painless to do. It works just like an
63 overlay on a host gentoo system. I can understand that it might have
64 sounded difficult or time consuming to follow the recommendation but a
65 better course of action from you would have been how can I do this .. or
66 how do you guys do this. If it sounds like it sucks for you maybe it
67 sucks for us too, but we just havent had the time to code a simpler way
68 yet. We are not out to make anyones life difficult, remember we are
69 volunteers here with limited time.
70 > If you would have looked at what I posted in my bug report you would find a
71 > myriad of bugs. Catalyst let me do things it is not supposed to do, like
72 > use a subarch during stage1 when it shouldn't. Emerge told you it was
73 > going to install packages in a certain order, yet it didn't (not your bug).
74 > For some reason, baselayout was missing from the packages that were going
75 > to be installed, even though catalyst asked for it to be installed. You
76 > indicate that usage of an envscript in catalyst.conf is normal usage, but
77 > fail to inform the user NOT to use USE flags in there or it will break
78 > something (that should be handled by catalyst). You tell me catalyst is
79 > designed to not allow customization in the lower stages, then tell me the
80 > bug is invalid because I tried customization in lower stages.
81 >
82 > But hey, I am sure it is a winning strategy to just treat all of your
83 > debuggers like they are idiots.
84 You are not an idiot, you were just very firm in thinking the tool
85 should be used in X way and basically need to learn more of how the tool
86 works. Suggestions were made to get you in the right direction yet it
87 seemed like you were not interested in following those initially.
88
89 > > Because making changes outside of the scope of the profile is broken.
90 > > It produces an inconsistent stage, since the USE flags passed via an
91 > > envscript *never* see the inside of make.conf, giving you a stage that
92 > > *will not* behave as you expect it to. Why leave this option available
93 > > when it is *obviously* misunderstood and causes errors? You have proven
94 > > here exactly *why* the option is not there.
95 >
96 > Gee, listen to what you are saying. Using USE flags in stage2 and beyond is
97 > broken and produces inconsistent stages.
98 He did NOT say using use flags was broken. He said using use flags via
99 an environment variable was broken. The envscript is a tool to help
100 build the initial hardened stages for example. It is for developers who
101 need additional functionality that only a small number of the developers need.
102 We get our use flags out of the profiles because then every one can
103 build a stage1 the same way. We grab the use flags and the packages to
104 be built right out of portage. So this is not something that is broken.
105 If you want different use flags for example setup a new profile and use
106 that .. That is how catalyst is designed to work. It works with the
107 other tools such as portage instead of trying to work around them.
108 Obviously the tree changes and we have to deal with that .. but that has
109 already been discussed.
110 > I would say that is a major
111 > problem that needs to be fixed before anything else, considering it is the
112 > most basic functionality that sets gentoo apart from all other linux
113 > distributions. Stage2 ignores improper use flags via bootstrap.sh, stage3
114 > should be able to handle whatever use flag you throw at it, portage itself
115 > should be able to handle that. So what is the problem with letting
116 > catalyst generate the use flags and put them into the make.conf right along
117 > with the cflags, mirrors, etc? Don't worry, it is a rhetorical question.
118 The problem is we already have a way to do that via profiles as I have
119 discussed. Why code 2 methods to do something when we already have one
120 in place that works as expected for us. Doing it this way allows us to
121 have very simple stage1 stage2 and stage3 spec files rather than
122 cluttering them up with ever changing use flags that may or may not be
123 missed because some developer changed something in the tree and didnt
124 inform us. As it stands now a developer can change it in the tree and
125 update the profiles and most of the time it just works.
126
127
128 > > > nls, userlocales, nptl, nptlonly, multilib I think, and runs with
129 > > > USE="-* build bootstrap allowed_flags", so why the restriction from
130 > > > using nptl and
131 > >
132 > > There is no such restriction, as stated over and over and over and over
133 > > again. Use a profile to make these changes.
134 >
135 > I see, using USE flags in the profile is not broken, letting the user
136 > specify USE flags anywhere else is. Encouraging users to dork around with
137 > the profile is a good idea, set USE flags bad idea. Brilliant.
138 > Particularly when you consider the fact that you can build "safe" USE flags
139 > into catalyst just like you build in "safe" cflags. Which, by the way, are
140 > deprecated for gcc 3.4.4...
141 >
142 > > No, you're being dense, rather. I have explained it. You just seem to
143 > > dislike my answer. Stages 2 and 3 must match the profile or they will
144 > > not install properly in all cases. Period.
145
146 you are also missing the fact that the profile stays consistent from one
147 stage to the next. custom use flags in a spec file can and will very
148 easily be missed or dropped or typoed etc. It really is a better design
149 choice to do it with profiles.
150
151
152 > Then something needs to be fixed, because the underlying process is broken.
153 > It needs to be the USE flags that match, it shouldn't matter where they
154 > come from. Catalyst is not producing consistent results right now in spite
155 > of locking it down to the profile. Locking catalyst down to extremely
156 > narrow functionality because portage might break at any moment is a shame,
157 > because it is a great tool.
158 >
159 > But I just don't buy your explanation, USE flags are calculated the same way
160 > regardless of where you put them, in the profile or the environment. The
161 > precedence might change, but they are still calculated the same way. If I
162 > create a profile and take out nls, catalyst should handle it the exact same
163 > way as if I stuck it in the environment....
164 >
165 > > Then I wouldn't accept them. Catalyst is modular. You're more than
166 > > welcome to replace any of the scripts to do things the way you want
167 >
168 > I don't think it is catalyst that is broken, but catalyst can be used to
169 > insure consistent results. Simple things like install the toolchain in the
170 > proper order instead of using multi-package emerge statements that might or
171 > might not work correctly depending on what day of the week it is...
172 >
173 You assume that its a simple thing to compile a tool chain in order.
174 But what you miss is the fact that upstream developers consistently
175 change how things are done. We have coded catalyst the best way for us.
176 Using profiles allows us to leverage other developers time in the tree
177 to catch a majority of the issues for us. They can help reorganize the
178 way things are built if necessary via a profile. Otherwise we would be
179 constantly updating our spec files and never know exactly what was going
180 on.
181
182
183 > > them. Just don't come asking us for help when you do things that we
184 > > know will not work as expected. We are not stupid. We have been
185 > > working with portage and Gentoo for a long time and know what is and is
186 > > not possible quite well by now.
187 >
188 > Did I say you were stupid? And after this little experience, _I_ would be
189 > the stupid one for asking for help, as long as this is the response I get.
190
191 Rocket

Replies

Subject Author
Re: [gentoo-catalyst] Couple of questions Mikey <mikey@×××××××××××.com>