SoftwareAndUpdatesSettings

This is a 75%-incomplete specification for how software channels and update settings should be configured in Ubuntu. Your help to implement any of this is welcome.

System Settings (gnome-control-center) should contain a “Software & Updates” panel, with tabs for “Ubuntu Software”, “Other Software”, “Updates”, and “Authentication”. That is, for now, it should be a direct port of software-properties-gtk.

“Software Channels”

Removing a channel

channel-remove.png

If you choose to remove a channel, and no software is installed from that channel (bug 1091228), the channel should be removed immediately.

If any software is installed from that channel, a “Remove Channel” alert should appear (bug 625628), with primary text ‘This computer has software installed from “{Display Name of Channel}”. Do you want to remove that software too?’ This should be followed by a list of the installed items, each with a menu containing “Leave installed” (the default), “Downgrade” (only if this is possible), and “Remove”.

If the list contains more than one item, it should be preceded by a “For all items:” menu that contains the same options. Whenever the individual menus are set to multiple choices, the “For all items:” menu should begin with, and be set to, a temporary “—” item. And conversely, if you change the “For all items:” menu from “—” to any of the other choices, the individual menus should change to echo that choice.

Choosing a download server

settings-download-from.png

In the “Ubuntu Software” tab, if mirrorbrainz has been implemented yet, the “Download from:” menu should begin with a “Fastest detected server” item (the default), then a separator. Regardless, the menu should then have a “Main server” item, an item for whatever custom server you have chosen (if any), a separator, and an “Other…” item which opens the dialog for choosing a different server.

https://launchpad.net/ubuntu/+spec/foundations-o-apt-mirror-method

“Updates”

update-settings.png

The Updates tab is described in detail at SoftwareUpdates. (If there is any difference between this sketch and that one, believe that one.)

“Additional Drivers”

drivers-settings.mockup.png

The third tab, “Additional Drivers”, should contain a listbox listing each device for which proprietary drivers could be installed — for example, “Graphics card: ATI Radeon HD 6210” or “Printer: Canon XFI-2400”. (This tab should replace jockey-gtk, retiring bug 805465.)

Each device in the list should have an indicator light: green if the driver tested with that Ubuntu release is being used, yellow if any other driver is being used, or red if no driver is being used. Below the device name should be a caption reflecting this state: “This device is using the recommended driver.”, “This device is using a manually-installed driver.”, “This device is using an alternative driver.”, or “This device is not working.”.

The following radio buttons should be, in order, of this form:

  • “Use {driver name} ({license type}, tested)” (for example, “Use Nvidia driver v165 (proprietary, tested)”)
  • “Use {driver name} ({license type})”
  • “Continue using {driver name} (manually installed)”
  • “Do not use the device”

If a manually-installed driver is being used, so that it is not possible to switch to any of the other drivers for that device, the radio buttons and labels for those other drivers should be insensitive.

Whenever no drivers are being installed or removed, or waiting for a restart, below the leading side of the listbox should be text of the form “No proprietary drivers in use” or “1 proprietary driver in use”, and at the trailing side “Revert” and “Apply Changes” buttons. Both buttons should be sensitive only if you have made no changes.

drivers-settings-applying.png

If you choose “Apply Changes”:

  1. If you are choosing to install any drivers that have end user license agreements, a dialog should appear sequentially for each, with the name of the driver as its title, the EULA in a scrolling text field, the text “Do you accept the license agreement?”, and “Decline” and “Accept” buttons (fixing bug 271288).

  2. The “proprietary drivers in use” text should change to the status text for the operations (for example, “Waiting for other tasks to complete…”, or “Downloaded 716 KB of 2.4 MB”) (bug 1076832), and the buttons should change to a progress bar and a “Cancel” button (insensitive once it’s too late to cancel).

  3. The driver should be installed or removed, as appropriate, without separate progress UI.

  4. Once installation or removal is finished, the text and buttons should revert to their normal state (except as specified below).
  5. If the changes required a restart, the “Software & Updates” panel is still open, and the “Additional Drivers” tab is still frontmost, the System Settings window should request attention.

  6. If the changes required a restart, but you have since navigated away from the “Additional Drivers” tab or closed System Settings altogether, a parent-less alert box should appear with the title “Additional Drivers”, the “Software & Updates” icon, the text “ Warning /!\ You need to restart the computer to complete the driver changes.”, and “Restart Later” and “Restart Now” buttons (fixing bug 306708).

If there are changes waiting for a restart to complete, even if you close and reopen System Settings:

  • The text below the leading side of the listbox should be “Restart the computer to complete these changes.”
  • There should be an extra “Restart…” button before the “Revert” button (fixing bug 739242). (“Restart…” should open the standard Restart dialog.)

At the bottom of the tab should be this small print (fixing bug 660669): “Proprietary drivers have private code that Ubuntu developers can’t review or improve. Security and other updates are dependent on the driver vendor.”

Prompting to install additional drivers

drivers-prompt.png

Ubuntu should not try to use an indicator menu or notification bubble to prompt about hardware drivers (fixing bug 617392).

Instead it should open an alert box, to suggest that you install proprietary drivers, whenever all of these are true:

  • There are any devices for which proprietary drivers could be installed but currently are not.
  • Software Updater is not open.

  • You have never previously responded “Not Interested” or “Choose…” to the prompt.
  • You have not chosen “Ask Me Later” to the prompt in the past week.

“Choose…” should open System Settings to the “Additional Drivers” tab of the “Software & Updates” panel.

SoftwareAndUpdatesSettings (last edited 2013-06-12 15:39:16 by mpt)