SoftwareCenter

Differences between revisions 11 and 12
Revision 11 as of 2007-01-02 22:38:47
Size: 4842
Editor: 121-72-134-135
Comment: + UserReviewsInSynaptic
Revision 12 as of 2007-07-03 05:32:41
Size: 4712
Editor: 121-72-128-43
Comment: rewritten Rationale; three-pane layout
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
 * Launchpad entry: https://launchpad.net/distros/ubuntu/+spec/software-manager  * Launchpad entry: UbuntuSpec:foo
Line 12: Line 12:
The Software Manager will bring some sanity and simplicity to software management in Ubuntu. A single graphical tool for package management, combining the power of Synaptic, the human-readable approach of Add/Remove Programs, and the ease of use of the Update Manager. There should be a ''single'' graphical tool for package management in Ubuntu, combining the power of Synaptic, the human-readable approach of Add/Remove Programs, and the ease of use of the Update Manager.

attachment:software-manager.jpg
Line 16: Line 18:
In Ubuntu you can use `gnome-app-install` '''or''' `synaptic` for installing and uninstalling programs that have a `.desktop` file, `synaptic` for installing and uninstalling programs that don't, and `update-manager` '''or''' `synaptic` for installing updates. In Ubuntu there are at least three graphical tools promoted for software management. For installing and uninstalling programs that have a `.desktop` file, you can use `synaptic` or `gnome-app-install`, though the latter warns you to use Synaptic instead "for more complicated needs". For installing and uninstalling programs that don't have a `.desktop` file, you must use `synaptic`. For installing updates, you can use `synaptic` or `update-manager`, but the latter instructs you to run `synaptic` if it encounters conflicts. And there are other tools in supporting roles, such as `gdebi` and the forthcoming `aptoncd`.
Line 18: Line 20:
This is comically redundant, especially since (a) gnome-app-install does not include programs that don't have a `.desktop` file (of which there are many), (b) `gnome-app-install` tells you in the initial screen to use Synaptic "for more complicated needs", (c) `update-manager` instructs you to run `synaptic` if it encounters conflicts, and (d) it's hard to follow this advice because only one of the three tools can be run at once. Furthermore, "Synaptic" is a non-sequitur name, and `gnome-app-install` is misleading since it lets you install non-Gnome apps.

Developing one simple, integrated, gorgeous tool for installing and uninstalling packages and installing security updates, will let us solve all these problems at once. (Merging the three previous tools should also be a small space saving on the Ubuntu CD.)
This redundancy causes people to encounter multiple interfaces for the same tasks, wastes space on the Ubuntu CD, acts as an exuse for Synaptic to be hard to use, and divides development effort. Instead, there should be one awesome tool for software management, with a name that makes sense and an interface your grandmother can use.
Line 30: Line 30:
 * Helen is happily using Ubuntu 6.04, when she hears from a workmate that Ubuntu 6.10 has been released. She is interested in upgrading, as long it's free, and as long as she can first read a summary of what's new.  * Helen is happily using Ubuntu 8.04, when she hears from a workmate that Ubuntu 8.10 has been released. She is interested in upgrading, as long it's free, and as long as she can first read a summary of what's new.
Line 42: Line 42:
 * Every week (?) by default, Ubuntu checks for security updates. When updates are available, if you are an admin, Software Manager opens behind all other windows (so as not to steal focus) but requesting attention, showing "Security updates" by default. This handles Sam's use case; there is no balloon that can be ignored, and the easiest way to get rid of the window is to click "Install Updates".  * Every week (?) by default, Ubuntu checks for security updates. When updates are available, if you are an admin, Software Manager should open behind all other windows (so as not to steal focus) but requesting attention, showing "Updates" by default and with the source pane collapsed. (This handles Sam's use case; there is no balloon that can be ignored, and the easiest way to get rid of the window is to click "Install Updates".)
Line 46: Line 46:
The Software Manager has two panes, one listing programs/packages, the other for describing the selected package. There is also a menu bar, a bar at the top containing filter/search controls, and a bar at the bottom containing summary info and an action button. The Software Manager should have three panes, like an e-mail program: the sources pane, the package/program list, and the package/program pane. There should also be a menu bar, a bar at the top containing filter/search controls, and a bar at the bottom containing summary info and an action button.

Summary

There should be a single graphical tool for package management in Ubuntu, combining the power of Synaptic, the human-readable approach of Add/Remove Programs, and the ease of use of the Update Manager.

attachment:software-manager.jpg

Rationale

In Ubuntu there are at least three graphical tools promoted for software management. For installing and uninstalling programs that have a .desktop file, you can use synaptic or gnome-app-install, though the latter warns you to use Synaptic instead "for more complicated needs". For installing and uninstalling programs that don't have a .desktop file, you must use synaptic. For installing updates, you can use synaptic or update-manager, but the latter instructs you to run synaptic if it encounters conflicts. And there are other tools in supporting roles, such as gdebi and the forthcoming aptoncd.

This redundancy causes people to encounter multiple interfaces for the same tasks, wastes space on the Ubuntu CD, acts as an exuse for Synaptic to be hard to use, and divides development effort. Instead, there should be one awesome tool for software management, with a name that makes sense and an interface your grandmother can use.

Use cases

  • Joel wants to install Skype. He goes to [http://skype.com/ skype.com], downloads the .deb package (for "Xandros, MEPIS, Ubuntu, other Debian-based distros"), and double-clicks it. He doesn't know what a repository is.

  • Sam is a college student who has recently migrated from to Windows XP to Ubuntu because he was fed up with adult sites installing spyware on his computer. The reason he had so much trouble was that though XP kept on popping up balloons in the corner of the screen to tell him about security updates, he closed them because that was the easiest thing to do. A few weeks after he installs Ubuntu, there is an important security update to Firefox 1.6.
  • Ladina works as a developer at a molecular biology lab where she is not a sysadmin. She is having a bit of trouble with Biopython, and wants an easy way of seeing which version of python-biopython is installed and where its files are.

  • Helen is happily using Ubuntu 8.04, when she hears from a workmate that Ubuntu 8.10 has been released. She is interested in upgrading, as long it's free, and as long as she can first read a summary of what's new.

Scope

  • Screenshots of available packages?

Design

Invocation

  • "Add/Remove Software…" is an item in the System menu. This opens Software Manager, showing "Programs available" by default.
  • Every week (?) by default, Ubuntu checks for security updates. When updates are available, if you are an admin, Software Manager should open behind all other windows (so as not to steal focus) but requesting attention, showing "Updates" by default and with the source pane collapsed. (This handles Sam's use case; there is no balloon that can be ignored, and the easiest way to get rid of the window is to click "Install Updates".)

Window layout

The Software Manager should have three panes, like an e-mail program: the sources pane, the package/program list, and the package/program pane. There should also be a menu bar, a bar at the top containing filter/search controls, and a bar at the bottom containing summary info and an action button.

...

Braindump

  • Dynamically filtered view of programs or packages:

    Show: [Programs installable    :^]    Containing: [______________]
  • Menu choices are:
    • Programs available (default when invoked manually)
    • Programs already installed
    • Packages available
    • Packages installed
    • Security updates (search field replaced by "Updates available" text)
    • All updates
    • Changes to be made
  • Items in the list have iconic pull-down menus that look like menus, not checkboxes.
  • Recommendations and suggestions are shown as children of an item in the list (recommendations selected by default, suggestions not).
  • Multi-level undo.
  • Updates are aggregated by source package, with packages hidden inside an expander.

Implementation

Code

Data preservation and migration

Unresolved issues

SoftwareCenter (last edited 2019-04-28 16:57:10 by mpt)