Hi!

On Fri, 2016-01-08 at 04:05:16 +0800, 積丹尼 Dan Jacobson wrote:
> Package: dpkg
> Version: 1.18.4
> Severity: minor
> 
> We read
> 
>        --forget-old-unavail
>               Now obsolete and a no-op as dpkg will automatically forget unin-
>               stalled unavailable packages (since dpkg 1.15.4).
> 
> Well my /var/lib/dpkg/status has an odd six line entry
> 
> Package: libsasl2-3
> Status: install ok not-installed
> Priority: standard
> Section: libs
> Architecture: i386
> Multi-Arch: same
> 
> that is not in sid or experimental anymore. Nor was it in grep-available.

That's because this has relevant information that needs to be kept,
that is, it contains a selection (the "install" part). I'll reword the
man page comment to clarify this.

> Anyways, I got rid of it with
> # dpkg -P libsasl2-3:i386
> dpkg: warning: ignoring request to remove libsasl2-3:i386 which isn't 
> installed
> # dpkg -P libsasl2-3
> dpkg: warning: ignoring request to remove libsasl2-3:i386 which isn't 
> installed
> # dpkg -P libsasl2-3
> dpkg: warning: ignoring request to remove libsasl2-3:i386 which isn't 
> installed
> 
> The second one did the job! Note the identical error messages. Bad too.
> But on the other hand, you (the dpkg authors) never expected that that
> entry would still be there...

It's not an error it's just a warning, and it means what it says, you
tried to remove a non-installed package, which is true. Also with the
request to purge the package the selection also went away, as it was
marked for puring (the first Status word).

> So now
> # grep -c not-installed /var/lib/dpkg/status
> 0

As expected.

> So I am guessing, whatever mechanism you are using to make sure no
> non-installed entries remain in /var/lib/dpkg/status misses catching
> smaller entries like the above!

Not relly! But as mentioned above, I'll clarify this in the man page.

Thanks,
Guillem

Reply via email to