Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Aug 2003 19:46:34 +0100
From:      Bruce M Simpson <bms@spc.org>
To:        Tyler Kellen <tyler@statuo.com>, kientzle@acm.org, freebsd-hackers@freebsd.org
Subject:   Re: Minimalist FreeBSD 4.8
Message-ID:  <20030826184634.GJ21219@spc.org>
In-Reply-To: <20030826182906.GI21219@spc.org>
References:  <3F4B9BE0.5010209@acm.org> <001a01c36bff$cff9e840$a700000a@TYBOX> <20030826182906.GI21219@spc.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 26, 2003 at 07:29:06PM +0100, Bruce M Simpson wrote:
> On Tue, Aug 26, 2003 at 01:28:14PM -0500, Tyler Kellen wrote:
> > What I'd really like to know is how to strip down a working system.  If
> > This hasn't been done, I guess I'm looking for someone with the
> > knowledge and the time/generosity to help me figure it out.  Once I get
> > there, I intend to post it on my website for other converts who may feel
> > the same way.
> 
> Look at the ClosedBSD cvs tree for examples of how and how not to do this.

I should probably expound on this further.

I'm not sure if the ClosedBSD cvs tree was publicly posted. For what it's
worth it was an attempt to produce a very cut-down FreeBSD-based distribution
for a very specific purpose. I have backups of the tree, in any case, as
I was the individual who did the initial CVS import as well as implementing
the source build makefile hierarchy.

FreeBSD is many things to many different people. I'm sure, for example,
there are some subsystems many people will never touch. The idea of a
minimal build kind of goes against the grain; the philosophy is that
FreeBSD is a complete system. A modularized build wouldn't hurt, however;
you'll find various switches which apply to src/Makefile and src/Makefile.inc.

One mistake that the ClosedBSD project made was in trying to rewrite key
system components without fully understanding how they worked. I was working
in a full-time job at that time so I wasn't able to lend my full energies
to fixing the problem. I'd rather not have any pack drill or pointing of
fingers, suffice to say, the key components in question were not code that
I had written or touched; but they were required for the system to boot,
they were broken, and there were other issues with the lines of communication
in that project which caused me to discontinue my involvement.

I should also point out that FreeBSD is normally built from source. It is
not typically installed using binary component packages. If you want to
strip down a system to nothing but gcc and vi, by all means, go ahead, but
be sure you aren't walking into a dependency minefield first. There are
various subsystems that you may never touch, these are probably good
candidates for removal.

You probably need to do this from scratch. Be aware that the RC system has
changed significantly in the 5.x releases. Be aware also that many other
people are producing minimal builds and it may be fruitful to liase with
them and learn from their experiences. The most appropriate forum for
this is probably the freebsd-small mailing list.

BMS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030826184634.GJ21219>