Warning: this is a moderately long post. I would appreciate
any and all feedback - _BOTH_ positive _AND_ negative.
(Hell, just to get you lot moving, I'd even appreciate
"Me Too"s :-)
Yes, Lars, I read your long rant, and it got me to thinking
about possible solutions for dselect's user interface. :)
Bear in mind that all my comments are strictly IMESHO. :)
The main basis for this discussion is that dselect at the
1) unwieldy: you have to scroll through a large number of
packages when installing.
2) unfriendly: it makes dependancy checks _every time_
you select a package.
My proposal is that 2) would be solved by checking for
dependancies, suggestions, and recommendations at the end
of package selection. Recommended packages would
automatically be selected, and the user informed; suggested
packages would _not_ be selected, but would be included for
the user's perusal. Unresolved dependancies would be
selected automatically, as for recommendations.
The important difference is that if a _recommended_ package
is _de_selected at this stage, and the selection process is
terminated, dselect would _not_ complain further. _Only
package dependancies_ would be checked at this stage;
complaints would keep occurring until all dependancies are
fulfilled. (All this assumes that the dependancies in the
archive are correct.) This (IMO) solves the major problem I
have with dselect: continual nagging to select a recommended
package. Dependancies I can understand; recommendations,
though, should be overridable.
1) would be solved by having various columns: on the left is
the package section; next to that, a list of packages within
that section; and next to that, the package description.
How, exactly, the description is displayed would probably
depend on the screen resolution: low (80x25) could probably
have the full description on the right; high (eg, 100x40,
which is what I usually use) might have the short
description next to the package, and the full description at
The priority of the package might determine where in the
list the package is placed (important above standard above
optional above extra), but it should probably be displayed
somewhere on the right of the screen - say, above the
description. Help on all this would be displayed in
abbreviated form at the bottom; help screens would, of
course, be available.
With dependancy resolution, there could be three or four
columns on the screen, of packages. Packages with unresolved
dependancies (and, in the first iteration, unselected
recommended and/or suggested packages) would be in the left
column. The _unselected_ linked packages would be in the
next column, with any unselected linked packages _they_ have
in the next column. Four such levels should be enough, I
would imagine; I find it difficult to visualise more than
As mentioned above, recommended and depended packages would
automatically be selected. Suggested packages would just be
listed, "FYI" as it were. At the bottom, the currently
selected package's description would be displayed (on the
basis that there would be fewer packages to scroll through
than in the main screen), along with detailed information
about _why_ the selected package is listed.
Moving between columns would be via left/right arrows; up
and down arrows would do the obvious thing. Other keys...
well, that's mainly personal preference (vi's hjkl keys
would also work.. what makes you think that vi's my
preferred editor? :-)
The whole idea is to make dselect as easy to understand as
possible.. feel free to tear this entire email to shreds if
you want. :) I'll start working on a prototype next week,
with any good ideas you lot may suggest incorporated..
unless somebody else feels that the project would be better
served by my assisting other people doing similar things?
Oh, yes: acronym expansion: IMESHO == In My Ever So Humble
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-REQUEST@lists.debian.org . Trouble? e-mail to Bruce@Pixar.com