Subject: Re: The future of NetBSD
To: Marc G. Fournier <scrappy@freebsd.org>
From: Gilles Chehade <veins@evilkittens.org>
List: netbsd-users
Date: 09/01/2006 01:51:11
Marc G. Fournier wrote:
> On Fri, 1 Sep 2006, Gilles Chehade wrote:
>
>> Marc G. Fournier wrote:
>>>>
>>>> I doubt that'll be productive -- NetBSD, FreeBSD and OpenBSD have all
>>>> different goals...
>>>
>>> Even at the kernel level? Look at device drivers and vendors as one
>>> example ... companies like adaptec have to write *one* device
>>> driver, for, what, 50+ distributions of linux ... for us, they need
>>> to write one for FreeBSD, one for NetBSD, one for OpenBSD, and *now*
>>> one for DragonflyBSD ... if we had *at least* a common API for that
>>> sort of stuff, it might be asier to get support at the vendor level,
>>> no?
>>>
>>
>> How would a common API provide more support from the vendor ? What
>> does the API have to do with releasing documentation ?
>
> I'd rather have Adaptec provide a source code driver for their cards
> directly, then have Scott Long have to fight with unavailability of
> documentation itself ... if the driver works, what do we need
> documentation for?
mmmh ... you've got a point ... you just opened my eyes ...
documentation is pointless when I have a blackbox doing the work.
I assumed a BSD system was supposed to provide access to all of the
source tree with no restriction so that one could study, fix or improve
any part of the system; but you are right and BSD should follow Linux
path and focus on quantity, not quality. My eyes are opened, I do trust
random vendors to provide fixes and not force me into buying new
hardware. I do trust their code to be bug-free and of high-quality. I
trust them so much actually, that I don't consider incorporating their
code into any of the BSD projects as prostituting their goals:
From OpenBSD's goal page:
"Integrate good code from any source with acceptable copyright (ISC or
Berkeley style preferred, GPL acceptable as a last recourse but not in
the kernel, NDA never acceptable) <http://www.openbsd.org/policy.html>.
We want to make available source code that anyone can use for ANY
PURPOSE, with no restrictions. *We strive to make our software robust
and secure, and encourage companies to use whichever pieces they want
to.* There are commercial spin-offs
<http://www.openbsd.org/products.html> of OpenBSD."
From NetBSD's goal page:
"avoids encumbering licenses
<http://www.netbsd.org/Goals/redistribution.html>,"
From FreeBSD's goal page:
"The goal of the FreeBSD Project is to provide software that may be used
for any purpose and without strings attached. Many of us have a
significant investment in the code (and project) and would certainly not
mind a little financial compensation now and then, but we definitely do
not insist on it. We believe that our first and foremost ~Smission~T is to
provide code to any and all comers, and for whatever purpose, so that
the code gets the widest possible use and provides the widest possible
benefit. This is, we believe, one of the most fundamental goals of Free
Software and one that we enthusiastically support.
That code in our source tree which falls under the GNU General Public
License (GPL) <http://www.FreeBSD.org/copyright/COPYING> or GNU Library
General Public License (LGPL)
<http://www.FreeBSD.org/copyright/COPYING.LIB> comes with slightly more
strings attached, though at least on the side of enforced access rather
than the usual opposite. Due to the additional complexities that can
evolve in the commercial use of GPL software, we do, however, endeavor
to replace such software with submissions under the more relaxed FreeBSD
license <http://www.FreeBSD.org/copyright/freebsd-license.html> whenever
possible."
Then, next step would be a rewrite of ``Design and Implementation of the
FreeBSD Operating System" to remove some of the descriptions concerning
structures and code, and incorporation of a chapter on how to load
opaque objects to add support for adaptec hardware. Actually ... each
edition should have an additionnal chapter for new vendors following
adaptec's path and being supportive by providing more opaque objects.
After all, that's what BSD is about ... bending to vendors.