##(see the SpecSpec for an explanation) * '''Launchpad Entry''': UbuntuSpec:foundations-lucid-update-on-shutdown * '''Created''': MichaelVogt * '''Contributors''': * '''Packages affected''': update-manager, fusa-applet, gnome-panel, unattended-upgrades Related specs: * https://wiki.ubuntu.com/DesktopTeam/Specs/Karmic/ShutdownAndRestartExperience == 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). [[attachment:updates-on-shutdown.svg|Updates on shutdown – UI flow (download SVG)]] {{attachment: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: {{attachment: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)''': {{attachment:download-error.png}} After the error message has been displayed, the standard shutdown sequence should commence '''(3)''': '' {{attachment: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)''': '' {{attachment: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)''': {{attachment:battery-low.png}} '''''' ==== Installation progress screen (2) ==== {{attachment:installation-progress.png}} When the installation process is complete, regardless of whether all packages installed successfully, the standard shutdown sequence '''(3)''' should commence immediately: '' {{attachment: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: {{attachment: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: {{attachment:fusa-dialog-no-updates-available.png}} Proposed design for the same dialog when updates are available for installation on shut down: {{attachment: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