On Sun, 21 Mar 2010, Julian Andres Klode wrote: > > No, you are drawing conclusions that are not in policy. apt-get > > would not violate policy, because policy does not say that apt-get > > should try to "fix" the system. > It only tries it in dist-upgrade or when installing new packages; > and not on upgrade.
Ok, that's a lot better than doing it unconditionally, but still not enough as it's second-guessing the user wishes. > And thus it's not fixing the system; but just ensuring > that everything needed is there before doing distribution upgrades or > new installations. I would not mind if apt-get did that after a simple Yes/No question, even if the default is Yes, for example: The following essential and required packages will be installed: foo Do you want to continue [Y/n]? But apt-get does nothing of the sort, so, yes, it's "fixing" the system, and it's overriding the user decision to remove an essential package with dpkg --force-remove-essential. I agree that "fixing" the system may sometimes be a good thing, my point is that it should not be forced and it should not necessarily be the default behaviour. > Otherwise, changing the essential package set would > be a much more difficult thing. No, that's not true, and I wrote specifically about this case in the initial message for this bug report. The truth is that it has never been a difficult thing: Whenever new essential packages have been added to the system, a dependency on an already essential and required package has been always added. Normally, the package which has a closer functionality to that of the new essential and required package is chosen to carry the dependency. If no package is particularly suitable for this, base-files could be used as a last resort. Conversely, when we want to drop (not add) an essential package, we make it a dummy package first, for one release, like "mktemp" in squeeze. Ironically, what apt-get does in practice regarding the essential package set is to make it really tricky to change it, i.e. the opposite of what you said. See Bug #544481 for example, where the user wants to get rid of diff, no longer essential in squeeze. He can't because apt-get insist on considering diff as an essential package. So, I see cases where this apt-get behaviour is harmful, and I have yet to see a case where this apt-get behaviour has been actually required to change the essential package set ("required" in the sense that we can't deal with the change using new dependencies or dummy packages). > > Keeping the integrity of the system might be a desirable and nice > > thing in some cases, but it's not something that should be done > > *against* the will of the user! > > You can prevent the installation of new essential packages by > pinning them to -1: > > Package: test-essential > Pin: version 0.0-0 > Pin-Priority: -1 That is better than nothing, but does not solve the problem. The user who has already used dpkg --force-remove-essential should not have to do that. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org