LWN.net Logo

Advertisement

E-Commerce & credit card processing - the Open Source way!

Advertise here

A grumpy editor's calendar search

A grumpy editor's calendar search

Posted Mar 10, 2004 15:42 UTC (Wed) by coriordan (subscriber, #7544)
In reply to: A grumpy editor's calendar search by rise
Parent article: A grumpy editor's calendar search

Our editor lost ical when he used 'dist-upgrade' for an unmonitored routine upgrade. Routine upgrades should not delete your favourite applications. He should have used 'upgrade' for such an upgrade.

That is why I'm right.

There is one detail that is up for debate though, and that's my claim that 'dist-upgrade' is for version upgrades. 'dist-upgrade' is for unusual circumstances. Version upgrades are the best example I know of, and are the only example I have encountered in the last 3 years. If you'd like to list all the possible circumstances where 'dist-upgrade' can be useful, I probably won't dispute you (although apt-get is not the topic of this forum).

(small thing: both tools "handle dependencies correctly". If one doesn't: please file a bug report.)


(Log in to post comments)

A grumpy editor's calendar search

Posted Mar 10, 2004 20:37 UTC (Wed) by socket (subscriber, #43) [Link]

We're talking about slightly different senses of the word 'upgrade', I think.

When I was running Debian testing, I'd use 'apt-get upgrade' most of the time, until I had a situation where nothing more would get installed despite new packages being available unless I used 'apt-get dist-upgrade'. On one occasion, I think python had to be ripped out and replaced with python#.# packages and a whole raft of other packages depended on the old python instead of python#.#. Lots of things needed to be deleted, and many of the same had no newer version to provide a smooth transition to python#.#. The new python packages conflicted with the old ones. Thus, a normal 'upgrade' would say, "Ah. I'll spare your system -- better to upgrade nothing than to remove anything." Perhaps a wise choice, for many.

This makes sense for people running the stable branch of debian. But if you're running testing or unstable, things are going to change a lot, and users want to continue to get new packages, they will have to accept some amount of bridge-burning in the form of removing old packages responsible for a conflict. The newer packages of Python conflicted with the existing one specifically to encourage users to move with the times.

I think there was also some confusion in what I meant by 'handling dependencies correctly' -- in one sense, it just makes sure that Depends: requirements are satisfied, no other conditions necessary. In another sense, (the one I meant,) it means that Depends: requirements are satisfied, and that you don't get into a state where you can no longer upgrade your system to newly available packages on account of the importance of keeping old ones around. For developers, the latter is a pretty important dependency.

I'd be surprised if I ever made it more than a week with Debian Testing without the normal 'apt-get upgrade' process simply refusing to install new packages. I'd also argue that 'dist-upgrade' is for both unusual circumstances, and running a suitably modern system.

We're both right, I think. You're right, for people running Stable.

But the issue of which sense of the word 'upgrade' we mean is really at the core of this. I'd argue that most people consider a system upgrade (in the generic, non-debian sense) to be something that modernizes the system. A user running testing or unstable and only using 'apt-get upgrade' will eventually be making no changes to their system at all, and that doesn't constitute much of an upgrade.

apt-get dist-upgrade can seriously damage your health

Posted Mar 10, 2004 21:58 UTC (Wed) by robster (subscriber, #4849) [Link]

Of course APT will kindly tell you what it is holding back because of conflicts/new packages required when doing a plain upgrade. Often the best approach is to do an upgrade and then manually go through the kept back packages and install them, allowing you to get any new packages that are needed to upgrade existing ones and maybe prevent yourself from removing packages you do want.

This is one example of why apt-get dist-upgrade is dangerous, and is in fact not recommended for distribution migrations anymore except for advanced users . (Please see the woody release notes for more details on this).

Cheers,

Rob

A grumpy editor's calendar search

Posted Mar 11, 2004 8:11 UTC (Thu) by lacostej (subscriber, #2760) [Link]

A usefull use of dist-upgrade is when you modify your package selection.

E.g. I have two machines, one desktop and a laptop that I keep in sync.
I move the data (/home) over using a rsync script. I update the packages as follow:
on the primary machine:

apt-get upgrade every now and then

When about to apply changes onto laptop.

dpkg --get-selections > /home/dpkg-get-selections-master.txt

on the mirror (laptop)

apt-get update
scp desktop:/home/dkpg-get-selections-master.txt /home/
dkpg --set-selections < /home/dpkg-get-selections-master.txt
apt-get dist-upgrade

apt-get upgrade doesn't work in that case, based on my experience.

A problem of apt-get dist-upgrade is that it also pulls the "Suggested" packages.

Some pointers:
http://lists.debian.org/debian-user/2003/debian-user-200311/msg00024.html
http://www.debian.org/doc/manuals/quick-reference/ch-package.en.html#s-record
(this one should probably be updated)

A grumpy editor's calendar search

Posted Mar 18, 2004 11:16 UTC (Thu) by sholden (guest, #7881) [Link]

If you has said "'dist-upgrade' shouldn't be used for an unmonitored routine upgrade" then, yes, you may have been right. But you didn't, you said:

"'dist-upgrade' shouldn't be used by people running Debian unstable"

Which is completely false. If dist-upgrade is not used by people running unstable they will reach a point at which their system does not upgrade when they tell it to.

"'dist-upgrade' should be used with care when 'upgrade' doesn't perform as expected" sounds reasonable. But again, that isn't what you said. You gave no qualifier and simply stated dist-upgrade should not be used by unstable users.

Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds