Subject: Re: "The BSD Way" [was Re: Support for ACLs]
To: der Mouse <mouse@Rodents.Montreal.QC.CA>
From: Greywolf <greywolf@starwolf.com>
List: tech-kern
Date: 03/10/2001 21:35:31
On Sat, 10 Mar 2001, der Mouse wrote:

# > Summary of "The BSD Way":  On one side, we have the people who
# > believe that progress is essential.  On the other side, we have the
# > people who believe that progress is fatal.
#
# That's not how I see it - though admittedly, there probably are people
# who fall into both the camps you describe.

And, as I said, they're both right:  Progress is essential for survival,
and progress will eventually result in something that is not what it
started as, so while it thrived, it died at the same time.  Such is
progress.

# I see it not as disagreeing over whether progress is a good idea but
# rather over what constitutes progress.

That's a very good point.

# As one of the two (AFAICR) voices crying "keep the BSD in NetBSD",
# well, I'm not entirely sure what I mean.  I know there is something the
# original BSD (as in, the products of CSRG) has that I like.  NetBSD
# used to have it, and in large part that's what kept me a happy NetBSD
# "customer" for so long.  But NetBSD has lost some of it and appears to
# be losing more, which is what I'm unhappy about.

The things I find distasteful are, unfortunately, largely cosmetic,
so my complaints are, for technical purposes, unjustified.

More on this in a minute.

# Unfortunately, I don't have a good statement of what it is.  Calling it
# the BSD Way is such a vague phrase that it's not very helpful, but at
# the time I used it it was the most accurate phrase I had.  I would now
# say something like "suited to tinkering".

Well, the more you tinker with it, the more it changes.

The objection I perceive is that the ones who want to tinker are not the
ones whose changes are being incorporated, which I'm not sure is at all
true.

I'm also not convinced that the system has truly become any less
suited to tinkering.

The things I see that NetBSD has right now that I like:

1.  FFS.  Linux can HAVE its damned ext2fs with all its instability.  Give
    me a good FFS any day.

2.  Despite objections, I *like* the fact that we can adapt to interopera-
    bility with other operating systems.  Yeah, you can have your various
    boxen, all running something separate -- Windows or whatever.  But to
    be able to do things that those OSs do *without having to run in their
    fscked-up environments* is a _huge_ win for me.

3.  ...exactly _how_ many platforms have we been successfully ported to, now?

4.  We're technoid-friendly without being insulting.

The things I see that I don't care for are, as I said, cosmetic, to the
point that others may very well consider it stupid.  The rc.d stuff is
neat, but the output thereof makes me cringe.  It *looks too much like
SVRx or Linux* for my liking.  But right now the way the dependencies
are set up, it's hard to go back to the old way without really figuring out
what needs to be run when and grouping them appropriately, which is more
work than it's truly worth.

I had something that ran just fine with the old system, but it was rather
fragile and fraught with inconsistencies, so I'm just as happy to see some-
thing a little more stable.  Of course, I'd have been just as happy to see
it stay the way it was; "after all, I have no trouble editing /etc/rc --
so what's the big deal?"

I see, for example, the entire install being pkg-ized.  Here again, if it
can be done right, I don't mind -- i.e. if there exist meta-pkgs which
contain exactly the right parts for the original installation categories.
Anything other than that, for the moment, would be folly.

The other requirement in my mind is that we properly address *why* we'd
do it this way.  "We're doing it to attract more users."  I'm sorry, but
thanks for playing.  If it is technically sound to do so and it *happens*
to attract more users, okay, but that should not be our primary motivator.

Another example is This Month's Hot Topic [TM]:  The ACL issue, which I'm
not going to comment on further until I receive some technical answers
to the questions I did ask last time (which is reasonable to expect in
probably a couple of days).

I don't want to see our userland go the way of Linux; I don't see that
happening, fortunately -- we drop pkgsrc into /usr/pkg/*, we drop X
into /usr/X11R6/*, and we drop local mods into /usr/local/*, which is
all fine thank you please don't start dropping pkgsrc into the base
system.

...but, begrudgingly, i will note that I'd like to be able to do that with
ssh2 until our ssh can learn to talk with theirs properly.

Oh, yes, to add to things I like:

5.  Everything is an option.

Within reason, if I don't like something I can compile it out (UBC seems to
be something of an exception to this; I don't suppose this could be fixed?).

What constitutes progress?  That's something different to everyone.

To be honest, I look for the features -- the new drivers, to be certain.
I have a box here whose onboard hardware is all but unusable to me.  The
soundset is supported, but only on CD-pass-through.  The video interface
is supported, but for some reason I can't get X to do anything with it.
For both I've had to put in spare hardware (I will never build a system
with audio or video embedded on the motherboard).

I'm anxiously awaiting true threads, which will be the herald beacon to SMP.
We'll get it, and when we do, we'll get it right pretty quickly.  But the
wait is becoming irritating (I wish I had some spare cycles -- and some
damned knowledge of how MP is supposed to work in the first place -- so
that I could help get it up to speed!), and by the time we get it, will
we be in a comparable state (or better) than where (dare I say) Solaris,
Linux or FreeBSD are now (which are three very different states, I know)?

Anyway, THAT kind of stuff, to me, is progress.

SPARC64 is progressing very nicely, if slowly due to lack of personpower,
so kudos where due on that one (I don't know sh*t about kernel programming
so I'm keeping largely silent).

That, to me, is also progress.

ACLs, while a specific kind of metadata, are progress, even if it's useless
to me.  I may want them someday, and that's the kind of attitude I take to
most of the stuff that's happened:  "It may prove useful to me someday.
Until that day, I'll compile it out of the kernel."

Am I rambling again?  Sorry.

I'm hooked on NetBSD for many of the same reasons I chose BSD over SVRx,
and for the same reasons I hated Solaris when it came out and fscked up
our SunOS environment for the longest time.  It still has that same feeling
to me.  I can adroitly administer a BSD box with a greater amount of pleasure
than that which I derive from handling Solaris or (shudder) WonN'T.  I
hate having to wear latex gloves when I type.

And as one who's seen the innards of both BSD and SVRx, I must say, BSD
did the better job.

# 					der Mouse


				--*greywolf;
--
"Never mind the bollocks, here's BSD!"