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

Re: Total confusion with aptitude. Help, please!



On Thu, Jun 19, 2008 at 07:22:24PM +0000, Alan Mackenzie <acm@muc.de> was heard to say:
>     #Broken: 12  Will free 16.7MB of disk space DL Size: 6215kB
> 
> .  Using the aptitude command `find broken', it reports, amongst others,
> vim as being broken, giving as further details:
> 
>   * vim depends on libc6 (>= 2.3.6-6)
>   * vim depends on libncurses5 (>= 5.4-5)
>   * vim depends on vim-runtime (= 1:7.0-122+1etch3)
> 
> However, vim works just fine (I'm using it to write this email).

  First possible problem: aptitude uses "broken" as a shorthand for
"broken *after I apply what you've told me to do*".  Presumably canceling
the pending actions (e.g., via "Actions -> Cancel pending actions")
would drop this number to 0 (but you can't because your aptitude is too
old).  The fact that aptitude says it wants to download some packages and
change how much is installed also suggests you have some changes to your
system "queued up".

  I'm confused by those dependencies, though, because the version of vim
in sarge depends on libc6 >= 2.3.2.ds1-21 -- good thing, too, since the
version of libc6 in sarge is 2.3.2.ds1-22sarge6.  Whatever vim aptitude
is looking at is not installable on sarge, presumably because you have
other releases in your sources.list and told aptitude to install vim
from one of them.  More on that later.

> #########################################################################
> 
> So, I try to update aptitude itself (this will surely help me with my
> other problems ;-).  To begin with, I start aptitude, and type ":" on
> each of the 8 lines ("--- Security Updates", ....., "--- Tasks") in the
> hope of clearing out dross.

  btw, to upgrade just aptitude it might be easier to run
"aptitude install aptitude".

> I now find aptitude in the list (Successively <CR>ing "Upgradeable
> Packages", "Admin", "Main", "Aptitude").  It gives a list of
> dependencies, but doesn't say whether it is the current aptitude
> (0.2.15.9) or the newest one (0.4.4-4) which so depends.  Which is it?
> Several of these are shaded red.

  The one shown by default is the default candidate version (the version
number on the far right).  If you pick a particular version, that one is
shown.

> I type "u", and it tells me it's connecting to several hosts (presumably
> to ask them if they're awake), and then that it's downloaded 0B in 21s
> at 0B/s.  Is this an error message, or an expected status message?  What
> is it trying to download here?

  When you hit "u", aptitude checks for updates to the list of available
package versions.  It doesn't download anything if there aren't any changes.

> I now type "g", and the heavens open.  In the top half of the screen I
> get the message:
> 
>     --/  Packages being removed because they are no longer used:
> 
> followed by a frighteningly large list (about two hundred) packages
> shaded purple.  If this sentence were to be reformulated with the second
> verb active, e.g. "Packages being removed because X no longer uses
> them", what would X be?.  Then

  If you highlight various packages it should say what depends on them;
I might guess that they have to do with the packages being removed later.
I can't guess why the packages are being removed since you didn't say
what they are -- are they things you need or just libraries that nothing
depends on?

>     --/  Packages being installed to satisfy dependencies
>     
> followed by 20 package names (such as cupsys-common, libgnutls13), then
> 
>    --/  Packages being deleted due to unsatisfied dependencies
> 
> followed by an even frighteninglyier large list (~400 packages,
> including many libraries).  Lower down there is a list of 70 or 80
> packages to be updated.

  Same as above, highlighting the package will give you some sort of
information about why aptitude thinks they might be broken.  You could
also try canceling all these removals and seeing what aptitude tells you
is broken then.

  Without more information I can't really tell you why these packages
are being removed (and this version of aptitude uses the apt resolver,
which doesn't provide very detailed information about what's happening).

> How did I get into this state?  I tried several months ago to upgrade
> python (which I was trying again today), and all this happened.

  It's hard to say without more information; e.g., which packages are
being removed and why.

> I don't seem to be able to clear this dross out of my aptitude status.
> Where are the files which record all these things?  (There's no mention
> on the aptitude man page or the reference manual.)  The "u" command
> doesn't help here.  It downloads 0 bytes in 21s, again, and doesn't
> appear to do anything.

  Is there a reason you're still using sarge?  If you had the etch
version of aptitude you could use "Cancel pending actions" or
"aptitude keep-all" to throw out those actions out.  You can also remove
/var/lib/aptitude/pkgstates, but I don't recommend that except as a
last-ditch measure, as doing so will erase all information about which
packages have been automatically installed.

  Personally, I would probably hit "g", then hit ':' on all the packages
whose state was being changed (starting with the ones that were broken,
then the unused packages, and finally the rest).  Once I did that I'd
see what was still broken (probably nothing) and deal with those
packages individually.

> Would somebody please explain what's happened to my system, and how to
> fix it.  I would like to be able to _just_ install software, in
> particular a >= 2.4 version of python.

  I suspect you tried to install packages from multiple distributions --
particularly problematic with the antique version of aptitude you have,
because its dependency resolver can't span distributions correctly --
and then saved a half-broken set of planned changes in your package
states file.

  What happens if you just run "aptitude install python2.4", out of
curiosity?

  Daniel


Reply to: