[NCLUG] Debian Question

Bob Proulx bob at proulx.com
Thu Jan 3 15:44:07 MST 2008


dann frazier wrote:
> Bob Proulx wrote:
> > The 'upgrade' target upgrades packages of the same names.  ...
> 
> fyi, there was a discussion about this on planet.debian.org last
> month. Colin Watson was complaining about the new-dependencies issue:
> 
>   http://www.chiark.greenend.org.uk/ucgi/~cjwatson/blosxom

I should spend more time reading blogs.  Interesting stuff.  If only I
had the time...

> And, as I recall, one of the maintainers blog-replied and said they'd
> consider changing this behavior. I can't find a link to that reply
> though (yay blog conversations).

This one I think?

  http://blog.drinsama.de/erich/en/linux/debian/2007112801-dist-upgrade-hints.html

The problem described there is a related but different problem.  (And
being an old Galeon user I experienced it first hand.  I still miss
the Galeon 1.2 series.  "The web and only the web.")  This problem
occurs whenever a package is built with a specific version of
something else that changes asynchronously.  This is a problem for
unstable/testing tracking developments as they occur but not for
stable which does not change.

The problem described was that Galeon depended upon the particular
Mozilla it was built with and shared much of the library and
filesystem infrastructure with it.  Whenever Mozilla moved forward it
would break Galeon.  Galeon needed to declare an exact dependency upon
the Mozilla it was built against.  A new Mozilla would queue to
replace the old Mozilla.  Okay so far.  But it was impossible to
satisfy the "==" dependency by Galeon on the previous version of
Mozilla.  That can only work if Galeon was removed.  Any package with
an equals dependency upon another independent package is susceptible
to this problem.

Philosophically what should be the correct behavior in that case?

For anyone tracking Unstable they presumably want the latest available
version of installed packages.  That would mean that the latest
version of Mozilla should be installed, pushing out the older version
of Galeon because Galeon fell behind.  Oh well.  The nature of the
bleeding edge.

Conversely anyone who holds back and does not upgrade Mozilla (such as
I did trying to keep Galeon alive) really did not have the latest
version of things.  It created a blockage to upgrading packages.
Using 'upgrade' which prevented package list changes, observing the
blocks, manually selecting individual packages for installation and
removal, other tweaks can keep things alive in a custom way but is
quite tedious day after day.  (Eventually I gave in and let my favored
Galeon go away.)

As far as erich's comment:

  And each time, I basically had to tell people "well, you shouldn't
  have used 'dist-upgrade', it's for upgrading between major version
  of Debian, not for daily use.

I disagree.  There is no major version differences when running
Unstable.  Or rather perhaps that every change is a major version
change.  Unstable is a continuous conveyer belt of individually
wrapped chocolates that never stops.  When running Unstable the use of
'dist-upgrade' is pretty much the normal routine.

In the end this is really just one of the issues of living on an
unstable development track.  One of the reasons that Unstable/Testing
is not recommended for novices.  Development tracks often have growing
pains.

By the way...  If 'dist-upgrade' without removes is desired then this
can be done with 'apt-get -o APT::Get::Remove=false dist-upgrade' or
putting that setting into apt.conf.

Bob



More information about the NCLUG mailing list