Subject: Re: About bloat (was Re: Proposal for new utility in base: bin/nc)
To: NetBSD Userlevel Technical Discussion List <tech-userlevel@NetBSD.ORG>
From: Greg A. Woods <woods@weird.com>
List: tech-userlevel
Date: 10/14/2001 12:38:49
[ On Sunday, October 14, 2001 at 12:42:05 (+0200), Lasse =?iso-8859-1?Q?Hiller=F8e?= Petersen wrote: ]
> Subject: About bloat (was Re: Proposal for new utility in base: bin/nc)
>
> I think NetBSD, both in the main sets and in the package system, could
> benefit from more decoupling. As an example, one of the first packages I
> wanted to install (from pkgsrc) on a freshly installed system, happened to
> depend on autoconf (I think?), which itself depended on something else (?),
> which finally depended on *perl*, so that in order to install this little
> useful tool, I actually had to get and install the entire perl system,
> which I consider large and bloated.

That's all build-time dependencies you're talking about.  You can't
build modern portable software without having some rather substantial
tools to do it with.  Why even gcc is horribly bloated in that respect.

However, if you install it as a binary package then you don't have to
pull in all that muck to build it.

> I find such dependencies annoying. 

That's one of the reasons why I always build production systems only
with binary packages that I've built on my development system.  I only
install all the build tools on a very few machines.

> By
> removing  unnecessary dependencies, and perhaps including some "stubs" to
> replace some requirements, it would become possible to decouple more
> things.

That's a different issue if you're talking about run-time dependencies,
as you see to be below....

> For example, if some "stub" sendmail replacement, with only the
> bare necessary functionality to deliver mail locally, was in the base sets,
> then people would have to _decide_ whether to install Sendmail or Postfix
> (or something else), and these two competing - and thus mutually redundant
> - subsystems could be removed completely into pkgsrc instead of both being
> included with the system.

I don't think you can easily provide enough of a "stub" in some cases
(eg. especially a mailer) which can satisfy enough functionality for
most people's requirements without including a full postfix or sendmail
(or smail! ;-).  You'd end up writing a basic MTA just to replace a
full-featured one.

> Same with vi; I install vim, so I have no use for
> the nvi in the system. (I can easily make do with plain old ed until I get
> vim installed.)

So?  I always install emacs and I could do without nvi too.

In this case though what's the stub?  'ed'?  I think NOT!  :-)

> In this age of bloat, I believe NetBSD could distinguish itself favourably
> by _reducing_ bloat, instead of increasing it. Leave the bloating to the
> Linux and FreeBSD people.

one of the big problems is that once you add integrated TCP/IP
networking to an operating system you get a whole lot of "bloat" just to
support all the "basic" stuff (named, ntpd, SSL, even kerberos).

> Of course you may want to take this with a grain of salt, as I'm also the
> kind of guy who considers dropping xfce in favor of twm, because I think
> xfce is becoming bloated. :-)

Yes, a big grain of salt -- some of us believe xfce was overly bloated
right from the beginning!  ;-)

-- 
							Greg A. Woods

+1 416 218-0098      VE3TCP      <gwoods@acm.org>     <woods@robohack.ca>
Planix, Inc. <woods@planix.com>;   Secrets of the Weird <woods@weird.com>