[Top][All Lists]

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

[Gnumed-devel] Re: install instructions

From: Andreas Tille
Subject: [Gnumed-devel] Re: install instructions
Date: Wed, 12 Nov 2003 09:34:34 +0100 (CET)

On Wed, 12 Nov 2003, Ian Haywood wrote:

> if on_debian:
>       debconf ('blah blah')
> else:
>       print ('blah blah')
>       r = reply ()
> IMHO, we should aim for 3 packages: .deb, RPM and Windows .EXE. I agree they 
> should share Python install scripts
> where possible. [AFAIK RPM and Windows don't have an equivalent to debconf, 
> so we won't be repeating any more work]
>  but we should make an some effort to conform with the Debian system because 
> of its strength (automatic dependency
> downloading, automated installs, etc.
While I support your general idea I would like to remove some misunderstanding
about debconf.  Currently there is no Python API and I guess it will not be in
the near future.  Just plain shell or Perl, currently.

The way it works is as follows:

   1. There is a general debconf database containing all configuration options.
   2. Preinstall scripts ask for configuration options of the package which
      needs configuration.
   3. Postinstall script queries (in shell or Perl script) debconf database
      and does necessary configuration.

The clue is that 2. is done for all packages to be installed at once and after
answering the questions you can go for a cup of coffee while installation and
3. works without any user interaction.  The second advantage is that you will
not have to give any answer twice.

How it works for GnuMed?

The GnuMed postinst script queries the debconf database for the options of
the bootstrap* program which is started afterwards with those commadline
options.  One exception is the pssword for the database owner.  The bootstrap*
script expects manual input by default if no password is given in the config
file.  Because I regard it inacceptable to let a config file containing
passwords hanging around at the system I query the debconf database for
the password and create a temporary config file containing the password and
removing it after bootstrap process is done.

If you keep this in mind there is nothing special about Debian regarding
to the current install script.  It just uses command line options and
config files as a plain install.  The only difference is that the user
does not have to type this stuff in at commandline or have to hack the
config file.

Kind regards


reply via email to

[Prev in Thread] Current Thread [Next in Thread]