Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Jul 2004 10:41:02 -0300 (BRT)
From:      Jean Milanez Melo <jmelo@FreeBSDBrasil.COM.BR>
To:        "Chad R. Larson" <chad@DCFinc.com>
Cc:        small@freebsd.org
Subject:   Re: FreeBSD embedded: TinyBSD 
Message-ID:  <20040719104018.R735@offset.freebsdbrasil.com.br>

next in thread | raw e-mail | index | archive | help

On Fri, 16 Jul 2004, Chad R. Larson wrote:

> Did you guys look at the m0n0BSD project?  It seems to cover most of
> your objections.
>
> http://www.m0n0.ch/bsd/
>

Yes, its a good project, but they dont have build scripts and end-user
helping tools such dialog-based menus.

We would like that the interested parties make tests and then
report bug, sends sugestions to improve the TinyBSD.

See our TODO list for future versions:

o CREATE TINYBSD DEFAULT CONF HIERARCHY

  Doing cat >> ${WORKDIR}/etc/rc.conf << EORCCONF is not a good thing, 'cos
many users may wish to pre-configure a lot of other files (say, resolv.conf,
hosts, usr/local/etc/dhcpd.conf, etc), so we should make tinybsd.sh look
for some default configuration paths, if files exists there,
overwrite/create it instead of using the default (created on tinybsd
build)

  This should be similar to picobsd floppy.tree, but we won't have the
floppy.tree / mfs_tree distinction needed. Also, for tinybsd we are not
sure (opinions' welcome) if it should be *only* a conf tree hierarchy
(say, only valid for files in etc/ and usr/local/etc) or a complete
hierarchy replacement (everything under this directory will be
replaced/placed on ${WORKDIR}/according to the path)

o DISTINCT MANY PRE-CONFIGURED TINYBSD SYSTEMS

  Make a /usr/src/release/tinybsd/conf directory, where everthing there
must be other directories where pre-configure tiny beastie systems will be
held. All files required by tinybsd.sh should be there, in such a way
tinybsd.sh finds it according to the pre-configured system.

  Say, we might have (usually under /usr/src/release/):
        tinybsd/conf/default-system
        tinybsd/conf/default-system/TINYBSD
        tinybsd/conf/default-system/tinybsd.basefiles
        tinybsd/conf/wireless-router
        tinybsd/conf/wireless-router/TINYBSD
        tinybsd/conf/wireless-router/tinybsd.basefiles

  At a first level, tinybsd/tinybsd.sh should build tinybsd/conf/default-system
as its default behavior. Optionally the user may issue a sixth argumento to
tinybsd.sh where $6 will be the desired pre-configured system (not the
entire path).

o MAKE TINYBSD A DIALOG(1) SCRIPT

  I feel unsure if it is a good idea. At first look, it is interesting and
specially easy for newcomers, but when you start to customize the system a lot
different from what the initial script builds, dialog just sux. See most LiveCD
scripts (FUG-BR's livecd and GUFI's freesbie), and specially the lessons learn
from picobsd. Hardly any long-time picobsd user runs it in dialog mode (picobsd
-n -v switchs are just cool!).

  I would not like to make tinybsd.sh able to run in dialog interactive mode
and also non-interactive mode (just like picobsd's -n). I think tiny beastie
should be only one thing! A dialog script, or a command-line shell script.

  The good thing on dialog is that the tinybsd/conf/ idea would be easier. This
tool could scan tinybsd/conf/ for directories containing all required files and
allow the user to choose what to build from a dialog(1) menu.

  This issue will be kept open until good discussions get had.

o ADD DEBUGGING MODE

  I really like picobsd's "-v -v" behavior. Step-by-step routines with
good verbosy log messages are cool for debugging. Maybe it should be done
even before the dialog(1) decision.

-
Jean Milanez Melo



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