[packagekit] Status of the APT backend

Michael Vogt mvo at ubuntu.com
Thu Feb 21 23:54:54 PST 2008


On Tue, Feb 19, 2008 at 08:14:53PM +0100, Josselin Mouette wrote:
> Hi,
Hi,
 
[..]
> One of the things that will hit us if not implemented correctly is, of
> course, debconf. The FAQ says wrong things about user interaction, as
> these problems are solved in Debian: the user can select a priority
> level of questions (meaning by default most questions are not shown),
> and the questions are translated.
[..]

That is probably a good opportunity to think about a way to integrate
the dpkg conffile-has-changed message into some debconf like mechanism
(or we just set --force-confnew).

I know that I make myself unpopluar, but for debian/ubuntu there is
still the open issue of terminal support (in addition to debconf).

The problem here is that the debian policy says [1]
----------------------------8<---------------------------------
6.3 Controlling terminal for maintainer scripts

The maintainer scripts are guaranteed to run with a controlling
terminal and can interact with the user. 
[..]
----------------------------8<---------------------------------

Fortunately it also says:
----------------------------8<---------------------------------
3.9.1 Prompting in maintainer scripts

Package maintainer scripts may prompt the user if necessary. Prompting
should be done by communicating through a program, such as debconf,
which conforms to the Debian Configuration management specification,
version 2 or higher. Prompting the user by other means, such as by
hand[8], is now deprecated. 
----------------------------8<---------------------------------

But at least currently we have a bunch of packages that do not use
debconf and still prompt. Even central packages like libc6 do that
under certain circumstances. I think for a updater application that
works with all debian packages in the archive we should have something
that allows to pass a pty around and attach it to a vte terminal (if
needed). Don't get me wrong, I don't like this at all, its just that
reality for debian/ubuntu is that the terminal is still used.

The alternative of course is to just not have it and let package
installation fail that use it. I would lean toward better
interoperability even if it means pain. Its a choice that we should
make explicitely and if we don't support terminals, then we should
mention that in the apt backend FAQ.

Cheers,
 Michael



[1] http://www.debian.org/doc/debian-policy/ch-maintainerscripts.html



More information about the PackageKit mailing list