1 |
Replying to the gentoo-osx mailing list here to include the people |
2 |
actually being called. For the sake of those people that haven't read |
3 |
this yet, I retain the lengthy quotes. |
4 |
|
5 |
Kito wrote: |
6 |
> |
7 |
> On Aug 27, 2005, at 4:32 PM, Grobian wrote: |
8 |
> |
9 |
>> Kito wrote: |
10 |
>>> First, I'll apologize for this being a brief brain-splurt... |
11 |
>>> |
12 |
>>> As the new portage grows near(savior) with support for multiple |
13 |
>>> PORTDIR, added to the increasing confusion/kludginess of the current |
14 |
>>> collision-protect mess, why do we not start a repo for the |
15 |
>>> base-system package ebuilds(bash,perl,python,readline,etc.) that |
16 |
>>> gives a proper gentoo environment in an alt-prefix? |
17 |
>> |
18 |
>> I can't really think of a counter argument... |
19 |
>> |
20 |
>>> In the interim it can simply be an overlay, using a portage snapshot, |
21 |
>>> giving us free reign to do what is needed to get the important things |
22 |
>>> working without having to worry about Apple provided files. Then with |
23 |
>>> some simple PATH mangling(think finks /sw/init) we can start making |
24 |
>>> use of it now and actually be a step ahead of the game. |
25 |
>> |
26 |
>> I'm lovin' this idea. kito++; Completely fits into my idea of a |
27 |
>> 'pilot'. |
28 |
>> |
29 |
>>> Doing this outside the main tree has IMHO worked quite well for |
30 |
>>> g/fbsd project, and allowed them to get their base-system in order |
31 |
>>> before they had to go mucking up the tree with hacks that may or may |
32 |
>>> not be permanent, and is also the reason they aren't hated quite as |
33 |
>>> much as us by the other projects... |
34 |
>> |
35 |
>> We can't revert that. Diego is getting some things done for us, we |
36 |
>> would need too. So we can simply fly on his wings every now and then. |
37 |
>> Good. Getting life when we actually have something? Is it possible |
38 |
>> to be against that? |
39 |
>> |
40 |
>> So, from a managing point of view, I throw in a few things here: |
41 |
>> - who is in charge/takes the lead in setting something up |
42 |
>> - what are the concrete steps to take |
43 |
> |
44 |
> First off, creating the repo. Path of least resistance would be adding |
45 |
> an overlay in gentoo-src/gentoo-projects/darwin/macos, but thats not |
46 |
> really the best way IMHO... Slickest way to stay as in sync as possible |
47 |
> with the main tree would need to be investigated & established...maybe |
48 |
> svn would be a candidate, not sure on that yet. |
49 |
|
50 |
At best rely on existing architecture, with known tools. I'm still |
51 |
frustrated that I haven't been able to install svn normally. Where does |
52 |
Diego have his preliminary BSD stuff? |
53 |
|
54 |
> Do the initial import of the minimum required packages from the main |
55 |
> tree, which shouldn't be too hard, basically a stage1 (see a |
56 |
> packages.build file in one of the linux profiles for instance) give or |
57 |
> take some things. |
58 |
> |
59 |
> Create a new profile(s), which should probably be a complete tear down, |
60 |
> Finn Thain has had some great suggestions in this area. FINN! Care to |
61 |
> jump in here? |
62 |
|
63 |
^^^ Finn ^^^ :D |
64 |
|
65 |
> The user interface would need to be hashed out as well of course. How do |
66 |
> you install/bootstrap it? Where is the local configuration data stored? |
67 |
> This is an area that I think would be acceptable to take some Mac OS |
68 |
> specific indulgences, such as plists for the main config data(prefix |
69 |
> info, search paths, etc), pkgs/dmgs to bootstrap/install, and I also |
70 |
> think we should abuse the umbrella Framework mechanism when feasible. |
71 |
|
72 |
Wow, using plists would be a first start on getting portage widely |
73 |
accepted because it includes the buzz word XML. LOL. On a serious |
74 |
note, I think Apple has shown XML can work somehow. At least it has an |
75 |
open character, and it's great when you can 'script' your Keynote |
76 |
presentation by just doing string manipulation in a big XML file. |
77 |
So I would say, let's try to use this horrible XML on a pilot base for |
78 |
small configuration files. Maybe we should do it better than Apple at |
79 |
some point because their XML does not always make use of the tree |
80 |
structure of XML. For XML I would say: only deal with it if it looks |
81 |
appropriate for the case and it is relatively easy to extract the data |
82 |
(which is often very flat, as in the .plist files). |
83 |
Let's indeed make it a 'native' application for OSX users. Native in |
84 |
the sense of how it installs and looks like. |
85 |
I may give file locations a thought today, but maybe I should know the |
86 |
Framework stuff a bit better first. Can we install the whole Gentoo |
87 |
stuff in a Framework? or is it better to just use a shortest path |
88 |
algorithm and end with /gentoo? Actually the user should be able to |
89 |
select a disk to install to during install... |
90 |
|
91 |
>> - who will participate into this pilot system |
92 |
> |
93 |
> You can obviously count me in =) |
94 |
I'd like to be part of this pilot too! |
95 |
|
96 |
> Since we will be wanting to abuse the new hotness in portage as it |
97 |
> becomes available, the portage team will have to be involved at least a |
98 |
> little, probably whether they like it or not :p But this should bear |
99 |
> some fruit that would further portage as well IMHO, not just Mac OS. |
100 |
|
101 |
ferringb was in our channel two days ago with a small question I could |
102 |
help him out with on rsync. If I got it well he was related with the |
103 |
OSX project from the start to get portage going. Maybe he's the one to |
104 |
be in it this time too? |
105 |
|
106 |
> Some random broad philosophy/design goals that I think should be stated...: |
107 |
> |
108 |
> The repo should never ever never ever EVER rely on anything it doesn't |
109 |
> know how to supply itself with, whether that be a tool, a library, |
110 |
> knowledge of a filesystem, a host, a protocol, whatever. It doesn't |
111 |
> matter how it gets it, it just needs to know at least one way to get it. |
112 |
> This implies of course proper implementation of ferringbs BDEPENDS idea. |
113 |
|
114 |
so, you mean if there is something (a filesystem) portage hasn't |
115 |
installed, then we should create the proper handles to deal with the OS |
116 |
provided one? As in create a compatibility tool for "fdisk.HFS+". I'm |
117 |
a bit clueless on how exactly you want to achieve what you want. Maybe |
118 |
I don't understand correctly what you want exactly too. |
119 |
|
120 |
> Although we want this for ppc-macos at the moment, it should not be |
121 |
> specific to either of those things, ppc, or macos. Adhering to this rule |
122 |
> assumes a lot...again the BDEPENDS issue, and keeping as close to the |
123 |
> main tree as possible, with those things in place, and done |
124 |
> properly(i.e. what it REALLY takes to bootstrap an |
125 |
> {x86,amd_64,ppc,ppc64,mips,sh,whatever}-{linux,*bsd,darwin,macos,whatever} |
126 |
> toolchain) , you have a sane cross-compile ready repo, that is pretty |
127 |
> damn portable. |
128 |
|
129 |
That would be really great. |
130 |
|
131 |
> Binary packages have to work. Thats a fun one. But all this done |
132 |
> properly, should allow for at least a little more consistency than the |
133 |
> current situation. I'm still sold on using xar[1] for this despite the |
134 |
> rather heavy deps (they are deps I would want in most any environment |
135 |
> anyway - libcurl,ssl,libxml,zlib), and it just fits the bill too well |
136 |
> imho, support for most standard arch specific data such bsd flags, ACLs, |
137 |
> resource forks |
138 |
> ,.etc as well an excellent TOC structure that is perfect for storing |
139 |
> environment settings and package metadata. |
140 |
|
141 |
Again XML. If you do it XML, you have to do it all XML, something Apple |
142 |
apparently understood. It appears we will have the blessings if we use |
143 |
XML, so I think we should. In the end we can always dump all that XML |
144 |
into MonetDB/XQuery to have extremely fast querying over all the files, |
145 |
tree based. I think it would seriously be the first project to use |
146 |
XQuery and XML for it's configuration. However, if you come to think of |
147 |
it, it is a tree, an extensible tree, and might be a much more a logical |
148 |
choice than it appears to be. |
149 |
|
150 |
> Avoid package.provided or anything of its likeness like the plague. |
151 |
> This repo needs to describe a toolchain from the ground up, regardless |
152 |
> of the host. "What CAN it build and how?", not "What WON'T the host OS |
153 |
> let me do". |
154 |
|
155 |
Uhm, yes please! |
156 |
|
157 |
> Keep the number of ebuilds to a bare minimum. We can't get too carried |
158 |
> away with maintaining a complete tree, or we risk drifting too far |
159 |
> downstream and the zealots pushing Darwin/Mac OS support out of the main |
160 |
> tree entirely. That would be bad. This can't go in the direction of a |
161 |
> fork, just an experimental branch that will be merged back in at some |
162 |
> point. |
163 |
|
164 |
Ok, this requires identification of the main packages we need. I think |
165 |
along the lines of Python, Perl, bash and such. We should come up with |
166 |
a (preliminary|complete)? list. |
167 |
|
168 |
>> - glasjnost and perestroika please! |
169 |
>> |
170 |
>> I think it's important to have a fairly focussed pilot shared by just |
171 |
>> a very few devs to figure out how to get it set up and deal with it. |
172 |
> |
173 |
> I agree, the less noise, the more work will get done. Politics entering |
174 |
> even a little will kill any hope of progress and momentum. |
175 |
|
176 |
It appears we're on the same wave length here ;) |
177 |
|
178 |
> |
179 |
> --Kito |
180 |
> |
181 |
> [1] http://www.opendarwin.org/projects/xar/ |
182 |
|
183 |
-- |
184 |
Fabian Groffen |
185 |
Gentoo for Mac OS X |
186 |
-- |
187 |
gentoo-osx@g.o mailing list |