Bug#232639: Does dpkg -l refer only to installed, as opposed to available, packages?
Package: dpkg
Version: 1.10.18
Severity: minor
On Sat, Feb 14, 2004 at 11:07:07AM +0100, Mario Vukelic wrote:
> On Sat, 2004-02-14 at 03:24, Colin Watson wrote:
> > 'dpkg -p' lists whatever's in /var/lib/dpkg/available; 'dpkg -l'
> > lists whatever's in /var/lib/dpkg/status.
>
> Uh, for me (dpkg 1.9.21) man says -l lists available, and -p
>
> dpkg -p|--print-avail package
> Display details about package, as found in
> /var/lib/dpkg/available.
>
> dpkg -l | --list package-name-pattern ...
> List packages matching given pattern. If no
> package-name-pattern is given, list all packages
> in /var/lib/dpkg/available.
By experimentation, this is wrong. It should say "/var/lib/dpkg/status"
for -l. (In current versions this is in the dpkg-query(8) man page
instead, but the mistake is still there.)
$ mkdir tmp/dpkgadmin
$ cd tmp/dpkgadmin
$ cp /var/lib/dpkg/available /var/lib/dpkg/status .
$ mkdir updates
$ dpkg-query --admindir=. -l | wc -l
796
$ mv available available.tmp
$ touch available
$ dpkg-query --admindir=. -l | wc -l
796
$ mv available.tmp available
$ mv status status.tmp
$ touch status
$ dpkg-query --admindir=. -l | wc -l
0
Cheers,
--
Colin Watson [cjwatson@flatline.org.uk]
Reply to: