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

Bug#574145: confusing use of debconf for license agreement

Package: firmware-ipw2x00
Severity: normal
Tags: d-i

On installation, debconf is used to display the license, as type note.
When the dialog frontend is used, this means the user gets a dialog box,
with a big scary license and an "OK" button. One would expect then, that
selecting OK means one accepts the license. And the UI does not let one
do anything else. UIs that force the user to accept a licence are
generally badly thought of.

Only after seemingly agreeing with the license is a second, boolean
question presented to ask if the user really accepts the license. At
this point, the user cannot refer back to the license they are supposed
to be agreeing to, and anyway, this yes/no question comes only after they
probably think they've indicated they accept it.

The only way for a user to avoid apparently accepting the license
is to hit escape, or whatever back button is presented by the debconf
frontend. Unfortunatly, the default debconf frontend uses whiptail, which
doesn't support escape or a back button here. And in frontends that do
support backing up, your preinst is coded to redisplay the first
question, so there is no escape.

I suggest making two changes:

1. Follow the example in debconf-devel(5) and if the user chooses
   to back up from the first question asked, do not redisplay it, but
   exit 10.

2. Combine license display and prompt into a single boolean question.
   Unfortunatly whiptail strikes again here; it can't scroll the prompt
   appearing in a boolean, so it would first display the whole question
   body in another info box. The result would be much as it is now
   for whiptail, but at least other debconf frontends are able to
   display the whole license text together with the yes/no prompt.

Note that this question can appear during installation. In d-i,
cdebconf's newt frontend *does* support showing a long scrolling
question body when asking a boolean question, so the issue discussed
above in #2 should not be a probolem there.

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (500, 'testing'), (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.32-trunk-686 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages firmware-ipw2x00 depends on:
ii  debconf [debconf-2.0]         1.5.28     Debian configuration management sy

firmware-ipw2x00 recommends no packages.

Versions of packages firmware-ipw2x00 suggests:
ii  initramfs-tools               0.93.4     tools for generating an initramfs
ii  linux-image-2.6.32-trunk-686  2.6.32-5   Linux 2.6.32 for modern PCs

see shy jo

Attachment: signature.asc
Description: Digital signature

Reply to: