Hi Peter,

Thank you for your comments.  Please see my responses below.

Peter Tribble wrote:
> On 9/6/07, Karen W. Tung <Karen.Tung at sun.com> wrote:
>   
>> We are in the process of putting together the feature list for the 
>> Distribution
>> Constructor project beyond the prototype release.  The
>> proof-of-concept Distro Constructor has very limited functionalities as
>> specified our project page 
>> (http://opensolaris.org/os/project/caiman/Constructor/)
>>
>> We have come up with the following for the early 2008 release.
>> This is a very high level list of features.  When we come to a more final
>> list, we will have further discussions about details on each item.
>>
>>         * From a GUI, the user should be able to select a list of packages to
>>           be included to build a custom distro.
>>     
>
> Selecting packages is likely to prove tedious. While selection at the 
> individual
> package level  is necessary, I believe that something like package clusters
> would be a more useful unit of selection. (And I have tried to build a 
> jumpstart
> profile builder, which isn't that different in concept.)
>   
Though we have not done the implementation, it is always our goal to 
display packages
by some sort of grouping.  That way, people can select groups of 
packages based on the
functionalities they want.  We will also allow selection of individual 
packages if the user chooses
to do that.
>   
>>         * From the command line, user provide the Distro Constructor (DC) 
>> with
>>           a list of packages.  The DC will pull in all other necessary 
>> packages
>>           to create a self-consistent installation image.
>>
>>         * Given an existing distribution, the DC will create a new 
>> distribution
>>           based on addition or subtraction of contents as specified by the 
>> user.
>>     
>
> How does subtraction work? In particular, does the distribution description
> know which packages were specified, and which were added to satisfy
> dependencies? And if a package were subtracted, what happens to those
> other packages that were only added in order to satisfy the dependencies
> of the now removed package?
>   

Given an existing distribution, the Distro Construction will be able to 
figure out which packages
are included in that distribution.  If you add package(s), all other 
packages that these new packages
depend on will be included as well.  If you subtract package(s), we will 
examine the dependent
packages of the package to be deleted.  If those are not used by other 
packages that will still
remain in the distribution, they will be deleted as well.  If they are 
being used, then, only the
package you specified will be deleted.  If the package you want to 
delete is a dependent of
another package that will still remain on the list, we inform you about 
that, and not do the deletion.
The goal of the Distro constructor is always to produce an image that's 
self-consistent.
>   
>>         * Special configurations specified in the GUI or on the command line
>>           can be saved to a file, and the file can be used as inputs to the 
>> DC.
>>
>>         * The DC release will come with a few predefined "useful"
>>           configurations, which can be helpful to users who want to create 
>> their
>>           custom distribution with some minor modification.
>>     
>
> I would like to see specific examples of the sort of configurations under
> consideration .
>
> In a sense, though, if suitable higher level groupings of packages
> are defined then the construction of useful configurations becomes
> much easier.
>
>   
We don't have the list of configurations defined at this time.  When we 
have a proposal,
we will post them so everyone in the community can review and comment.
> It's not necessary for all these "clusters" to be defined by the DC project,
> or even by OpenSolaris. It would be nice if there was a format to define a
> "cluster" that could be  loaded into the DC, so that third parties could
> define units of functionality to meet their specific needs while relying on
> the DC to build the rest of the image.
>
>   
I think this can be achieved by item 3 above.  Third party can save 
their special configuration
after they go through the trouble of defining it once, and then, use 
those settings
for constructing other images.  If they want, they can even post their 
special configurations
on some sort of public forum/repository so that other users can utilize 
what they have.
>> Features not to be included in the early 2008 release, but will be
>> consider for the future.
>>
>>         * Create a distribution based on an installed and configured system.
>>     
>
> Why not? Or, in what sense is this feature different from feeding the
> list of packages on an existing system as input to the DC?
>
>   
It is not being planed for early 2008 release at this time mostly 
because it is our resource
restriction.  It is different from feeding a list of packages on an 
existing system because after
people install their system, they will no doubt want to make 
customizations to it.
What if the customizations they made is not by adding or removing 
packages on the system?
If they just add some files to customize their system, how do we find 
out about those
added files?  What about files modified?  These are just some of the 
issues that we need to
deal with.  I am sure there are other we haven't think of yet.  So, it 
is probably best for us
to postpone this feature until a future release so we have sufficient 
time to figure out all the issues.

Thanks,

--Karen

Reply via email to