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

Bug#293008: Sarge Installation Report: succes, but strange tasksel behavior



On Wed, Feb 09, 2005 at 05:03:38PM +0100, Frans Pop wrote:
> reassign 293008 tasksel
> severity 293008 minor
> retitle 293008 Should stop processing tasks if user breaks off task removal
> thanks

...

> It appears that first apt(itude) is called to remove the E-mail-server
> task. It shows the packages to be deleted for the E-mail-server task and
> asks if I want to proceed. I choose 'n' and confirm with <enter>.
> Apt(itude) does what I ask, and breaks off: nothing is deleted.

Thanks for clearing this out :-)

Now that I understand better how this works, I feel this behavior 
is confusing to less experienced users (that we are also adressing 
with the new installer).

I am confused by the feature that tasksel is designed to also 
_remove_ tasks (beyond simple resolution of conflicting tasks). I assume 
this means that tasksel has some database of selected and deselected tasks. 

IMO, this results in a difficult to understand interference between
the apt/dpkg database(s) and the tasksel database. I have seen cases
where running "tasksel" to _install_ the fileserver package triggered 
the removal of 100 KDE packages. That is not what I intended when I 
used tasksel to _install_ the file server packages. I assume that
happened because I had installed the x-server and desktops stuff 
"by hand" with apt-get install x-server etc. and tasksel was not aware.

The behavior that would be much easier for me to understand is:

* tasksel is "stateless" and only triggers "apt-get install ..."
  (with no '-' packages)

* there is a clever "{apt-get|aptitude|tasksel} remove --recursive" 
  command that removes a "top-level" package and all packages for 
  which the "external usage count" outside the tree of packages 
  that support this "top-level" package is zero.

  [this is _not_ a feature where some program _remembers_ which
   packages are installed by dependency. Again, such an approach 
   adds state info that is difficult to understand for me as a
   less experienced user. My proposal is to execute the calculation
   of "external usage count" at the moment itself, depending 
   only on the apt-get/dpkg package database.]

I believe this is important, because "tasksel", as part of the debian
installer, is the front-end that will install 90% (in volume) of the 
software on thousands of computers of less experienced users. If these
users continue to use tasksel after the initial install, it is
important that the behavior is easy to understand and also the
"install" and "remove" modes are clearly marked.

Otherwise, I am afraid that many less experienced users (like me) will 
be unpleasantly surprised that "installing" a file server, removes half 
of their workstation programs, if that workstation install did not initially 
occur through tasksel.

Does this make sense, or did I miss the point entirely ? Does this
functionality (of separated "task install" and "recursive remove")
exist in other programs ? I did not immediately find it in apt-get and
aptitude.

HTH,

Peter



Reply to: