AlwaysEnableUniverseMultiverse

Differences between revisions 16 and 17
Revision 16 as of 2006-08-04 18:13:16
Size: 5895
Editor: p54A66CC7
Comment: updated after mdzs comments
Revision 17 as of 2006-08-07 07:56:39
Size: 6583
Editor: 203-118-156-188
Comment: simple recommended design
Deletions are marked like this. Additions are marked like this.
Line 71: Line 71:
 * I recommend replacing the "Applications" label with an "Applications of type:" option menu, containing four options: "Free and Supported", "Free", "Supported", and "Any". Then the checkboxes can be removed. (A further enhancement would be to add a separator to the bottom of this menu, followed by an "Installed" item to display only those programs that are already installed.)

 This assumes that there is no reason to be comfortable with software from Universe but not from Main, from Restricted but not from Main, from Multiverse but not from Universe, or from either 3rd party or Multiverse but not from the other. I think these are reasonable assumptions. -- MatthewPaulThomas

Summary

The unsupported "universe" and "multiverse" components are currently turned off by default in ubuntu. We want to enable them by default.

Rationale

Enabling universe and multiverse is one of the first things that people usually do. We should enable them by default and make sure that we show clearly in the various GUIs what is supported and what is unsupported.

Use cases

  1. Alice wants to install a new audio-codec that is only available in universe.
  2. Bob is very interessted in gaming and thinks the list of games in main is too limited. He likes to install games from multiverse and does not care if those are not officially supported.
  3. Mallory always wondered why he had to do a additonal click and download in gnome-app-install when he wanted to install his first application from universe.

Scope

Gnome-app-install and synaptic needs to be modified to show better what component a package comes from. The installer needs to ship a sources.list with universe and multiverse enabled.

Design

Gnome-App-Install

Gnome-app-install gets a "Show" optionmenu with the following options:

  • All Free/Open source applications - Show only applications which can be freely used,

modified and distributed. This includes the main as well as the community maintained applications (main+universe).

  • All supported applications - Include all Canonical or third party supported applications.
  • All available applications - Show all available applications including unsupported, restricted and third party application (main+universe+multiverse+dapper-commercial+external)
  • Only main applications - Show only the main applications which are officially supported by the ubuntu project (main)
  • Only restricted applications - Show only applications which are restricted in use "or distribution by copyright or by legal issues in some countries (multiverse)
  • Only third party applications - Show only applications which are provided and supported by third party vendors (dapper-commercial+external)

The default is "All Free/Open source applications". This way the user can decide what applications he wants to see. If he is only interessted in free software he does not have to change the default (note that "restricted" does not have to be included in the above list because it does not ship desktop-files). In addition to the filter all applications in gnome-app-install get a little emblem that indicates graphical where the application comes from and what support status it has (plus a tooltip to explain the emblem).

A alternative implemenation would use checkboxes instead of a combobox. Three checkboxes are required: "show unsupported", "show supported commercial", "show restricted-use", corresponding to the universe, [https://launchpad.net/distros/ubuntu/+spec/third-party-packages commercial] and restricted components, respectively. Multiverse packages will be implicitly available if both unsupported and restricted-use software are requested. The UI needs to be changed to give the checkboxes a new place. By default, restricted-use software is available, but unsupported and commercial software is not.

A usability review should decide which of the two approaches to take. The checkboxes may make the GUI look cluttered, the combobox gets too complicated if the view has more than 5-6 entires.

Synaptic

Synaptic will follow gnome-app-install and have the emblems in the GUI with the appropriate explaination. The sections view already distiguishs between "main", "universe", "multiverse". A new view "Component" (in addition to Section, Status, Search Results) will be added that includes "main", "restricted", "unvierse", "multiverse", "3rd party". The custom filter property will be extended to support the component as a match rule. With the various sorting options that the treeview offers this should give the user enough flexibility to easily see what non-suported/non-free pacakges he has installed.

Installer

The installer installs Packages.gz files for all components. This ensures that the user does not have to download the full Packages file on the first apt-get update (because apt uses If-Modified-Since on the available Packages file).

Commandline

We assume for the command line users that they will pay attention to the "Section" of the "apt-cache show" output. In addition we should provide a convenient way to disable the non-free repositories. In addition to the current "software-properties --enable-component=" we should provide a "software-properties --disable-component=" commandline argument. We could also tell the user (analog to the current "The following NEW packages will be installed:" message) about unsupported packages that are installed.

Backoff plan

As a backoff plan we will just keep the situation as it is now (multiverse/universe disabled) and use "software-properties --enable-component=universe" if universe is required.

Implementation

The following steps should be taken to update the UIs:

  1. update gnome-app-install to make the available filtering more flexible and e.g. hide all not free applications
  2. update synaptic to support a icon for the components (like the emblems in launchpad)
  3. add support in synaptic for the "Components" view
  4. add support in synaptic for the component matching in the custom filters

Review comments

  • I recommend replacing the "Applications" label with an "Applications of type:" option menu, containing four options: "Free and Supported", "Free", "Supported", and "Any". Then the checkboxes can be removed. (A further enhancement would be to add a separator to the bottom of this menu, followed by an "Installed" item to display only those programs that are already installed.)

    This assumes that there is no reason to be comfortable with software from Universe but not from Main, from Restricted but not from Main, from Multiverse but not from Universe, or from either 3rd party or Multiverse but not from the other. I think these are reasonable assumptions. -- MatthewPaulThomas


CategorySpec

AlwaysEnableUniverseMultiverse (last edited 2008-08-06 16:23:19 by localhost)