[Aptitude-devel] Bug#994504: Don't just say "not a real package"

David Kalnischkies david at kalnischkies.de
Fri Sep 17 09:32:39 BST 2021


On Thu, Sep 16, 2021 at 10:20:45PM +0200, Axel Beckert wrote:
> Do you know of any other non-real package type than "virtual"?

(Challenge accepted!)

The message from apt is hardcoded, so same for all virtuals, but from
a theory point of view apt "knows" about four different types:
- pure virtual (= multiple providers)
- single virtual (= only one provider)
- mixed virtual (= a real package with that name also exists)
- missing (= the name only appears in dependencies)
(and of course the "normal" only-real packages)

You can see that being used in 'apt-cache stats' output.

The practical difference is mostly marginal and not really something we
concern users with all too much. Error messages are e.g. different if
the unsatisfiable dependency is a "missing" package.
Trying to install a mixed package will install the real package. While
a pure virtual will display an error listing the available options.
A single virtual package on the other hand will be automatically picked
with a notice and installed.
I haven't checked, but I presume aptitude behaves similar as that is
more or less a direct consequence of how libapt itself works or
something people actively complain about if it isn't working that way.


APTs source code has a FIXME in that place reminding us that we should
display here the possible providers (like we do for install as
mentioned). It isn't implemented yet through. On the other hand I highly
doubt we will expose the type of virtual in any real capacity to the
user. I would imagine 'missing' would just say that there is no
provider, while pure & single would display a list – mixed already shows
the info of the real package.


I presume the grant idea behind mentioning "virtual" here in apt is that
the user has another term available which might be easier to look up as
not everyone will know what a "not real" package even is – they all do
not exist in the physical space and are hence by definition all not
real/virtual?! If that is true or not is anyone's guess. I do not
consider it bloat on the apt side, but I also can't really consider it
missing for aptitude… we might agree on the fact that the list of
providers is missing here through. ☺


Best regards

David Kalnischkies
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/aptitude-devel/attachments/20210917/68177241/attachment-0001.sig>


More information about the Aptitude-devel mailing list