On 7/14/05, Keith M Wesolowski <[EMAIL PROTECTED]> wrote: > On Thu, Jul 14, 2005 at 11:47:26AM -0500, James Dickens wrote: > > > easy to symlink from a community location even if you have to have one > > version for packages compiled with gcc and another that are compiled with > > Sun Studio, 2 is still better 4 or 8. > > The alternative would be to declare as policy that all such software > be built with the same compiler. That's simpler, but it restricts > developer choice and in some cases might make it impractical to > include some piece of nonportable software.
The Blastwave approach is simple really. The base OS to be supported is Solaris 8 on x86 and Sparc. We rely on the backward compatibility nature of Solaris to _ensure_ that software that works fine on Solaris 8 actually does work as expected on 9 and 10. This sometimes is not the case and we have to resort to arcane testing and adhoc procedures to work out a troublesome package like Scribus. The compiler is to be Sun ONE Studio 8 and only recently have we gegun to look at Sun ONE Studio 10. For obvious reasons when one considers the AMD64 architecture not to mention the overall improvements in the Sun ONE Studio 10 developer tool set. GCC has been used in cases where the code is simply not at all responsive to the Sun ONE Studio tools. KDE is a geat example and I think that the work done by Stefan really is fantastic in this regard. We can finally get KDE to build with the "standard" tools. The concept with Blastwave was simple : ensure that the process was open and that software for Solarisusers was built and maintained by other Solaris users. Add in some quality control and mirror sites with the pkg-add delivery mechanism and you have the makings of a nice software project that everyone can use. Here is something that I wrote a long time ago but it descibes the project I think. ---------------- blastwave.org What is Blastwave by Dennis Clarke The "blastwave.org" community concept and website were created by the author in response to a perceived need by Solaris users. The need was for publicly available open source software that was maintained by members of the users community. This entailed more than just access to software via ftp or web download. This meant that access to the software maintenance process would be open to members of the users community. The needs of the Solaris user would be met by another Solaris user. What was needed was an open facility that would allow users to create the software packages for themselves. The "blastwave.org" web site was created to respond to this need. Those needs are now being met. Software "maintainers" join the organization via open invitation. Either we approach them or they approach us with a need. In most cases the need is mutual and then the access to the site is granted. The maintainer is then granted access to "build servers" as well as the necessary storage on the central "blastwave.org" NFS server. The maintainer is expected to conform to software package standards and the resultant software package is submitted for open review and testing by the members of blastwave.org before public release. The software package will be subject to review by the public and a bug reporting process is in place for feedback. These bug reports are assigned and then handled based on priority and severity. The software, upon public release, is delivered to the Solaris user by a number of "mirror sites" located around the world. The end user is not expected to manually ftp or http download a file, unpack and then install the software package as well as all its dependencies. This is seen as an unreasonable burden on the end user. The "pkg-get" software was written such that the end user need know nothing other than the name of what they need. A simple command line entry by the user will result in the package being downloaded from a mirror site, checked for dependencies, then all of these software dependencies will be installed for the user. Most of the software packages will be configured for the user by scripts written such that the end user will be up and running instantly. The Apache web server package is very popular for this reason. The software packages are coordinated to work together, even across different maintainers. Our collection of apache modules is a fine example of this. A user can run a single pkg-get command, to install a working php webserver with openssl support, in one pass. Additional apache modules can easily be added via the pkg-get process. All the software is created and packaged for the x86 and Sparc Solaris user on a baseline release of Solaris 8. All the software packages must be available for both x86 and Sparc before public release. We review and test intermediate builds internally. The software is expected to be available as a 64-bit solution whenever it is possible to do so. 2. HISTORY The "blastwave.org" site and build servers were born out of a grassroots movement which had little in the way of resources. In the beginning the maintainers list was no more than four people. The initial web site was created in less than a day with an old discarded Sun Ultra 1 server. The build servers were equally impressive. There was a single Ultra 2 with 200MHz processors and 256Mb of RAM. The x86 build server was a clone with 400MHz Pentium processors and 512Mb of RAM. We were very thrilled when the web server saw its first 1000 hits. That was the first month. As the word of our existence spread through the internet we rapidly saw maintainers join, create software packages and then respond to public bug reports with maintenance updates. We had found that there were many bright and motivated Solaris users that were happy to become the package maintainers for "their own software". They took personal ownership and pride in what they had built and were happy to defend its viability via maintenance and cooperation. Our need for internet bandwidth was not seen as a great issue as we seldom transfer large amounts of data. Then after six months we had three mirror sites and some fifty or so software packages for x86 and Sparc Solaris users. We had become a community open source site for Solaris users. Then came dramatic growth. [ new paragraph here ] By late 2004 we were able to measure some 8000 software package ddownloads daily from one mirror server. There were about thirty mirrors. The website saw explosive growth and was well over a quarter million visitsper month. It seemed reasonable to assuem that the project was successfully providing software for Solaris to users that wanted a single unified source of libraries and dependencies. Certainly people wanted this software to be available to them easily and feedback indicated that end users were very happy indeed. Software package number 1000 was added in Q1 of 2005 with no slowdown in growth and the administration work required to maintain the project was now well past a full time task. 3. THE PRIMARY PROJECTS The initial intent of the "blastwave.org" site was to provide Solaris users with equal access to open source software regardless of the users choice of architecture. We now see blastwave.org as an open source community site for Solaris users. 3.1 CSW - Community SoftWare Every software package is to be current and to be provided for the x86 and Sparc editions of Solaris. This is seen as a firm mandate. The initial members of "blastwave.org" debated on the base release to support and Solaris 8 was accepted for various reasons. The most obvious was cost. Solaris 8 was seen as being a very recent and affordable option for x86 users and Sparc users alike. We also knew that software that ran well on Solaris 8 would almost certainly run with the new Solaris 9 release. The Community Software ( "CSW" ) project was thus begun. Initially the CSW project was the only real reason for the organization to exist. Recent progress with Solaris 10 has forced the addition of specialized Solaris 10 build servers. The maintainers have all agreed that we shall use Solaris 8 as our base operating release. We have also agreed that Solaris 10 is a wonderful creation and that dedicated Solaris 10 build servers are needed to support the AMD Opteron 64-bit architecture. The simple creation of a software package which could then be offered to the public via FTP or HTTP download was seen as primitive. Debian Linux provides its users with the ability to simply get software via a facility called "apt-get". This script would allow the end user to simply type a command line and then the software and all dependencies would be downloaded and installed. We felt that this was a far more intelligent way to proceed. Therefore the CSWpkgget tool was crafted by Philip Brown. The end user could now select their software from a list with the command "pkg-get -a". The user may install all that is needed with "pkg-get -i softwarename". The most wonderful facility is the ability to update software, all software, with a very simple command "pkg-get -u". The last, and perhaps MOST salient point, is that the CSW project provides rapid response to the user community via software offerings, bug reports and fixes. Users did not need to wait for months to gain access to latest editions of software or for a bug report to be handled. The KDE 3.3.1 packages were created in less than eight days from the day that the source was released. This rapid response ensures that we may offer Solaris users the most up to date software before any of the Linux distributions. We refer to this speed as "internet time". Critical bugs will be fixed within days. The CSW packages for Openssh and Openssl are popular for this reason. The CSW project has core maintainers and software projects. The admin and owner Dennis Clarke is responsible for all infrastructure that is required by the project. Philip Brown is the maintainer of the core foundation software offerings as well as the primary creator of our standards for packaging and naming. We have a dozen members that are involved in almost every large software build at various levels. The process of creating a large package such as KDE, GCC or GNOME needs input from a number of people to ensure a quality product. There are another ninety members that become involved as required or requested for their own software packages. A number of software engineers from Sun are now maintainers also and this has allowed for a gentle merger of the community programmers with internal Sun developers. There is a wonderful cooperation and team effort by Solaris Community members and Sun Microsystems people. 3.2 Solaris 10 and Solaris Express Each and every package that is created within the CSW project will be expected to run within Solaris 10. This expectation clearly requires software testing with the most recent build of Solaris 10. Therefore separate Solaris 10 servers have been required for testing by the maintainers. We feel that Solaris 10 build servers for each supported architecture is absolutely required as the Solaris 10 release will force the demand upon us. The team effort between Sun and the Solaris Community is very powerful. Sun has donated AMD Opteron hardware as well as UltraSparc III servers to ensure that Blastwave can create and deliver software to all Solaris users. ------------------- The story is not complete as I now have the PowerPC port project to add into the mix and also I feel that users should have access to test hardware via console access. Let's suppose that someone needs to completely build and then BFU an OpenSolaris build but they do not have access to the hardware? I have long wanted to build an OpenSolaris GRID and I sent in a proposal on such a structure to Stephen Harpster months ago. The idea was simple really, give people access to what they need and create a low barrier to entry. Help them. Let them completely netboot a server from a jumpstart server and then build OpenSolaris and let them do what they want. The only matter left would be to manage the resouces. Something that I have been doingfor some three years now. I personally feel that this does not need to be torn down and thrown away in order to move forward. I'd like to believe that it can be expanded and then grown with other features such that Solaris users and OpenSolaris project members can get what they need, built it, test it, play with it, work with others and then roll it out without ever leaving their chair. At least that is my vision. Dennis Clarke Director and Admin for blastwave.org [EMAIL PROTECTED] ps: I can generally be found at irc://irc.blastwave.org/blastwave _______________________________________________ opensolaris-discuss mailing list opensolaris-discuss@opensolaris.org