Libertine UI does not support debconf interactions

Bug #1518814 reported by Stephen M. Webb
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Libertine
Status tracked in Devel
Devel
Fix Released
Medium
Larry Price
Trunk
Fix Released
Medium
Larry Price
libertine (Ubuntu)
Fix Released
Medium
Larry Price

Bug Description

Some binary debs insist on interactive with the user through debconf (for example, the Steam client).

The Libertine GUI needs to be able to handle this.

Tags: gui

Related branches

Changed in libertine (Ubuntu):
status: New → Triaged
importance: Undecided → Medium
tags: added: gui
Revision history for this message
Larry Price (larryprice) wrote :

This is a really interesting problem. For fully automating the installation, there's some helpful information here: https://www.linuxquestions.org/questions/blog/bittner-195120/howto-automate-interactive-debian-package-installations-debconf-preseeding-2879/. However, it's unclear if we want to fully automate these interactions. Is it appropriate for us to automatically accept licenses for a user, or would it be possible to present them with a dialog of options?

Revision history for this message
Larry Price (larryprice) wrote :

A quick brain dump of the work I've been doing:

Method 1: dpkg-deb
------------------
When an install fails, it leaves the deb in-tact. I used dpkg-deb to extract information from the deb and put it in a temporary directory. I then found the contents of the "templates" file and parsed it for all the given questions. My plan was to then get the user to give me valid responses to each of the questions, use debconf-set-selections to pre-seed the debconf-db, and reinstall the application. However, I've been pulled away from this method for many reasons, not least of which is that the current version of steam in multiverse clears out any pre-seeded debconf values thus making this method completely impotent.

Method 2: Show Apt Details
--------------------------
As an install/remove is in progress, ping the process every so often (~250ms currently) for new data to read and display it to the user live in PackageInfoView. The user can then take notice that an install is taking forever, check the current info, and send any required data directly to the process. My primary concern with this method is persistence of the install, since it seems that closing/opening libertine during this kind of install will result in an infinite, unhaltable process. I guess there needs to be some way to pick back up on the old process if necessary? Regardless, this feature is further in the future than I am able to see at present.

Revision history for this message
Libertine CI Bot (libertine-ci-bot) wrote :

Fix committed into lp:libertine at revision 228, scheduled for release in libertine, milestone Unknown

Changed in libertine:
status: In Progress → Fix Committed
Changed in libertine (Ubuntu):
status: Triaged → In Progress
assignee: nobody → Larry Price (larryprice)
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libertine - 1.1+16.10.20160607-0ubuntu1

---------------
libertine (1.1+16.10.20160607-0ubuntu1) yakkety; urgency=medium

  [ Brandon Schaefer ]
  * Set up a new proxy socket for the maliit server.

  [ Chris Townsend ]
  * Remove the demo icons and desktop files and deprecate libertine-demo.
    (LP: #1575315)
  * Explicitly create .config/dconf and the common XDG data directories in the
    user container's mapped home directory in order to make sure the file
    permissions are correct. (LP: #1570961) (LP: #1581131)
  * Bump version to 1.1.

  [ Larry Price ]
  * Make it possible for the user to interact with debconf prompts from apt-get.
    (LP: #1518814)
  * Refactor ContainerManagerWorker to use the async QProcess API.
  * Reap children processes when closing GUI and attempt to recover as necessary.
  * Implement bash auto-completion for libertine-container-manager.
    (LP: #1580610)

 -- Christopher Townsend <email address hidden> Tue, 07 Jun 2016 12:44:16 +0000

Changed in libertine (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.