SoftwareUpdates - Ubuntu Wiki

Embed Size (px)

Citation preview

  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    1/24

    SoftwareUpdates

    This is a living specification for how Ubuntu should present, download, and install software updates on PC and phone. It is part of Ubuntus overallsoftware handling.

    Our presentation of software updates should carefully balance promptness against interruption, and automation against informed consent, tomaximize the prompt installation of updates across the millions of devices on which Ubuntu is installed.

    How you can help

    This specification includes many small changes and enhancements to the current update behavior, but they can be implemented in any order. Grabthe code (PC or phone) and submit your own branch.

    Contents

    1. How you can help2. PC

    1. Update settings2. Checking for updates automatically3. Downloading and installing updates automatically4. Launching

    1. Launching manually2. Checking manually3. Launching automatically4. Optional updates

    5. Handling uninstallable updates1. Initial implementation2. Advanced implementation

    6. Reminding you to restart7. Presenting installable updates

    1. Expanded presentation of updates1. Sorting the list of updates

    8. Installing9. After installing

    10. Installing updates automatically when you cant login11. Upgrading to a new Ubuntu version12. Menus13. User stories14. Design considerations15. Overall approaches considered16. Ideas

    1. More prominent option to install updates in the background17. Unresolved issues

    3. Phone1. Auto download settings2. Prompting3. Manually checking4. Presenting available updates

    1. Listing available updates2. Presenting an individual update

    5. Downloading in general6. Downloading automatically7. Downloading and/or installing manually8. Installing all updates at once9. Pausing

    10. Installing updates that include system updates11. Installing app updates alone12. Download or installation failure

    13. Alternative prompting

    PC

    Packages involved: update-manager (code, bug reports), software-properties (code, bug reports), update-notifier (code, bugreports), ubuntu-release-upgrader (code, bug reports)

    Update settings

    The When checking for updates, check for: menushould contain options for All updates (thedefault, -security + -updates + -backports ), Security and recommendedupdates ( -security + -updates ), andSecurity updates only ( -security ) (bug

  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    2/24

    Bug:887079). If your current update config doesnot match one of those three options (for example,if you have opted in to -proposed ), there should

    be a fourth, checked, option: Custom (bugBug:254584), and this option should persist untilyou close System Settings. (UI for configuring -proposed should be provided by the UbuntuContributor Console.)

    The Automatically check for updates: menushould contain options for Daily (the default),Every two days, Weekly, Every two weeks,a separator, and Never.

    The Download updates automatically: menushould contain options for None, Securityupdates, and All updates (bug Bug:1173208).

    The When there are security updates: menushould contain options Display immediately (thedefault) and Install automatically.

    The When there are other updates: menu shouldcontain options Display immediately, Displayweekly (the default), and Display every twoweeks.

    The Notify me of a new Ubuntu version: menushould contain options For any new version (the default for a non-LTS, replacing Normal releases), For long-term support versions (the

    default for an LTS, replacing Long term support releases only), and Never, in that order. Idea: Make this more predictable by letting you specify which day of the week it opens. [mvo]

    Checking for updates automatically

    If Automatically check for updates is checked, Ubuntu should become due to check for updates at the specified interval after updates were lastchecked. Once it is due to check for updates, it should try to check one minute after the first time any administrator connects to the Internet (bugBug:323108, bug Bug:414202). By default, it should not display any inter face while checking.

    What if broken proxy rules etc prevent successful checks indefinitely?

    Downloading and installing updates automatically

    If Download updates automatically is set to anything except None, and relevant updates are available, they should download in the background.

    LaunchingThe Launcher icon for Software Updater should not use a badge, because (unlike with opt-in updates) the number of system updates available is notinteresting.

    Launching manually

    Launching Software Updater manually should immediately begin an interactive check for updates, without showing any other interface beforehand.

    Checking manually

    When checking interactively, Software Updater should display only a progress window. As with any other progress window, the window shouldhave a minimize button but no maximize or close button, and should be 33 em wide.

    Erratum: The Cancel button should read Stop, since its possible a partial or previous check may have some available updates.

    If you stop the check, the progress window should morph into an info alert with the title Software Updater and primary text You stopped thecheck for updates.. If the partial check, and any previous check, found no installable updates, this should be followed simply by Settings,Check Again, and OK buttons. But if the partial check, and any previous check, did find installable updates, the alert should be a variation of

    https://bugs.launchpad.net/bugs/414202https://bugs.launchpad.net/bugs/323108https://bugs.launchpad.net/bugs/1173208https://bugs.launchpad.net/bugs/254584https://bugs.launchpad.net/bugs/887079
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    3/24

    the updates-available alert, with the different primary text, and secondary text Updated software is available from a previous check..

    If the check fails because of an error, the progress window should morph into an error alert, with the title Software Updater and primary textdepending on the exact situation (bug Bug:1153569, part of bug Bug:1026060).

    https://bugs.launchpad.net/bugs/1026060https://bugs.launchpad.net/bugs/1153569
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    4/24

  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    5/24

    Handling uninstallable updates

    If installing available updates would remove ubuntu-desktop , Software Updater should treat the updates as uninstallable .

    Initial implementation

    If an automatic check for updates finds that they are uninstallable, Software Updater should not launch at all (unless it needs to remind you to restartto install previous updates).

    If a manual check for updates finds that they are uninstallable, the progress window should morph to an error alert with Settings and OK buttons. Its primary text should be Ubuntu cant be updated at the moment. Please try again later.. Its secondary text should be Updates currentlyavailable would remove critical Ubuntu components. If this problem persists, contact the software vendor. And above the Settings button

    should be a Details expander that expands to reveal a pane containing the apt error message.

    Advanced implementation

    If an automatic check shows that updates to Ubuntu packages are the cause of the problem, Software Updater should not launch at all (unlessit needs to remind you to restart to install previous updates).If a manual check shows that updates to Ubuntu packages are the cause of the problem, then:

    If you are running a pre-release Ubuntu version, then the progress window should morph to an error alert as described above, exceptthat its secondary text should be Updates currently available would remove critical Ubuntu components. This sometimes happens with

    pre-release Ubuntu versions.

    If you are running an Ubuntu release, then the progress window should morph into an error alert as described above, except that itssecondary text should be Updates currently available would remove critical Ubuntu components. If this problem persists for severaldays, seek technical support.

    If either an automatic or manual check shows that updates to third-party software are the cause of the problem, then an error alert should open(or the progress window should morph into an error alert) with Settings and OK buttons. Its primary text should be Software updatesare available, but some installed software is preventing updates. Its secondary text should be Updates to {package name} would removecritical Ubuntu components. If this problem persists for several days, contact the software vendor.

    Reminding you to restart

    (part of bug Bug:1033226)

    If no updates are installable, but a restart is required to finish installing previous updates, a Software Updater alert should appear, with text Thiscomputer needs to restart to finish installing updates, and Settings, Restart Later and Restart Now buttons. Restart Now shouldopen the usual confirmation alert.

    Presenting installable updates

    https://bugs.launchpad.net/bugs/1033226
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    6/24

    Status of software updates should never be presented in the menu bar or a notification bubble (bugs Bug:24076, Bug:43089, Bug:190302,Bug:195945, Bug:199669, Bug:249367, Bug:280387, Bug:249957, Bug:322238, Bug:369611, Bug:436749, Bug:654553, Bug:891421,Bug:906826, Bug:934517, Bug:987202, Bug:1022443, Bug:1060497, Bug:1061469, Bug:1075833, Bug:1177418, and Bug:1296958).

    If a check shows that updates are available, a Software Updater alert should appear. (Like any progress window before it, it should be 33 emwide.) If the check was automatic, the alert should open non-minimized but unfocused.

    If updates have not been installed since Ubuntu was installed (bug Bug:1100405), and this is a release version (not a daily/alpha/beta) (bugBug:1025669), the primary text should be Updated software has been issued since Ubuntu {version} was released. Do you want to install it now?

    Otherwise it should be: Updated software is available for this computer. Do you want to install it now?If appropriate, the alert should have secondary text (part of bug Bug:1033226): The computer also needs to restart to finish installing previousupdates.

    Next should be an expander with the label Details of updates, that is collapsed by default but remembers its state between sessions. Expanding itshould expand the alert to show the list of updates. Collapsing it should return the alert to its previous size.

    Below the Details of updates expander should be one or more list items, depending on the exact situation, each introduced by a mini icon:

    The first item should be the amount that needs downloading , of the form {amount} will be downloaded., e.g. 17.4 MB will bedownloaded., with a download icon. If all the updates have already been downloaded, it should be of the form The update has already beendownloaded. or The updates have already been downloaded., with a greyed-out download icon. The amount should update automaticallywhenever you unselect or reselect updates in the list, or once per second when updates are downloading in the background.

    Whenever any of the checked updates will require restarting the computer (the packages debian/control contains the XB-Restart-Required key), and the computer does not already need restarting to finish installing previous updates, there should be an item with a restart

    icon and the text: The computer will need to restart. (bug Bug:bug 255443). The item should automatically disappear or appear (with thealert resizing appropriately) if you deselect all, or reselect any, of the updates that require a restart.

    Whenever the current Internet connection is mobile broadband , there should be an item with a mobile broadband icon and the text: Youmay want to wait until youre not using a mobile broadband connection. (fixing bug 776374). The item should automatically appear or disappear (with the alert resizing appropriately) if the computer starts or stops using mobile broadband while the alert is open.

    Whenever there is no Internet connection and at least one of the updates has not yet been downloaded, there should be an item with exactlythe same icon as the networking menu is currently using for its title, and the text You need an Internet connection to download updates.(bug Bug:246316 and part of bug Bug:1026060).

    Whenever the computer is running on battery , there should be an item (fixing bug 484249 and bug 494772) with exactly the same batteryicon as the battery menu is currently using for the battery, and the text: Its safer to connect the computer to AC power before updating.(fixing bug 426708). The item should automatically appear or disappear (with the alert resizing appropriately) if the computer starts or stopsusing battery while the alert is open (fixing bug 426710).

    The alert should have three buttons.

    https://bugs.launchpad.net/bugs/1026060https://bugs.launchpad.net/bugs/246316https://bugs.launchpad.net/bugs/bughttps://bugs.launchpad.net/bugs/1033226https://bugs.launchpad.net/bugs/1025669https://bugs.launchpad.net/bugs/1100405https://bugs.launchpad.net/bugs/1296958https://bugs.launchpad.net/bugs/1177418https://bugs.launchpad.net/bugs/1075833https://bugs.launchpad.net/bugs/1061469https://bugs.launchpad.net/bugs/1060497https://bugs.launchpad.net/bugs/1022443https://bugs.launchpad.net/bugs/987202https://bugs.launchpad.net/bugs/934517https://bugs.launchpad.net/bugs/906826https://bugs.launchpad.net/bugs/891421https://bugs.launchpad.net/bugs/654553https://bugs.launchpad.net/bugs/436749https://bugs.launchpad.net/bugs/369611https://bugs.launchpad.net/bugs/322238https://bugs.launchpad.net/bugs/249957https://bugs.launchpad.net/bugs/280387https://bugs.launchpad.net/bugs/249367https://bugs.launchpad.net/bugs/199669https://bugs.launchpad.net/bugs/195945https://bugs.launchpad.net/bugs/190302https://bugs.launchpad.net/bugs/43089https://bugs.launchpad.net/bugs/24076
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    7/24

    The main action, and default, should be Install; activating it should install the updates. Whenever the computer is not connected to theInternet, the button should be insensitive and have the tooltip Not available because there is no Internet connection..

    In the Cancel position should be Cancel if automatic checking is off, or Remind Me Later if it is on. (The button text should changeautomatically if automatic checking is turned on or off while the alert is open.) In the latter case, activating it should reset the timer for automatic checking for updates.

    In the secondary action position should be Settings. Activating it should leave the alert open, and non-modally open the Software Sourceswindow to its Updates tab.

    What happens if you open it manually while updates are downloading?

    What happens if you get disconnected from the Internet while the alert is open?

    Expanded presentation of updates

    Activating Details of updates should expand the window to accommodate the list of updates.

    The Updates Available window should be manually resizable only when it is in this expanded state. It should remember its previous expanded size, but by default should be the same width as when not expanded, and tall enough to show six items in the list, with a minimum height of three items.

    Only if any of the updates are security updates, the updates should be listed in two sections, Security updates and Other updates, each with acheckbox with bold label. The state of the checkbox should reflect and change the state of the update checkboxes in that section: checked if theyall are, unchecked if none of them are, and indeterminate otherwise.

    In the list, updateable packages should be in expandable groups (Brainstorm 14205), all collapsed by default, and all collapsible/expandable withLeft/Right arrow keys (bug Bug:1160491):

    1. An application is any package that has a .desktop file. Any application that has an update should have its own item. If that application isthe only updateable installed package that (recursively) depends on, or (recursively) recommends, another updateable package, the applicationshould be shown as an expandable group containing that other package as well as the application package itself.

    2. Any other package that is not part of Ubuntu base should be presented by itself, not in any group.

    3. The base package is (a) ubuntu-desktop if it is installed, otherwise (b) the alphabetically first of any of the metapackages listed in/usr/share/ubuntu-release-upgrader/DistUpgrade.cfg that are installed (for example, kubuntu-desktop or ubuntustudio-desktop ), otherwise (c) ubuntu-desktop even though it isnt installed. Any updateable package not already shown in the list of updates,that is a (recursive) dependency and/or recommendation of the base package, and/or of ubuntu-standard and/or ubuntu-minimal ,should be shown in an Ubuntu base or equivalently named group. This group should have distributor-logo (e.g. the Ubuntu logo) asits icon.

    https://bugs.launchpad.net/bugs/1160491
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    8/24

    The list of updates should have three columns by default: an unlabelled restart-required column, an Install column, and a Download column.Clicking any of the column headers should sort the list. For each update or group of updates:

    If it will require restarting the computer, the first column should contain a restart icon. This icon should line up exactly with the restart iconused for the secondary text below the list.The Install column should contain:

    an expander (always collapsed initially) for each top-level update where any of that packages dependencies also have updates, or a blank space otherwise;a checkbox, checked by default, for whether the update or group of updates will be installed (using indeterminate state if the checkboxis for a group where only some of the updates are checked);

    the icon for the package, except that currently-installed packages should not have the usual installed emblem (because its noisy anduninteresting that nearly all updates are to already-installed packages);

    the title of the update.

    The Download column should contain a check mark (with accessible label downloaded) if the update has already downloaded, andthe size to one decimal place (e.g. 7.1 MB, 883.0 KB) if it has not.

    Future work: The ability to turn on Codename, Installed Version, and/or Available Version columns?

    The list should allow multiple selections using the standard methods ( e.g. Shift+Up, Ctrl+click, or Edit > Select All).

    Below the list of updates should be another expander, Technical description, which is always collapsed initially. The contents of the Technicaldescription pane should depend on how many updates are selected in the list above:

    If none, centered 50%-opaque text No updates selected.If one, the description of the package followed by a spinner, with the spinner replaced by the changelog for the update once it loads, or byThe list of changes is not available. if it fails to load.

    If more than one, the name and version (but not the description) of each selected package, each followed by a spinner which is replaced by thechangelog for the update once it loads (or The list of changes is not available. if it fails to load), and each separated by a horizontal rule (bugBug:1077205).

    Sorting the list of updates

    (bug Bug:280298)

    Sorting by:

    Restart Required should list updates requiring a restart before those that dont.Install/Name (the default) should list updates in alphabetical order.Download/Download Size should list already-downloaded updates first, then the remainder smallest first.

    https://bugs.launchpad.net/bugs/280298https://bugs.launchpad.net/bugs/1077205
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    9/24

    Choosing the same sort a consecutive time should reverse the sort order. (For example, choosing Download Size twice should display the largestun-downloaded updates first.)

    If the list of updates has Security updates and Other updates groups, sorting should retain these groups, but sort the contents of each group. If any Ubuntu base groups or subgroups are present, they should always be sorted last, but their contents should be sorted too.

    Installing

    If you activate Install Now, the alert should morph into a progress window.

    The title of the window should be Software Updater, the primary text should be Installing updates, and the secondary text should be the statustext for the operation. The button should read Cancel until the first update actually starts installing, and Stop thereafter; it should be insensitivewhenever the update process does not allow stopping safely.

    The selected updates should then install with the standard interface.

    If you choose to restart or shut down the computer while updates are installing, regardless of whether they are installing in the progress window or in the background, then:

    all updates after the current one should be postponed;

    for as long as the current update takes to finish installing, the Plymouth shutdown screen should contain the centered text Ubuntu needs tofinish installing an update. One moment, please

    After installing

    If there are any errors while installing the updates, then the error tracker should generate its own alert (bug Bug:1152578). Therefore, SoftwareUpdater should not duplicate the error presentation itself (bug Bug:1118210).

    Regardless, after installation Software Updater should behave as if it has just finished a manual check for updates, except that the progress windowshould morph into whatever UI it would normally show in this case whether it be showing updates that remain uninstallable, showing that arestart is required (part of bug Bug:1033226), showing both at once, or showing that everything is up to date.

    The only exception is if updates were installed in the background, all were installed successfully, and none of them require a restart to finishinstalling. In that case, Software Updater should remain invisible.

    If one or more of the updates require logging out, the logout-required alert should appear for every user currently logged in graphically (except theuser who installed the updates, if any of them also require restart).

    https://bugs.launchpad.net/bugs/1033226https://bugs.launchpad.net/bugs/1118210https://bugs.launchpad.net/bugs/1152578
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    10/24

    Installing updates automatically when you cant login

    Ubuntu should try to download and install updates automatically if there is a problem that allows Ubuntu startup but prevents logging in whether it causes a kernel panic, an X crash, or simply a logout and Install updates automatically if a problem prevents login is checked in the settings.

    Upgrading to a new Ubuntu version

    If no updates are available but a new version of Ubuntu is, the alert should have Upgrade and OK buttons (replacing the separate Ubuntu{version} Upgrade Available dialog), and text depending on the situation (bug Bug:1199060):

    If the system is up to date, the primary text should be The software on this computer is up to date. and the secondary text However, Ubuntu{version} is now available (you have {version}).If the system is obsolete, the primary text should be Software updates are no longer provided for Ubuntu {version}., and the secondary textTo stay secure, you should upgrade to Ubuntu {version}.

    Test case: From a released version of Ubuntu, at a terminal enter check-new-release-gtk -d or update-manager -cd .

    If you choose Upgrade, Ubuntu should begin the release upgrade process.

    Menus

    When Software Updater is visible in any state, even just an alert box, it should have these menus.

    _File===== Check For Updates Ctrl R---------------------------- Updates History Ctrl H

    https://bugs.launchpad.net/bugs/1199060
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    11/24

    Check For Updates should always be sensitive, except when a check is currently in progress. It should check again for updates without closingand reopening Software Updater.

    _Edit===== Undo Ctrl Z Redo Shift Ctrl Z-------------------------------------- Copy Ctrl C Select All Ctrl A Select Chosen Updates Select None Shift Ctrl A-------------------------------------- Find Ctrl F-------------------------------------- Software & Updates Settings

    Undo and Redo should be sensitive only when there is a selection or deselection that can be undone or redone, respectively.

    Copy should be sensitive whenever any update or detail text is selected.

    Select All and Select None should be sensitive whenever at least one update is available (fixing bug 878203).

    _View===== by Restart Required* by Name by Download Size

    These items should be sensitive whenever any installable updates are being presented. Choosing any of the items should expand the Details of updates section, if it is not expanded already, before sorting the list, so that the sort has a visible effect. (The alternative would be to make the itemsinsensitive whenever the details section was collapsed, but that would be needlessly modal.)

    _Help===== _Help Using Software Updater-------------------------------- _About Software Updater

    User stories

    Sam is a college student who has recently migrated from to Windows XP to Ubuntu because he was fed up with adult sites installing spywareon his computer. The reason he had so much trouble with spyware was that XP kept on popping up balloons in the corner of the screen to tellhim about security updates, but he closed them because that was the easiest thing to do. A few weeks after he installs Ubuntu, there is animportant security update to Firefox.A computer running Ubuntu unattended is being used as part of a shop-window display. While the machine was still connected to the Internet,the window dresser cancelled a software update reminder.Helen is happily using Ubuntu 10.10 when it tells her that Ubuntu 11.04 has been released. Before she upgrades, she has some basicquestions. What will the upgrade do? How long will it take? How much will it cost? Will she lose any of her files? What should she do if something goes wrong?

    Design considerations

    The easiest path should be to install updates.

    That Ubuntu updates are split into individual packages is an irrelevant detail that must not be exposed by default. For example, MicrosoftExpertZones Comparing Windows 7 to Linux retail course claims: Linux can require a lot of time to maintain. For example, Ubuntu (avariety of Linux) may have hundreds of updates per month. [screenshot from Overclock.net]

    Checking for updates should not be confused with downloading updates. For example, one netbook purchaser wondered why Update Manager said it was downloading the same 91 updates every time, because she thought the updates were actually being downloaded. [Dave Morley]Checking for, and installing, updates should not consume large amounts of bandwidth per month especially when on mobile broadband.

    Overall approaches considered

    The ideal situation would be that Ubuntu never needs updates at all. However, our development process does not allow for that (and if it did, probably we would have no users).

    The next best situation would be for updates to be completely automatic, as they are in Chrome and as they will be in Chrome OS. Unfortunately,large organizations using Ubuntu would likely object to this on several grounds, including bandwidth and retraining costs. However, we shouldminimize the interactivity of updates, by encouraging people to download updates in the background and/or install them during shutdown.

    In Ubuntu 8.10 and earlier, we used a notification area icon to advertise updates, with a notification balloon initially pointing to it. This worked poorly because an icon that small could never communicate, to a usefully large proportion of people, something as bureaucratic as softwareupdate availability. The notification balloon was necessary to explain the icon, but was annoying because it floated on top of every other window,and is basically incompatible with our new notification model.

    Since before the initial release of Ubuntu Software Center, we have considered integrating updates into that interface instead of having a dedicatedinterface. However, this turns out to be less compelling than it might first appear. It is not a serious use case to be reminded of updates and to decide,upon that reminder, to install or remove other software at the same time. And the extra quantity of interface in Ubuntu Software Center would bequite distracting when trying to persuade people to install security updates (especially if theyve never needed to install extra applications at all).

  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    12/24

    However, Ubuntu Software Center is a good place to offer optional, non-urgent application updates, where they can be presented for individualselection.

    The reverse case is also practical. When you are manually installing new software, bundling any pending updates along with it reduces the need tointerrupt you later. We can achieve this by presenting the download and installation process in Ubuntu Software Center, while still doing the basic

    prompt in a separate interface for consistency with other update situations.

    The current design includes many ideas from a cognitive walkthrough and design session at UDS Jaunty. And Sparkle, a third-party framework (hosted in Launchpad) for updating Mac applications, provides inspiration on how to present updates in a clear and understandable way.

    Ideas

    The process of keeping Ubuntu up to date has many steps, involving software, hardware, and human factors. There are potential opportunities ateach step to increase the proportion of people who have secure and up-to-date software.

    In order from source to destination:

    Issue fewer updates.Engineer software to be less buggy to begin with.Stop issuing no-change rebuild updates.Aggregate same-package updates into a single release more often.

    Make checking for updates faster.

    Check for security updates every day. But check for non-security updates only (a) at the scheduled interval ( e.g. a week) after the lastcheck, (b) when security updates are available, or (c) on manual launching, whichever is earlier. [vish]

    Reduce the amount of data that needs to be downloaded to check for updates.

    Reduce the number of HTTP requests required.

    Use pdiffs.

    Make mirrors smarter so that they can report just those packages that have been updated since the last check. [~mark-k]

    Turn off source packages by default (bug Bug:74747).

    Reduce the urgency of updates.

    Reduce the proportion of security problems that require critical updates (defense in depth).

    Wait for longer by default before interrupting about updates.

    Dont interrupt at all just for NotAutomatic updates.

    Persuade people to agree to installing updates more often.Reduce the proportion of updates that require a restart.Aggregate different-package updates requiring a restart more often.Improve the updates-available alert.Introduce credible human-readable descriptions for updates.

    Install updates more often at the same time as other interruptions.

    UbuntuSpec:Install initial updates while installing Ubuntu.

    Invite installation of updates when installing a new application.

    Install updates at shutdown, at startup, or a combination of the two.

    Install updates more often in the background.Install more updates in the background by default.

    Make it easier to set updates to install in the background.

    Reduce the download size.

    Use bsdiff, Courgette, or a similar binary diff system.

    Stop requiring an update to -data and other dependent packages when an application gets a minor update.

    Increase the download speed.

    Increase the number and speed of mirrors.

    Automate mirror testing.

    Download updates from nearby computers using apt-p2p (bug Bug:533416), debtorrent, or similar.

    Ease downloading an update once for multiple computers you administer.

    Download multiple updates simultaneously when appropriate (bug Bug:275994, bug Bug:313685).

    Increase the installation speed.

    https://bugs.launchpad.net/bugs/313685https://bugs.launchpad.net/bugs/275994https://bugs.launchpad.net/bugs/533416https://blueprints.launchpad.net/ubuntu/+spec/foundations-karmic-install-updates-when-installinghttps://bugs.launchpad.net/bugs/74747
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    13/24

    Install the first update while the second is downloading (bug Bug:313680).

    Then download smaller updates first so that the installation process can start sooner (bug Bug:209681).

    Increase the speed of restarts (bug Bug:802065).

    To know whether any of these techniques are effective, we also need to collect statistics on how many people install updates how quickly. [OliWarner]

    Ayatana/UpdateIssues

    More prominent option to install updates in the background

    If fixing the existing settings did not result in as many people installing security updates in the background as we think should do so, we could addan extra checkbox to the alert itself whenever it appears for security updates.

    The checkbox would be checked whenever When there are security updates: is set to Download and install automatically (so it would beunchecked by default), and would track that setting even if it was changed while the alert was open.

    The icon-only help button would open a short help page describing the benefits and drawbacks of installing security updates in the background. Thesame help button would be present on the trailing side of the When there are security updates: menu in the settings (unless another help button is

    present in the window when those settings are shown).

    Unresolved issues

    What should happen with various HTTP errors?

    https://wiki.ubuntu.com/NotifyOSD#software-sources

    How should automatic installation interact with interactive installation and the various session commands?

    In terms of distinguishing, security updates are to be distinguished from the rest in preferences, so they should be distinguished in theUI. The difference between distribution updates and recommended updates isn't importantI've been using Ubuntu since Jaunty anddon't know the difference, but I've gotten along just fine. Other updates might be important, but I don't really think sowhy should Icare where caffeine came from, or whether an Ubuntu repo or a PPA has the latest version of GIMP or Firefox? zpletan

    Phone

    Packages involved: ubuntu-system-settings (code, bug reports)

    Because the phone uses image-based upgrades, every system update requires restarting the phone. Therefore the default is for system updates todownload in the background; and only once the download is completed you are prompted to install and restart. App updates require restarting theapp, but this can happen automatically in the background. To minimize UI complexity, and for consistency with the PC, both types of update should

    be presented in the same interface.

    The typical user story is that while not in the middle of a task, you notice through one of the prompts that an update has downloaded and isready for installation. You respond to the prompt. For a system update, you confirm that you want to install and restart now rather than later. Theinstallation and restart takes place as a single action. For an app update, you choose to install the update, then either watch its progress or switch toanother task.

    not possible defined undefined

    Use case Access point

    see whether your phone is up to date System Settings Updates screen

    be prompted that updates are available System Settings app emblem, System Settings main screen

    https://bugs.launchpad.net/bugs/802065https://bugs.launchpad.net/bugs/209681https://bugs.launchpad.net/bugs/313680
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    14/24

    Erratum: On wi-fi and When on wi-fi should both be When on Wi-Fi.

    install an individual update System Settings Updates screen

    see whether an update has completed System Settings Updates screen (except that)

    see updates installed in the past (completed updates are not shown)

    see why an update failed System Settings Updates screen

    stop an in-progress download System Settings Updates screen

    install all available updates System Settings Updates screen

    set whether/when updates are downloaded in the background System Settings Auto download screen

    Auto download settings

    Fixed to the bottom of the Updates screen inSystem Settings should be an Auto download

    page stack item. The summary value should beNever, When on Wi-Fi, or Always.

    The Auto download screen should contain theoption to Download future updatesautomatically: Never, When on Wi-Fi (thedefault), or On any data connection.

    Prompting

    Whenever an update is downloaded andready to install, or a background updatedownload has failed repeatedly, or Download future updates automatically isset to Never and an update is available for

    download:

    Wherever the System Settings icon appears,it should have a badge with the number of updates available (bug Bug:1362547).

    On the System Settings main screen,Updates should have the same badge (bugBug:1362547).

    Inside System Settings, the quick accessarea should have an Updates available or Update problem item, with the number of updates available as the summary value.

    https://bugs.launchpad.net/bugs/1362547https://bugs.launchpad.net/bugs/1362547
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    15/24

    Manually checking

    If push notification of updates has not beenimplemented, and you visit the Updates screenwhen at least 30 minutes has passed since the lastcheck for updates, a new check should betriggered. At the top of the screen (replacing theInstall All button, if it was present) should be aChecking for updates spinner and a Stop

    button (bug Bug:1272313). If any updates arealready known to be available, they should remainlisted below as usual.

    Presenting available updates

    Listing available updates

    Whenever no update is in progress, and the last completed check did not find any updates, the

    screen should contain centered either an error message or placeholder text as appropriate:Connect to the Internet to check for updates., automatically retrying a manual check if anInternet connection begins before leaving the screen (bug Bug:1215901);

    The update server is not responding. Try again later. (bug Bug:1215901);

    Software is up to date (placeholder text, therefore without a period).

    (There is no need for a Retry button, in the first case because the check will happenautomatically when the problem is fixed, and in the others because the check will happenautomatically when you return to the Updates screen and its probably a bad idea to try sooner.)

    https://bugs.launchpad.net/bugs/1215901https://bugs.launchpad.net/bugs/1215901https://bugs.launchpad.net/bugs/1272313
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    16/24

    Whenever only one update is available, it should be listed by itself. Whenever more than one is available, they should be preceded by the Install{number} Updates button. Updates should be listed alphabetically, except that any system update should always be first in the list.

    If checking for app updates requires Ubuntu One and you are currently not signed in, at the end of the list (after a separator, if there are any systemupdates), the text Sign in to Ubuntu One to receive updates for apps. should be followed by a Sign In button, which opens the Ubuntu Onesign-in dialog (bug Bug:1251254). Signing in successfully should retry the check for updates.

    Presenting an individual update

    How each update should be presented depends on its current state, and whether it is a system or app update. In general, it includes an icon, title,action button, Version and version number, size to 1 decimal place in the most appropriate unit (e.g. 13.8 MB).

    If it is a system update, its icon should be the Ubuntu logo, and its title should be Ubuntu Touch. If it is an app update, its title should be the nameof the app, ellipsized in the middle if necessary.

    State System update App update

    https://bugs.launchpad.net/bugs/1251254
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    17/24

    Downloading automatically

    Downloading manually

    Download failed

    Downloaded

    Installing

    Installation failed

  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    18/24

    Installed

    None of the above

    For any update, tapping the version number should toggle visibility of the updates description immediately below.

    Downloading in general

  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    19/24

  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    20/24

    Pausing

    The action button should be Pause for any update that is downloading or installing. It should be insensitive whenever the download/installation isno longer pauseable.

    If you choose Pause during a download or an app installation, the update should pause and return to its idle presentation (bug Bug:1316933). If theupdate fails to pause, System Settings should report a RecoverableError (bug Bug:1215901). Any later download whether automatic or manual

    should download the latest version, regardless of whether it is newer than the one already partially downloaded, but resuming the existingdownload if it is the same version (bug Bug:1250607).

    If an automatic download is paused, the pause should last until the phone next restarts or wakes up, whichever is sooner.

    Installing updates that include system updates

    Because system updates require restart, you should be prompted before this happens, it should not interrupt any app updates, and the prompt shouldnot happen repeatedly.

    Therefore, a prompt should appear when:

    you choose Install for an already-downloaded system update; or you choose Install {n} Updates where at least one of them is an already-downloaded system update; or you were on the Updates screen at the moment a system update finished downloading (suggesting that you had been waiting for it to finish).

    Whenever the phone is not connected to power and the battery charge is below a safe level, the

    prompt should have the text Connect to power before installing the system update. and only aNot Now button (bug Bug:1306752).Otherwise, it should have the text The phoneneeds to restart to install the system update.,and Install & Restart and Not Now buttons.Test case: With a low battery charge, connectthe phone to power and choose Install for thesystem update; the install prompt shouldappear. Now unplug the phone; the promptshould change to the connect-to-power variant.

    https://bugs.launchpad.net/bugs/1306752https://bugs.launchpad.net/bugs/1250607https://bugs.launchpad.net/bugs/1215901https://bugs.launchpad.net/bugs/1316933
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    21/24

    If you choose Install & Restart, a variation of the shutdown screen should appear, with theUbuntu logo rotating, an aggregated progress bar filling once, and the text Installing { number }updates if there are any app updates to installfirst, otherwise Installing update.

    If installation succeeds, the phone should restart.

  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    22/24

    Installing app updates alone

    As well as appearing in the Updates screen, app update download and installation progressshould have the same visual treatment, wherever the apps icon appears, as it does during initialinstallation.

  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    23/24

    Download or installation failure

    If a system update download fails, or an app update download or installation fails, the action button should become Retry, and the text Downloadfailed or Installation failed should replace the items status text (bug Bug:1282499). (An alert should not be used, because the error might occur while Updates is not the current screen or System Settings isnt even the focused app.) Below this should be text describing the particular error,for example:

    The update server is not responding. Try again later.The downloaded file was incomplete or damaged. Try again later. (checksum error)

    If a system update installation fails, the full-screen installation progress should be replaced by a

    full-screen error (bugs Bug:1282499, Bug:1215901).

    If the update server is reachable, the error message should be of the form Sorry, the systemupdate failed. You need to install a full update, {size}..

    If the update server is not reachable, the error message should not include the size of the fallback update required, and Start Full Update should be insensitive.

    Whenever there is a Wi-Fi connection, the Get On Wi-Fi button should instead be static text, Connected to Wi-Fi. Get On Wi-Fi should open the System Settings Wi-Fi screen as asheet with Cancel and OK buttons, so that when you dismiss it you return to the error screen.

    Alternative prompting

    If the in-Dash prompting is not feasible, an alternative method would be to display an UpdateAvailable alert whenever the phone is unlocked, if the update has been available for more than aweek.

    https://bugs.launchpad.net/bugs/1215901https://bugs.launchpad.net/bugs/1282499https://bugs.launchpad.net/bugs/1282499
  • 8/11/2019 SoftwareUpdates - Ubuntu Wiki

    24/24

    SoftwareUpdates (last edited 2014-08-28 10:54:31 by mpt @ faun.canonical.com[91.189.93.182]:mpt)

    https://launchpad.net/~mpt