[EROS-Arch] Installers

Joerg Bornschein joerg@zilium.de
Fri, 23 Mar 2001 14:24:11 +0100


On Thu, Mar 22, 2001 at 07:12:42PM -0500, Kragen Sitaker wrote:

Hello,

> I think installers should be Turing-complete --- after all, the
> software they're installing is, and presumably you're going to run that
> software eventually, or you wouldn't install it, and presumably the
> person who created the installer also has control over the installed
> program --- but they rarely need to be Turing-complete programs with
> complete control over your system.
> 
> The authorities the installer needs should be declared, not computed;
> they are, in some sense, the equivalent of the undefined external
> symbols in an object file.  But the installer itself should be
> Turing-complete.

Maybe the installation procedure should be divided into two steps:

1) factory building: 
  The installer simply builds factories from the package and resolves
  (as far as possible) all all outstanding dependencies. No need to
  be turing-complete; no complex declarative language. Only dependencies
  and factory naming (short info what the produced factory is expected
  to do).
  A more complex package could include a configuration application.
  
2) configuration:
  If there is a config.application, this application could be made
  available to a management console. 
  Running this config.application will allow the user to configure
  a _service_ build upon the software installed in step 1 -- but will NOT 
  allow him to alter the factories builded in step 1.



  joerg


-- 
 The known is finite; the unknown infinite.    Intellectually we stand on 
  an islet in the midst of an illimitable ocean of inexplicability. Our
  business in every generation is to reclaim a little more land..
 						    	     --T.H. Huxley