[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

I forgot



I forgot to mention how the template generator would be integrated in
Debian. The idea is the following:

Each package (optionally) has a config.tar.gz with the relevant templates.
Dpkg extracts all of them before unpacking anything and calls the template
generator.

The template generator expands each template and generates the
corresponding config file. During the expansion it looks up system
variables and substitutes their value in the config file.

If a variable is _not_ found in the database, the user is asked and the
database is updated accordingly. This, however, can be configurable
because in some cases using a default value could be good enough.
This way, once the database is populated, the system can be replicated
as many times as the user wishes without further questioning.

After all config files are generated, the unpacking phase starts.

The backend does not care about the appeareance of the user front end.
It just uses an interface similar to what Wichert proposed.

User answers are re-expanded, so that a valid answer to
System-Names-Hostname is "\dhcp-lookup(server-address)", where dhcp-lookup
is a function that interfaces to the DHCP utils. (I forgot to mention that
my system can use plug-in functions too.) It could even be something more
complex, like:
"\ifelse(\sysvar(Hardware-Network-DefaultInterface-Address),00:3F:21:43:34,
my-name,\dhcp-lookup(my-server))"

So, most of Wichert proposals (although not all) can be dealt with in this
setup, including the metadatabase, the virtual database and the 
backend <-> frontend protocol.

Thanks,
	Fernando



Reply to: