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

Re: [Woody - dbootstrap] RFC: Better state machine for main_menu()?



On Fri May 12, 2000 at 11:03:53AM -0400, David Huggins-Daines wrote:
> karlheg@bittersweet.inetarena.com (Karl M. Hegbloom) writes:
> 
> >  Maybe `main_menu()' can be redone somehow - make the state machine a
> >  little nicer - use a state table for deciding what is next and what
> >  to offer, etc.  A checklist might be useful...
> 
> I have some code that implements a marginally better version of what
> is in main_menu.c if you care to look at it (it also contains a
> somewhat better implementation of a few of the things in boxes.c)
> 
> However the real solution IMHO is to build a generic state-machine for
> installer type programs, where the states, actions, transitions, and
> user messages (boxes) are all contained in a spec file that is
> interpreted at runtime.
> 
> I think this is what things like InstallShield and such do.

Actually, InstallShield provides no such state machine.  It uses a C-like
programming language, and everything that is done is done by your coding things
up yourself.  Need pre-depends?  Code em up (I've done this, and it is not
simple).   InstallShield provides its own IDE to develop this C-like code with,
its own debugger, a tool for selecting which files are to be associated with
installation packages, and it provides a bunch of pre canned dialog boxes that
folks can then use to install stuff (i.e.  the EULA dialog box, the
installation type (typical, custom) dialog box, etc).

Having written several install shield installs... InstallShield is not even in
the same ballpark as Debian.  When it comes to package management,
InstallShield is a lot closer to SlackWare (just try installing the same app
twice with InstallShield -- after an uninstall you now have registry keys
marking every file in the uninstalled package with a ref-count of 1 and no way
to fix it short of regedit).  SlackWare + pretty dialogs + a scripting
language.

 -Erik

--
Erik B. Andersen   Web:    http://www.xmission.com/~andersen/ 
                   email:  andersee@debian.org
--This message was written using 73% post-consumer electrons--



Reply to: