[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

dselect novice mode user interface design



Startup screen:

+------------------------------------------------------------------------+
|  Debian GNU/Linux `dselect' package handling frontend.                 |
|  +------------------------------------------------------------------+  |
|  |  install         Install and/or upgrade package(s) or system     |  |
|  |  remove          Remove package(s) currently installed           |  |
|  |  fix             Attempt to fix broken packages                  |  |
|  |                                                                  |  |
|  |  expert          Expert-only user interface                      |  |
|  |                                                                  |  |
|  |  quit            Quit dselect                                    |  |
|  +------------------------------------------------------------------+  |
|                             +----------+                               |
|                             |    OK    |                               |
|                             +----------+                               |
+------------------------------------------------------------------------+
|  130Mb free disk space (170Mb used out of 300Mb) on /usr               |
|   15Mb of packages are still to be installed;  115Mb will be left.     |
+------------------------------------------------------------------------+
|  200 packages available, 200 selected, 178 installed.                  |
|   20 packages are yet to be installed.                                 |
|    2 packages are on the system, but broken;                           |
+------------------------------------------------------------------------+

`expert' passes the user on to what is curretnly the dselect main
menu.

`install', `add', `remove' and `fix' vary in their details.  Each of
them goes through the access method selection and configuration,
updates the list of available packages, asks the user about some
subset of the packages available and/or installed, and then carries
out the actions they requested.

Each of these options will ask the user about packages whose installed
state doesn't match their desired state, or which have an error flag
set.

Additionally, `install' asks the user about all the packages available
or currently installed; `add' asks the user about packages which are
available but not installed; `remove' asks the user about packages
which are installed.  `fix' asks the user only about packages which
aren't in their desired state, as recorded.

This asking happens as follows:

First, for each `status' of package (eg broken ones, new ones, old
ones they might want to remove, etc), there is an introductory screen
which gives them the opportunity to make the same decision for many
packages.

