RepositoryDialogRedesign

Summary

The current repository dialog for Synaptic, Gnome-App-Install and Update-Manager is not ideal and not future-proofed. The following redesign will allow us to use the same dialog into the future, regardless of underlying package system.

Rationale

The current dialog is less than ideal for adding new source list and does not scale well for the future.

Use cases

  • Sally is looking for f-spot and hears it is in "universe". She is confused about how to get that.
  • Jeff doesn't want to have to redesign the dialog for each release, so he needs a future-proofed dialog.

Assumptions

  • People who want security updates want security updates. They don't want security updates just from Main and not from Universe. The same applies to other major fixes. The people who want updates from some repositories and not others can edit their sources.list manually.

Scope

  • This will change the repository dialog in Synaptic, and thus G-A-I and the Update Manager

Design

Currently we separate repositories and theirs corresponding components in the repository list of software properties. Furthermore the terminology isn't consistent in the ui of apps, the documentation and common use: users do not make a difference between components and respositories, e.g. the "universe repository". A common misunderstand is that the "add" (repository" button is used for adding components - but the edit button would be the right one. This error even happend to the documentation team. The terms software channel, channel, repository and component are mixed up. If you want to enable multiverse you have to do this for dapper, dapper-security and dapper-updates - perhaps even dapper-backports each.

So SoftwareProperties should be extended to have a concept of a relationship between repositories. The "-updates","-backports" and "-security" repositories should be all dependant of the "dapper" (or $distro) repository. If you add "universe" to the main dapper respitory and have "security" enabled, it should automatically add "universe" to "security" as well. See RepositoryDialogRedesign

In the unlikely event that sources.list has been edited so that some enabled Ubuntu repositories have security updates turned on while others don't, the "Security updates" checkbox will appear in indeterminate state [-], and the dialog will let it be toggled through indeterminate → on → off → indeterminate states. Otherwise, the checkbox will toggle between on and off states as normal. The same applies to the "Other fixes" checkbox.

The Ubuntu repositories will appear by default; third-party channels may be present if agreements are signed with various companies (see ThirdPartyPackages), and they will have a way of supplying a human-readable name and icon. The "Add Channel" and "Edit Channel" dialogs will also let people enter a human-readable name for a repository along with its URL; manually added repositories will have a generic repository icon.

Implementation

This needs be covered by MichaelVogt

Code

Data preservation and migration

Outstanding issues

  • how to visually show that new versions of Ubuntu available (
  • merge all tools into one (see SoftwareManager)

BoF agenda and discussion

Channels

  • switch to channels

Upgrades

  • make certain that certain channels (universe, upgrades) are enabled for the new release as well
  • 3rd party channels, disable those that do not have a channel for the new release
  • done through upgrade dialog, show visually (not yet decided how)


CategorySpec

RepositoryDialogRedesign (last edited 2008-08-06 16:31:41 by localhost)