l i n u x - u s e r s - g r o u p - o f - d a v i s
Next Meeting:
July 7: Social gathering
Next Installfest:
Latest News:
Jun. 14: June LUGOD meeting cancelled
Page last updated:
2004 Aug 14 08:21

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] Debian Unstable - apt strangeness
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] Debian Unstable - apt strangeness

On Fri 13 Aug 04,  4:17 PM, Matt Roper <matt@mattrope.com> said:
> On Fri, Aug 13, 2004 at 03:29:45PM -0700, Rick Moen wrote:
> ...
> > I think you're misinterpreting:  dpkg is merely saying that no package
> > matching that ASCII pattern is _installed_.  dpkg knows nothing about 
> > available packages (as indicated in /var/lib/apt/lists/*Packages and
> > /var/lib/dpkg/available).  It knows only about the contents of
> > /var/lib/dpkg/status -- the "installed packages" database.
> ...
> Although that's the way it *should* work, I'm afraid it doesn't
> actually work out that nicely.  The missing piece of the puzzle is that
> if you use the 'dselect' tool, your /var/lib/dpkg/available file will
> get updated to also include information about all the packages that you
> don't have installed, but that exist in apt.  Running 'dselect update'
> or selecting 'update' from the dselect menu will perform all the actions
> normally done by 'apt-get update' and then also merge the information
> about available packages into the dpkg database.  So although dpkg still
> doesn't know anything about how to fetch these packages, it is aware of
> their names and will show them if you do a 'dpkg -l <pattern>' query.
> I have no idea why dselect throws all the apt information into the dpkg
> database instead of just working from the apt database directly; it's
> certainly non-intuitive and breaks the whole apt/dpkg layering scheme.
> Pete - try running 'dselect update' and then do your 'dpkg -l "*gimp*"'
> query.  I suspect all the packages will show up then.
> Matt

Hi Matt,

Very interesting!  How did you learn all this?!?   :)

Both these files had no 9wm entry on lucifer:


After "dselect update", the -p information got placed in "available".
After "apt-get install 9wm", the -p information got placed in "status".

Then I removed 9wm.  The -p information stayed in both status and
available.  Then, I purged 9wm and the -p information still stayed in
both status and available.

Suppose 9wm was taken out of Debian.  What I think would happen is:

   * 9wm would remain in available until I did a dselect update

   * 9wm would remain in status forever?

I've noticed that for unavailable packages I can still "dpkg -l" them:

   p@satan$ dpkg -l xv
   rc  xv             3.10a-25       An image viewer and manipulator

but I can NOT "dpkg -p" them:

   p@satan$ dpkg -p xv
   Package `xv' is not available.

In fact, xv has an entry in "status" but not "available".   So it looks

   1. After its creation, "available" only gets updated by dselect.

   2. dpkg takes its -l information from "available".

   3. Presumably, a package removed from Debian only leaves "available"
      after a dselect update.

   4. "status" (ultimately) only gets updated by dpkg.

   5. dpkg takes its -p information from "status".

   6. once an entry is made into status, it never leaves.

Is that about right?

Many thanks for all this really great information!!!

vox-tech mailing list

LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
Sunset Systems
Who graciously hosts our website & mailing lists!