Sven Joachim wrote: > Bob Proulx wrote: > > Sven Joachim wrote: > >> Unfortunately, apt-get does not have a safe-upgrade command. > > > > Here I beg to differ. 'apt-get upgrade' is the safe-upgrade mechanism. > > Well, it's not. Or it is, but it doesn't work in most cases.
Hmm... Well... Works for me! :-) But obviously we have different definitions of "working" and that word is ambiguous enough to allow a planet through it. I understand what it is doing and like the behavior. You understand what it is doing and prefer different behavior. That difference in preference pulls me toward apt-get and you toward aptitude. Hopefully that is a fair description. They are simply different and behave differently. > > Packages cannot be added or removed > > This is the problem with it. With "aptitude safe-upgrade", new > dependencies are automatically installed, and automatically installed > packages are removed if they are no longer needed. This is exactly what > you want in the case of library transitions: if libfoo changes its > soname, say from libfoo0 to libfoo1, the newly introduced libfoo1 will > be installed when a package depends on it, and libfoo0 gets removed when > no installed packages depend on it any more. I wouldn't call that a "safe" upgrade because it changes packages. Behavior could change in that case. It wouldn't be suitable for a production stable platform. Or at least it would take more careful scrutiny. I did not realize that it did that and thought that it kept the package lists the same. Thanks for the education. I will play with it more and file the information away for future reference. For library transitions, full agreement. When it works I can see that algorithm should work nicely. But I have a question. Does it distinguish between libraries and other packages? Perfectly? Because 'apt-get autoremove' is a similar feature and it seems I am often running into cases where a package that I need that was pulled in as a dependency and so marked as 'auto' will be offered for removal. The system thinks some package is nothing but a dependency because it was not explicitly installed. And yet if it were removed I would consider it a breakage. Would 'safe-upgrade' remove it automatically? If so then I disagree on it being safe. It reads much more like a 'apt-get dist-upgrade' followed by an 'apt-get autoremove'. I am very carefully reviewing the autoremove operation because it most certainly is not safe. > I have never used the dist-upgrade command in aptitude since this > safe-upgrade behavior was introduced. Since 'aptitude safe-upgrade' seems only relatively safer than dist-upgrade that makes a lot of sense. It seems a slightly safer replacement for it. However it still seems fairly more dangerous than 'apt-get upgrade' which is very safe. And then all we need to do is figure out the "working" part of each. :-) Bob
signature.asc
Description: Digital signature