[Bug 1822270] Re: Debconf readline frontend does not show options

Brian Murray brian at ubuntu.com
Wed May 8 18:24:38 UTC 2019


Hello Tobias, or anyone else affected,

Accepted debconf into disco-proposed. The package will build now and be
available at https://launchpad.net/ubuntu/+source/debconf/1.5.71ubuntu1
in a few hours, and then in the -proposed repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed.  Your feedback will aid us getting this
update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested and change the tag from
verification-needed-disco to verification-done-disco. If it does not fix
the bug for you, please add a comment stating that, and change the tag
to verification-failed-disco. In either case, without details of your
testing we will not be able to proceed.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in
advance for helping!

N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.

** Changed in: debconf (Ubuntu Disco)
       Status: Confirmed => Fix Committed

** Tags added: verification-needed verification-needed-disco

** Changed in: debconf (Ubuntu Cosmic)
       Status: Confirmed => Fix Committed

** Tags added: verification-needed-cosmic

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to debconf in Ubuntu.
https://bugs.launchpad.net/bugs/1822270

Title:
  Debconf readline frontend does not show options

Status in debconf package in Ubuntu:
  Fix Released
Status in debconf source package in Xenial:
  Fix Committed
Status in debconf source package in Bionic:
  Fix Committed
Status in debconf source package in Cosmic:
  Fix Committed
Status in debconf source package in Disco:
  Fix Committed
Status in debconf source package in Eoan:
  Fix Released
Status in debconf package in Debian:
  Fix Released

Bug description:
  [Impact]
  debconf prompts the user for input before displaying options

  [Description]
  When upgrading packages with apt or dpkg, debconf scripts are ran through 'run-parts' with the '--report' flag. This causes script output to be handled through pipes set up by run-parts, and buffers output from maintainer scripts nicely for formatting.

  If debconf makes use of the readline frontend, any prompts will bypass
  the run-parts buffers and be displayed directly to /dev/tty. This
  generally causes the prompt to be displayed before the user gets any
  of the available options for it, and printing will block until the
  user inputs a valid option.

  Upstream commit: https://salsa.debian.org/pkg-
  debconf/debconf/commit/48c5ce38cfd5

  [Test Case]
  1) Deploy a VM through e.g. uvt-kvm
  $ uvt-kvm create disco release=disco

  2) Remove the whiptail package to force the readline frontend in debconf
  root at disco:~# apt remove --purge whiptail -y

  3) Install grub-legacy-ec2 and prepare /boot/grub/menu.lst for an upgrade through run-parts
  root at disco:~# apt update && apt install -y grub-legacy-ec2
  root at disco:~# rm -f /boot/grub/menu.lst*
  root at disco:~# touch -d "4 years ago" /boot/grub/menu.lst

  4) Invoke run-parts as in a kernel upgrade (kernel version doesn't matter, we just need it to think menu.lst needs an upgrade)
  root at disco:~# run-parts --exit-on-error --arg=5.0.0 /etc/kernel/postinst.d --report
  ...
  /etc/kernel/postinst.d/x-grub-legacy-ec2:
  debconf: unable to initialize frontend: Dialog
  debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76.)
  debconf: falling back to frontend: Readline
  Searching for GRUB installation directory ... found: /boot/grub
  Searching for default file ... found: /boot/grub/default
  Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
  Searching for splash image ... none found, skipping ...
  What would you like to do about menu.lst?

  The "What would you like to do about menu.lst?" prompt will block
  until the user enter a valid option, even though it's being displayed
  before the available options.

  [Regression Potential]
  We could hit regressions if changing debconf's printing to /dev/tty is expected by other programs. The changes are needed only in the readline frontend, so that would minimize impact of any possible regressions. The fixes will be thoroughly tested with autopkgtest and use-case scenarios.

  # # # #

  [Original Description]
  When upgrading the kernel on a recent Bionic minimal image, the user is prompted to resolve a conflict in the file /boot/grub/menu.lst.

  The minimal images do not have dialog/whiptail installed, so debconf
  falls back to using the readline frontend.

  The user sees the prompt: "What would you like to do about menu.lst?"
  but is not presented with the list of options to choose from.

  If a valid option is typed in, debconf will continue processing
  correctly and the list of options  appears on the screen. See also
  https://pastebin.ubuntu.com/p/8xvSn88SKG/

  STEPS TO REPRODUCE:

  Launch the minimal Bionic image with serial 20190212 http://cloud-
  images.ubuntu.com/minimal/releases/bionic/release-20190212/ubuntu-18.04
  -minimal-cloudimg-amd64.img

  for example via multipass and run `apt-get update` and `apt-get dist-
  upgrade`.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/debconf/+bug/1822270/+subscriptions



More information about the foundations-bugs mailing list