Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Feb 2001 05:15:36 +0000 (GMT)
From:      Terry Lambert <tlambert@primenet.com>
To:        wes@softweyr.com (Wes Peters)
Cc:        tlambert@primenet.com (Terry Lambert), mark@grondar.za (Mark Murray), jkh@winston.osd.bsdi.com (Jordan Hubbard), arch@FreeBSD.ORG
Subject:   Re: Moving Things [was Re: List of things to move from main tree]
Message-ID:  <200102190515.WAA12356@usr05.primenet.com>
In-Reply-To: <3A90AB2A.E2C4F64@softweyr.com> from "Wes Peters" at Feb 18, 2001 10:12:10 PM

next in thread | previous in thread | raw e-mail | index | archive | help
> > If XML is going to be used during install, maybe it'd be a good
> > idea to build a small LALR parser, which only knows about the
> > grammar to be used for the specific application.
> 
> Expat helps build such parsers.  The syntax is slightly weird, but it's
> a lot smaller than 5.5 MB.

Writing a parser is trivial, even if you don't use lex/yacc or some
other tool to do it.  It's not really as interesting to talk about
the implementation details as it is to know that a pure XML parser
bent into an install tool is probably way too large for a floppy.


> I think the idea is push everything that cannot be considered a core
> part of the operating system into a different part of the tree, that
> can be chosen from ala carte.  This is a lot more extensive than 
> moving games to the ports tree.  Telnet, ftp, rtools, UUCP, sendmail,
> DNS, etc.

That's fine, but we don't need to move it around in the repository,
lose its history, and add gigabytes to the attic.


> > I also think that a nice first run at lists of files installed
> > would be a good thing; frankly, it's very hard to relocate most
> > net software, to know where and what was installed, and to then
> > build something that expects to be installed in a particular
> > location, make an image, and then do the install later.  Shared
> > libraries are a particular problem, in that regard.
> 
> The package dependency mechansim helps take care of that.  If you 
> select a package that requires a shared library you don't have, the
> dependency will install the shared library package as well.

The problem is more that, once something is linked against a
shared library, moving the library around is not really an
option.  Speaking of which, is anyone else incredibly annoyed
that ld.so doesn't search for things not in the ldconfig cache?

My personal experience is similar to what you said your company
had been doing for builds.  I have a 6-pass build process that
builds a lot of open source stuff, and a lot of my own stuff,
and then builds distribution packages out of it.  There is a
seperate package for each server role.  Obviously, you could
install all the distributions onto a single box (makes a good
demo system, except you can't demostrate data replication), but
typically you would set up a data center so that you had each
role on a seperate machine, and two or more machines for each
role.

The point of this is that it's much more logical to think of
configuration management in terms of the roles you expect a
machine to take, and that, at least for users, the important
thing is to be able to choose binary sets to install (or not),
cafeteria style.  That may mean you can't get a ham sandwich
without also getting mustard, unless you pick the "custom"
option, and dick with the details.  Having a template works
best (e.g. "Ham sandwitch without mustard" is better than
"bread, ham, lettuce, swiss cheese, mayonaise, tomato").


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




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