[OE-core] dpkg's admindir: /var/dpkg or /var/lib/dpkg?

Cui, Dexuan dexuan.cui at intel.com
Thu May 19 01:48:04 UTC 2011


Mark Hatle wrote:
> On 5/18/11 4:27 AM, Cui, Dexuan wrote:
>> Hi, I happened to find a bug: in target,  "dpkg --list" shows
>> "dpkg-query: failed to open package info file `/var/lib/dpkg/status'
>> for reading: No such file or directory"  
>> 
>> Actually the files(status and available) does exist, but not in
>> /var/lib/dpkg/ -- they're in /var/dpkg/. "ln -s /var/dpkg/{status,
>> available} /var/lib/dpkg" can resolve the issue.  
>> 
>> grepping '/var/dpkg' shows there are many files(package_deb.bbclass,
>> rootfs_deb.bbclass, populate_sdk_deb.bbclas, apt.conf ) in which
>> '/var/dpkg' is used and /var/lib/dpkg is not used at all.  
>> 
>> However, looks dpkg's default admindir is /var/lib/dpkg -- e.g.,
>> Ubuntu uses this. 
>> 
>> What should we do? Looks fixing the package dpkg's admindir in the
>> do_configure needs the least coding. 
> 
> I would say that /var/lib/dpkg is the "correct" directory to use. 
> This matches the behavior on other deb bases systems.  (It also
> mimics other pkg managers who place their data into /var/lib/...)
> 
Mark, thank you for the comment!
So looks we should fix any recipe that uses /var/dpkg?

The fact in poky /var/dpkg is widely used and /var/lib/dpkg is not used at all may imply we chose /var/dpkg for some reason?  Even meta/recipes-devtools/dpkg/run-postinsts/run-postinsts and meta/recipes-devtools/dpkg/run-postinsts/run-postinsts.awk use /var/dpkg.

Is it possible there is some story behind this?  Please let me Cc more people who touched this.

Thanks,
-- Dexuan




More information about the Openembedded-core mailing list