[ This is my first and only cross-post to this list as everything
else will take place at companion-discuss at opensolaris.org ]
> Bart Smaalders wrote:
>> I'm both a user of blastwave and another Sun engineer
>> cycle-stealing on this project. From my point of view,
>> what I'd like to see happen with a community software
>> distribution for Solaris Nevada is:
>>
>> 1) large scale participation of OpenSolaris developers/users.
That is a "want" or a "need" ?
>> 2) automatic installation of required software dependencies
That feels like a "need".
>> 3) compilation on recent enough Solaris version that modern
>> features can be enabled. Eg mplayer can use XVideo, SSE,
>> SMF, etc; where appropriate, amd64 bit versions, etc.
That feels like a want. Tough to implement on sun4m.
>> 4) No duplication/replacement of libraries already
>> present in the target Solaris release.
Also super tough given the multiple versions of Solaris to be
supported. It may simply be a case where there will be multiple
trees of software. Currently Blastwave has a tree for Solaris 8
on Sparc and x86. This is then linked to 5.9, 5.10, 5.10.1 and
of course 5.11. We do not yet have a link for SchilliX etc.
The ultimate solution is to have a source code repository that
allows the code changes to be submitted and then have a package
produced that targets a given platform. By a build system and
in an automated fashion. This is what we are doing at Blastwave
now with the new build system.
>>
>
> It's poor form, I suppose, to follow up on my own comments,
> but during today's discussion it became clear to me that
> there's likely another requirement for a successful community
> software distribution:
>
> 5) Builds need to to be reproducible in all dimensions,
> including time (two builds of the same software at
> different times produces the same results), machines
> (there's a defined way of configuring build machines
> such that it is possible for two individuals to follow
> defined steps to configure two different machines that
> produce the same results) and space (it is possible for
> people anywhere (eg outside of sun, at blastwave, at
> sunfreeware, at my house) to download the software,
> build instructions and produce the same bits.
Is this a "need" or a "want"? In order to ensure that you can
reproduce the exact same bits at "your house" then we need to
completely spec out the build platform as well as patches etc.
The Blastwave build farm uses Solaris 8 as the base because we
can be assured that anything that builds on Solaris 8 is promised
to work flawlessly on Solaris 9 and 10 etc. I say promised and
not "assured". In the event that something does run on Solaris 8
but not on Solaris 9 or 10 or 11 then we need to look at the
source and perhaps make conditional compile tweaks.
Those sort of changes then need to be fed to the build system such
that a unified base package can be produced or a specific software
result be produced. In either case you would then need all of
this to be reproducable at "your house". This explains why the
Blastwave project implemented Subversion such that a person could
easily get the code changes.
http://svn.blastwave.org/wiki/GettingStarted
However, having said all of this, I am still bothered by what appears
to be a desire on the part of Sun to reproduce all of this except
inside Sun and for the purposes of being "Sun blessed". The only
clear benefit being that Sun has all the money and people to do such
a thing that will clearly compete with its own Solaris Community
project. Yes, that is a combative stance but I see no evidence to
suggest any other posture on my part.
--
Dennis Clarke