KarmicUpdatesOnShutdown

Related specs:

Summary

Frequently, when updates become available, a user will not immediately install them, wishing to avoid being distracted from their current task. By the time they are undistracted, however, they may wish to shutdown their computer. Giving the user the option of installing available updates at shutdown would be very useful in these situations.

Release Note

Ubuntu supports installing updates on shutdown to minimize distraction.

Rationale

Shutdown speed is often not critical, so it's a good time to optional offer to install updates before the final powerdown.

User stories

Kate has finished her office work for the day. She clicks on shutdown with updates and leaves while the computer is installing the updates unattended before powering down.

Design

When the user clicks on shutdown with updates we run update-manager in a special mode. This mode will make the update-manager download/install window a fullscreen window and will run a update in unattended-mode (the code should be merged from unattended-upgrades). Special care must be taken about packages that wait for input (e.g. on the terminal). Those need to be killed. If anything goes wrong during the upgrade, the user needs to be notified on the next restart. Packages that result in conffile questions should be defered (use the logic from unattended-upgrades).

Updates on shutdown – UI flow (download SVG)

updates-on-shutdown.png

Download progress screen (1)

If there are updates to be installed and the user confirms that they be installed during shutdown, the shutdown screen will appear with the information about the download progress:

updates-on-shutdown-progress.png

Download progress screen – possible exit paths

If none of the updates are successfully downloaded and there is nothing to install, the error message should appear for 3 seconds (1.1):

download-error.png

After the error message has been displayed, the standard shutdown sequence should commence (3):

shutdown.png

If some or all updates are downloaded successfully and there is one or more updates that can be installed and there is more than 20 minutes of battery life remaining, the installation progress screen will appear (2):

installation-progress.png

If some or all updates are downloaded successfully and there is one or more updates that can be installed but there is less than 20 minutes of battery life remaining, the battery low screen should appear for no more than 30 seconds (1.2):

battery-low.png

Installation progress screen (2)

installation-progress.png

When the installation process is complete, regardless of whether all packages installed successfully, the standard shutdown sequence (3) should commence immediately:

shutdown.png

If any of the packages failed to install, the user should be informed about the errors after the next login.

"It is now safe to turn off your computer" confirmation screen

If the computer's hardware does not support automatic power-off, the system should detect it and present the user with the screen confirming that it is now safe to turn off the machine:

safe-to-turn-off.png

Implementation

We need to integrate into the shutdown functionality (possibly as a new shutdown option?). Update-manager needs to be modified to get some of the smartness of unattended-upgrades and to get a --fullscreen and a --unattended option.

UI Changes

The exact way to present this shutdown option needs to be discussed with the design team. If it should be default (and the other shutdown called fast shutdown) or if there is a new shutdown option.

FUSA Shut Down Confirmation Dialog

Current FUSA Shut Down confirmation Dialog:

fusa-dialog-no-updates-available.png

Proposed design for the same dialog when updates are available for installation on shut down:

fusa-dialog-updates-available.png

Test/Demo Plan

It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during testing, and to show off after release. Please add an entry to http://testcases.qa.ubuntu.com/Coverage/NewFeatures for tracking test coverage.

This need not be added or completed until the specification is nearing beta.

Unresolved issues

The exact UI is not yet finished, the design team is working on this currently.

Comments

comments by PetrB:

  • Download progress screen (1) - "Downloading 178 new updates (18.4MB) - please do not shut down or power off your computer"

    • number of packages is likely not useful to average user (one application = several packages anyway)
    • It is OK if user presses Power button - we can cancel the operation and continue shutdown. Suggestion: "Please do not unplug your computer", or even remove the message entirelly

    • The "Cancel" button - user may wonder if it does cancel the update operation or cancel whole shutdown? Use "Power off now" or "Shut down anyway" (or "Do It Later").

  • Download progress screen – possible exit paths - "There was a problem downloading updates. Your computer will now shut down."

    • User may wonder if the computer is shutting down because it was damaged (by the failed update). And may wander what happened and what to do. Suggestion: use "There was... You will get details after powering on. Your computer will continue to shut down now."


CategorySpec

FoundationsTeam/Specs/KarmicUpdatesOnShutdown (last edited 2009-11-30 02:21:21 by robbie.w)