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

Re: Bug#248443: aptitude: Incorrectly marks legit configuration as broken



On Wed, May 12, 2004 at 09:59:01PM -0700, Bharat Mediratta <bharat@menalto.com> was heard to say:
> Daniel Burrows wrote:
> >  Hm, so exim4 and friends are still listed as broken after you deselect
> >exim?  Can you see what's causing that?  (since it can't be exim
> >anymore)
> 
> I was unclear earlier.  After I deselected exim, there were no more 
> broken packages, but it still wanted to flip flop the light and heavy 
> daemons.

  If there aren't any broken packages, it shouldn't be modifying package
states between the initial view and the preview.

> Install exim4, exim4-base, exim4-config and exim4-daemon-heavy.  Quit 
> aptitude.  Restart aptitude and mark the exim package for install.  Quit 
> aptitude again.  Restart aptitude and it will report that there are 3 
> broken packages (exim4, exim4-base, exim4-config).  Hit "g" and it will 
> try to uninstall exim4-daemon-heavy and install exim4-daemon-light.

  So far, that all makes sense (except for switching the exim4 packages,
but I assume that has to do with the algorithm that fixes broken
packages, which is not infallible -- eg, it might be removing the -heavy
variant to fix exim, then realizing that exim still isn't fixed,
cancelling it, and then trying to fix exim4 by installing daemon-light)

> The problem as I see it is that once you're in this state, there's no 
> easy way to see that the root cause of the problem is that the exim 
> package is marked for install without paging through all package lists 
> to find the hidden one marked for install.  If I hit "g", it doesn't 
> list exim as a package to be installed.

  Without more information from the apt backend, I'm not sure I can
detect this case -- the problem package (exim) isn't going to be
installed any more, so there's no reason to suspect its involvement in
the automatic changes.  aptitude basically looks at the current package
states and tries to guess why apt did what it did, but I didn't
anticipate stuff like this and I'm not sure I can detect it easily.

  Ccing the deity list to see if they have additional comments.

> Now at this point, if you quit and restart aptitude and find the exim 
> package, it's marked as "pi".  Deselect it, hit + on exim-daemon-heavy 
> and - on exim-daemon-light, quit and restart aptitude, then all is 
> normal.  However, if you hit "g" first (but don't go through with the 
> install) then find the exim package it's simply marked as "p" and so you 
> can't uninstall it.  In that scenario, I found I had to hit + then - on 
> exim and then fix the two daemon packages before everything returns to 
> normal.

  Yes, something funny is going on with saving package state.

  Daniel

-- 
/-------------------- Daniel Burrows <dburrows@debian.org> -------------------\
|                        No-one remembers the singer.                         |
|                        The song remains.                                    |
\-Evil Overlord, Inc: planning your future today. http://www.eviloverlord.com-/



Reply to: