Bug#612280: apt: Can't find out why dist-upgrade wants to install new packages

2011-02-07 Thread Sam Morris
Package: apt
Version: 0.8.10.3
Severity: normal

While debugging #492863 and #493655 I found that 'apt-get dist-upgrade'
wants to install two obsolete packages. I can't find any combination of
debugging options to tell me why this is though.

# apt-get --dry-run -o Debug::pkgDepCache::AutoInstall=1 -o 
Debug::pkgProblemResolver=1 dist-upgrade
Reading package lists... Done
Building dependency tree   
Reading state information... Done
Calculating upgrade... Starting
Starting 2
Done
Done
The following NEW packages will be installed:
  diff mktemp
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Inst diff (1:3.0-1 Debian:6.0/stable, Debian:unstable [all])
Conf diff (1:3.0-1 Debian:6.0/stable, Debian:unstable [all])
Inst mktemp (8.5-1 Debian:6.0/stable, Debian:unstable [all])
Conf mktemp (8.5-1 Debian:6.0/stable, Debian:unstable [all])

# aptitude dist-upgrade
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.



-- Package-specific info:

-- apt-config dump --

APT ;
APT::Architecture amd64;
APT::Build-Essential ;
APT::Build-Essential:: build-essential;
APT::Install-Recommends 1;
APT::Install-Suggests 0;
APT::Acquire ;
APT::Acquire::Translation environment;
APT::Authentication ;
APT::Authentication::TrustCDROM true;
APT::NeverAutoRemove ;
APT::NeverAutoRemove:: ^firmware-linux.*;
APT::NeverAutoRemove:: ^linux-firmware$;
APT::NeverAutoRemove:: ^linux-image.*;
APT::NeverAutoRemove:: ^kfreebsd-image.*;
APT::NeverAutoRemove:: ^linux-restricted-modules.*;
APT::NeverAutoRemove:: ^linux-ubuntu-modules-.*;
APT::Never-MarkAuto-Sections ;
APT::Never-MarkAuto-Sections:: metapackages;
APT::Never-MarkAuto-Sections:: restricted/metapackages;
APT::Never-MarkAuto-Sections:: universe/metapackages;
APT::Never-MarkAuto-Sections:: multiverse/metapackages;
APT::Never-MarkAuto-Sections:: oldlibs;
APT::Never-MarkAuto-Sections:: restricted/oldlibs;
APT::Never-MarkAuto-Sections:: universe/oldlibs;
APT::Never-MarkAuto-Sections:: multiverse/oldlibs;
APT::Periodic ;
APT::Periodic::Update-Package-Lists 1;
APT::Periodic::Download-Upgradeable-Packages 0;
APT::Periodic::AutocleanInterval 1;
APT::Periodic::Update-Package-Lists: 1;
APT::Periodic::Download-Upgradable-Packages: 1;
APT::Update ;
APT::Update::Post-Invoke ;
APT::Update::Post-Invoke:: touch /var/lib/apt/periodic/update-success-stamp 
2/dev/null || true;
APT::Update::Post-Invoke-Success ;
APT::Update::Post-Invoke-Success:: [ ! -f /var/run/dbus/system_bus_socket ] || 
/usr/bin/dbus-send --system --dest=org.debian.apt --type=signal /org/debian/apt 
org.debian.apt.CacheChanged || true;
APT::Archives ;
APT::Archives::MaxAge 7;
APT::Archives::MinAge 2;
APT::Archives::MaxSize 512;
Dir /;
Dir::State var/lib/apt/;
Dir::State::lists lists/;
Dir::State::cdroms cdroms.list;
Dir::State::mirrors mirrors/;
Dir::State::extended_states extended_states;
Dir::State::status /var/lib/dpkg/status;
Dir::Cache var/cache/apt/;
Dir::Cache::archives archives/;
Dir::Cache::srcpkgcache srcpkgcache.bin;
Dir::Cache::pkgcache pkgcache.bin;
Dir::Etc etc/apt/;
Dir::Etc::sourcelist sources.list;
Dir::Etc::sourceparts sources.list.d;
Dir::Etc::vendorlist vendors.list;
Dir::Etc::vendorparts vendors.list.d;
Dir::Etc::main apt.conf;
Dir::Etc::netrc auth.conf;
Dir::Etc::parts apt.conf.d;
Dir::Etc::preferences preferences;
Dir::Etc::preferencesparts preferences.d;
Dir::Etc::trusted trusted.gpg;
Dir::Etc::trustedparts trusted.gpg.d;
Dir::Bin ;
Dir::Bin::methods /usr/lib/apt/methods;
Dir::Bin::dpkg /usr/bin/dpkg;
Dir::Media ;
Dir::Media::MountPath /media/apt;
Dir::Log var/log/apt;
Dir::Log::Terminal term.log;
Dir::Log::History history.log;
Dir::Ignore-Files-Silently ;
Dir::Ignore-Files-Silently:: ~$;
Dir::Ignore-Files-Silently:: \.disabled$;
Dir::Ignore-Files-Silently:: \.bak$;
Dir::Ignore-Files-Silently:: \.dpkg-[a-z]+$;
DPkg ;
DPkg::Pre-Install-Pkgs ;
DPkg::Pre-Install-Pkgs:: /usr/bin/apt-listchanges --apt || test $? -ne 10;
DPkg::Pre-Install-Pkgs:: /usr/sbin/dpkg-preconfigure --apt || true;
DPkg::Tools ;
DPkg::Tools::Options ;
DPkg::Tools::Options::/usr/bin/apt-listchanges ;
DPkg::Tools::Options::/usr/bin/apt-listchanges::Version 2;
DPkg::Post-Invoke ;
DPkg::Post-Invoke:: if [ -x /usr/bin/debsums ]; then /usr/bin/debsums 
--generate=nocheck -sp /var/cache/apt/archives; fi;
DPkg::Post-Invoke:: if [ -d /var/lib/update-notifier ]; then touch 
/var/lib/update-notifier/dpkg-run-stamp; fi; if [ -e 
/var/lib/update-notifier/updates-available ]; then echo  
/var/lib/update-notifier/updates-available; fi ;
Unattended-Upgrade ;
Unattended-Upgrade::Allowed-Origins ;
Unattended-Upgrade::Allowed-Origins:: ${distro_id} stable;
Unattended-Upgrade::Allowed-Origins:: ${distro_id} 
${distro_codename}-security;
CommandLine ;
CommandLine::AsString apt-config dump;

