(Crosspost to debian-devel removed.) Raul Miller writes ("Re: Proposal: Automatic query servicing for dpkg installation scripts"): > Ian Jackson <[EMAIL PROTECTED]> wrote: > > 2. Only a particular package can determine which questions need to be > > asked in what order; in particular, following questions can depend on > > the previous ones. This means that we can't specify the questions in > > advance in a file. Instead, we have to put the information in > > command-line arguments to the query program. > > But a package should be able to grandfather responses from previous > package instances. We have plenty of instances where new package > names are needed for what is essentially the same package. [Not > that it's always appropriate to grandfather responses...]
Yes. The way I see this working is to have the questions have names that are in principle independent from package names. So you might have the question `mail-transfer-agent.visible-domain' for the `what is this machine's visible mail domain'; all packages that needed to know the answer to this could ask it with: dquestion-query --qname mail-transfer-agent.visible-domain \ --qtext "What is this machine's visible mail domain ?" \ --do-query:usually --default "`hostname -f`" \ --nocase --accept '[0-9a-z][-0-9a-z]*(,[0-9a-z][-0-9a-z]*)*' Perhaps the question string itself would be stored in a file somewhere else (to help with i18n). The program would compare the --use-default with an environment variable, so that for example if DQUESTION_ALLOW_QUERY were set to `always' or `usually', then it would prompt, but not for `rarely' or `never'. If --do-query:always is set and DQUESTION_ALLOW_QUERY=disable then it fails. (Better names for these variables and options and stuff are probably required.) If there was a value in the database it would use that (perhaps there would have to be a DQUESTION_ALLOW_REQUERY to allow you to reconfigure a package later, and that would use the current value as default). The database would be indexed by the qname, which would usually start with a package name, but wouldn't have to change if the package did. Ian. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]