Bug#724854: apt: incorrect warning about unmet dependencies with virtual package

2013-09-28 Thread Faheem Mitha
Package: apt
Version: 0.9.7.9
Severity: normal

On wheezy amd64, I'm getting:

faheem@orwell:~$ sudo apt-get install libjpeg62-dev libtiff4-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libtiff4-dev : Depends: libjpeg-dev
E: Unable to correct problems, you have held broken packages.

It is fairly obvious what the problem is.

libtiff4-dev depends on the virtual package libjpeg-dev, which is
currently provided by the installed libjpeg8-dev.

faheem@orwell:~$ sudo apt-get install libjpeg-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'libjpeg8-dev' instead of 'libjpeg-dev'
libjpeg8-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

However, libjpeg62-dev also provides libjpeg-dev. When installing
libjpeg62-dev, libjpeg8-dev is removed.

faheem@orwell:~$ sudo apt-get install libjpeg62-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  libjpeg62
The following packages will be REMOVED:
  libjpeg8-dev r-base-dev
The following NEW packages will be installed:
  libjpeg62 libjpeg62-dev
0 upgraded, 2 newly installed, 2 to remove and 0 not upgraded.
Need to get 298 kB of archives.
After this operation, 78.8 kB of additional disk space will be used.
Do you want to continue [Y/n]?

So, we are trying to install package A which depends on virtual
package V, which is provides by the installed package V1. However, we
are simultaneously trying to install package V2 which also provides
V. In a nutshell,

sudo apt-get install A V2

is what is giving the error.

This odd combination presumably confuses apt, but there is no error
here as such.

This may be a duplicate of a known problem. I saw a couple of bugs
that look kind of similar, but I'm not sure. If so, please merge as
appropriate. Thanks.

Regards, Faheem

-- 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::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::NeverAutoRemove:: ^gnumach$;
APT::NeverAutoRemove:: ^gnumach-image.*;
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::Update ;
APT::Update::Post-Invoke-Success ;
APT::Update::Post-Invoke-Success:: test -x /usr/bin/apt-show-versions || exit 
0 ; apt-show-versions -i;
APT::Architectures ;
APT::Architectures:: amd64;
APT::Architectures:: i386;
APT::Compressor ;
APT::Compressor::. ;
APT::Compressor::.::Name .;
APT::Compressor::.::Extension ;
APT::Compressor::.::Binary ;
APT::Compressor::.::Cost 1;
APT::Compressor::gzip ;
APT::Compressor::gzip::Name gzip;
APT::Compressor::gzip::Extension .gz;
APT::Compressor::gzip::Binary gzip;
APT::Compressor::gzip::Cost 2;
APT::Compressor::gzip::CompressArg ;
APT::Compressor::gzip::CompressArg:: -9n;
APT::Compressor::gzip::UncompressArg ;
APT::Compressor::gzip::UncompressArg:: -d;
APT::Compressor::bzip2 ;
APT::Compressor::bzip2::Name bzip2;
APT::Compressor::bzip2::Extension .bz2;
APT::Compressor::bzip2::Binary bzip2;
APT::Compressor::bzip2::Cost 3;
APT::Compressor::bzip2::CompressArg ;
APT::Compressor::bzip2::CompressArg:: -9;
APT::Compressor::bzip2::UncompressArg ;
APT::Compressor::bzip2::UncompressArg:: -d;
APT::Compressor::xz ;
APT::Compressor::xz::Name xz;
APT::Compressor::xz::Extension .xz;
APT::Compressor::xz::Binary xz;
APT::Compressor::xz::Cost 4;
APT::Compressor::xz::CompressArg ;
APT::Compressor::xz::CompressArg:: -6;
APT::Compressor::xz::UncompressArg ;
APT::Compressor::xz::UncompressArg:: -d;
APT::Compressor::lzma ;
APT::Compressor::lzma::Name lzma;
APT::Compressor::lzma::Extension .lzma;

Bug#724854: apt: incorrect warning about unmet dependencies with virtual package

2013-09-28 Thread David Kalnischkies
Hi Faheem,

On Sat, Sep 28, 2013 at 8:53 PM, Faheem Mitha fah...@faheem.info wrote:
 On wheezy amd64, I'm getting:

 faheem@orwell:~$ sudo apt-get install libjpeg62-dev libtiff4-dev
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 Some packages could not be installed. This may mean that you have
 requested an impossible situation or if you are using the unstable
 distribution that some required packages have not yet been created
 or been moved out of Incoming.
 The following information may help to resolve the situation:

 The following packages have unmet dependencies:
  libtiff4-dev : Depends: libjpeg-dev
 E: Unable to correct problems, you have held broken packages.

 It is fairly obvious what the problem is.

 libtiff4-dev depends on the virtual package libjpeg-dev, which is
 currently provided by the installed libjpeg8-dev.

 faheem@orwell:~$ sudo apt-get install libjpeg-dev
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 Note, selecting 'libjpeg8-dev' instead of 'libjpeg-dev'
 libjpeg8-dev is already the newest version.
 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

 However, libjpeg62-dev also provides libjpeg-dev. When installing
 libjpeg62-dev, libjpeg8-dev is removed.

Sorry, but you lost me here.

apt-cache show libjpeg62-dev/stable libjpeg8-dev/stable | grep -e
'^Package:' -e 'Provides:'
Package: libjpeg62-dev
Package: libjpeg8-dev
Provides: libjpeg-dev

So, libjpeg62-dev isn't providing libjpeg-dev in stable – and also not
in testing or unstable.

(It is also why apt-get is automatically deciding that you mean libjpeg8-dev
 as it is the only provider, if there would be more, you would need to choose)

Also, libjpeg8-dev conflicts with libjpeg62-dev, so they can't co-exist
- your first install request is indeed an impossible situation.


Best regards

David Kalnischkies


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



Bug#724854: apt: incorrect warning about unmet dependencies with virtual package

2013-09-28 Thread Faheem Mitha


On Sat, 28 Sep 2013, David Kalnischkies wrote:


Hi Faheem,

On Sat, Sep 28, 2013 at 8:53 PM, Faheem Mitha fah...@faheem.info wrote:



On wheezy amd64, I'm getting:

faheem@orwell:~$ sudo apt-get install libjpeg62-dev libtiff4-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libtiff4-dev : Depends: libjpeg-dev
E: Unable to correct problems, you have held broken packages.

It is fairly obvious what the problem is.

libtiff4-dev depends on the virtual package libjpeg-dev, which is
currently provided by the installed libjpeg8-dev.

faheem@orwell:~$ sudo apt-get install libjpeg-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'libjpeg8-dev' instead of 'libjpeg-dev'
libjpeg8-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

However, libjpeg62-dev also provides libjpeg-dev. When installing
libjpeg62-dev, libjpeg8-dev is removed.


Sorry, but you lost me here.

apt-cache show libjpeg62-dev/stable libjpeg8-dev/stable | grep -e
'^Package:' -e 'Provides:'
Package: libjpeg62-dev
Package: libjpeg8-dev
Provides: libjpeg-dev

So, libjpeg62-dev isn't providing libjpeg-dev in stable – and also not
in testing or unstable.


You're right, this was in squeeze.


(It is also why apt-get is automatically deciding that you mean libjpeg8-dev
as it is the only provider, if there would be more, you would need to choose)


Right.


Also, libjpeg8-dev conflicts with libjpeg62-dev, so they can't co-exist
- your first install request is indeed an impossible situation.


Ok, so it wasn't a bug after all. Sorry for the noise. Please close it. 
Sorry.


   Regards, Faheem