-- /etc/apt/preferences --

Package: *
Pin: release o=Debian,a=stable
Pin-priority: 540

Package: *
Pin: release 

Bug#612280: apt: Can't find out why dist-upgrade wants to install new packages

2011-02-07 Thread Sam Morris
On Mon, 2011-02-07 at 14:03 +0100, David Kalnischkies wrote:
 On Mon, Feb 7, 2011 at 12:55, Sam Morris s...@robots.org.uk wrote:
  While debugging #492863 and #493655 I found that 'apt-get dist-upgrade'
  wants to install two obsolete packages. I can't find any combination of
  debugging options to tell me why this is though.
 
 It is because these 'obsolete packages' are 'Essential: yes' in lenny and
 APT installs all essential packages of all archives you have in your source
 lists to avoid problems you could have with packages depending on the
 functionality of these not installed essential packages as you could install
 packages from these archives on your system which need these
 essential packages (but do not declare this dependency as they are
 essential in this archive) otherwise.

Wow. I think my head just exploded after I managed to parse that
sentence, but after I picked up the pieces I think I understand. Thanks
for the explanation.

 In this case its more or less non-sense as the functionality is still provided
 by a package with a different name, but APT can't know this from the
 data it has, so it plays safe.
 
 In short: just remove lenny sources and APT will stop doing this.
 (or use the not-recommend not-documented debug option to disable it)
 
 See #216768 and his friends for further details.
 
 As we have a lot of bugs discussing this i am closing this one as it
 doesn't provide any further value. I hope you can agree.

Of course. Thanks again!

 
 Best regards
 
 David Kalnischkies

-- 
Sam Morris s...@robots.org.uk



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org