On 12/23/99, Egbert Bouwman addressed "Bad points for debian (was: resetting 
dpkg)":
> In the dselect man page (dd 29th november 1995) in slink you can read:
>    The dselect package selection interface is confusing or even 
>    alarming to the new user.
> The debian group tries to remedy this by developing a new package, 
> apt etc, which is not yet finished. For years on end we have to work 
> now with the old interface. But I have never seen a clear, readable, 
> understandable etc story about the use of these packages.
> 
> Yes, in many texts you see something like: experiment, read the help
> pages, use the ... keys (they are your friend).
> In the meantime numerous people, often very sophisticated linux users,
> have been frustrated by dselect-dpkg. Many turned to another 
> distibution exactly for this reason.

I experienced the same frustration for a while.  What ended it was a
*careful* reading of the internal dselect help.  This, combined with
my experience produced a careful respect for all the things that
dselect is showing me and is about to do at any given moment.  For
example, when you select a package and dselect enters the conflict
resolution screen, and there are 50 or so packages there, some of
which you recognize as being somewhat important for you, **now** is
the time to "go back."  If you hit Enter, the status of most of those
packages will be different than when you began.  The keys you can use
to "Quit, Exit, Overwrite," according to the help screen, are: (note
capitals!)

"
 Return  Confirm, quit (check dependencies)  
   Q     Confirm, quit (override dep.s)      
 X, Esc  eXit, abandoning any changes made   
   R     Revert to state before this list    
   U     set all to sUggested state          
   D     set all to Directly requested state 
"

So the right thing to do is "R" - revert to state before this list.
If you accept the list as-is, you can almost guarantee you won't be
able to get that same package listing again.  Note that the opposite
of "Return" is "Q", and apparently "U" and "D" are opposites too,
analogous to "Return" and "Q."  "X" looks similar to "R", but some
experimentation is in order to confirm that -- it may quit package
selection altogether.  

So experiment carefully, have patience, and respect for the fact that
there are thousands of packages managed by dselect, which manages
their real-time status on an individual basis, accounting for a
complex inter-dependency scheme.  Whatever you change and accept (even
unknowingly) is *real*, and is immediately reflected in the package
status database.

You may be able to create a kind of self-protection error recovery by
using dpkg --get-selections > somefile before running dselect.  Then
if you want to revert from your dselect-ion, run dpkg --set-selections
< somefile afterwards.  YMMV.

Happy Linuxing,

Jesse

Reply via email to