+------------------------------------------------------------------------+
|  Attempt to fix broken packages                                        |
|  Currently-broken packages - which to retry ?                          |
|  +------------------------------------------------------------------+  |
|  | There are currently 2 packages which have not been correctly     |  |
|  | installed or configured.  You may try installing them again,     |  |
|  | or (using the `individual' and `list' options) choose to remove  |  |
|  | some of them instead of trying again.                            |  |
|  +------------------------------------------------------------------+  |
|  +------------------------------------------------------------------+  |
|  |  all             Retry the installation of all broken packages   |  |
|  |  individual      Decide for each broken package separately       |  |
|  |  list            Go straight to listing of all broken packages   |  |
|  |  none            Don't attempt to fix any of them                |  |
|  +------------------------------------------------------------------+  |
|                     +----------+      +----------+                     |
|                     |    OK    |      |   Abort  |                     |
|                     +----------+      +----------+                     |
+------------------------------------------------------------------------+

`individual' presents a screen for each package, and `list' shows a
one-per-line scrollable listing of the packages involved.  These
screens are the same for all packages which are being asked about,
regardless of status, and are described below.

+------------------------------------------------------------------------+
|  Install and/or upgrade package(s) or system                           |
|  Which new packages do you wish to install ?                           |
|  +------------------------------------------------------------------+  |
|  |  important       Only the most important packages       30Mb     |  |
|  |  standard        Standard text-mode installation        50Mb     |  |
|  |  optional        Full-featured installation, with X11  150Mb     |  |
|  |                                                                  |  |
|  |  priority        Select in more detail, grouped by priority      |  |
|  |  section         Select in more detail, grouped by section       |  |
|  |  list            Go straight to listing of all those available   |  |
|  |  none            Install none of the new packages                |  |
|  +------------------------------------------------------------------+  |
|                     +----------+      +----------+                     |
|                     |    OK    |      |   Abort  |                     |
|                     +----------+      +----------+                     |
+------------------------------------------------------------------------+

For upgrades, the user sees:
+------------------------------------------------------------------------+
|  Install and/or upgrade package(s) or system                           |
|  Which already-installed packages do you wish to upgrade ?             |
|  +------------------------------------------------------------------+  |
|  |  all             Upgrade everything to the latest version        |  |
|  |  priority        Select in more detail, grouped by priority      |  |
|  |  section         Select in more detail, grouped by section       |  |
|  |  list            Go straight to listing of all those available   |  |
|  |  none            Don't upgrade anything                          |  |
|  +------------------------------------------------------------------+  |
|                     +----------+      +----------+                     |
|                     |    OK    |      |   Abort  |                     |
|                     +----------+      +----------+                     |
+------------------------------------------------------------------------+

If the user says `important', `standard' or `optional' then new
packages with at least that priority are selected for installation and
others are recorded as deselected (so that they won't, for example,
count as new next time).

If the user selects `priority' or `section' from the new packages or
upgrade screens then they get a screen for each priority or section,
respectively, which looks like this:

+------------------------------------------------------------------------+
|  Install and/or upgrade package(s) or system                           |
|  Packages with priority classification `optional'                      |
|  Which new packages with priority `optional' do you wish to install ?  |
|  +------------------------------------------------------------------+  |
|  |  all             All of them                            10Mb     |  |
|  |  individual      Decide for each package separately              |  |
|  |  list            Select from a list of the relevant packages     |  |
|  |  none            None of them                           50Mb     |  |
|  +------------------------------------------------------------------+  |
|                     +----------+      +----------+                     |
|                     |    OK    |      |   Abort  |                     |
|                     +----------+      +----------+                     |
+------------------------------------------------------------------------+

When removing, you get the following screen:
+------------------------------------------------------------------------+
|  Remove packages from system                                           |
|  Which already-installed packages do you wish to remove  ?             |
|  +------------------------------------------------------------------+  |
|  |  list            Select from list of all packages installed      |  |
|  |  priority        View packages organised by priority             |  |
|  |  section         View packages organised by section              |  |
|  |  none            None of them                                    |  |
|  +------------------------------------------------------------------+  |
|                     +----------+      +----------+                     |
|                     |    OK    |      |   Abort  |                     |
|                     +----------+      +----------+                     |
+------------------------------------------------------------------------+

`priority' and `section' simply present a scrollable list of
priorities and sections, respectively, where selecting a priority or
section produces a list of the appropriate packages.

The individual package selection screen looks like this:
+------------------------------------------------------------------------+
|            smail - Electronic mail transport system
| +--------------------------------------------------------------------+ |
| | Smail is the recommended mail transport agent (MTA) for Debian.
| | 
| | An MTA is the innards of the mail system - it takes messages from
| | user-friendly mailer programs and arranges for them to be delivered
| | locally or passed on to other systems as required.
| | 
| | In order to make use of it you must have one or more user level
| | mailreader programs such as elm, pine, mailx or Emacs (which has
| | Rmail and VM as mailreaders) installed.  If you wish to send
| | messages other than just to other users of your system you must
| | also have appropriate networking support, in the form of IP or
| | UUCP.
| +--------------------------------------------------------------------+ |
                                                                       |

|
|  +------------------------------------------------------------------+  |
|  | There are currently 2 packages which have not been correctly     |  |
|  | installed or configured.  You may try installing them again,     |  |
|  | or (using the `individual' and `list' options) choose to remove  |  |
|  | some of them instead of trying again.                            |  |
|  +------------------------------------------------------------------+  |
|  +------------------------------------------------------------------+  |
|  |  upgrade         Upgrade the package to the version available
|  |  leave           Leave the package alone (do not upgrade)
|  |  remove          Remove the package
|  +------------------------------------------------------------------+  |
|    +------------+   +------------+  +------------+  +------------+     |
|    |     OK     |   |  Go back   |  |Concise list|  |   Abort    |     |
|    +------------+   +------------+  +------------+  +------------+     |
+------------------------------------------------------------------------+

|  |  install         Install the package
|  |  reinstall       Re-install the package to try to fix it
|  |  upgrade         Upgrade the package to the version available

|  |  leave           Do not install this package
|  |  leave           Leave the package alone

|  |  remove          Remove the package


Reply to: