On 05/02/2016 08:39 AM, Patrick Ohly wrote: > On Fri, 2016-04-22 at 14:51 +0100, Richard Purdie wrote: >> When enabling extra DEBUGFS image generation with opkg, errors are seen like: >> >> ERROR: core-image-minimal-1.0-r0 do_rootfs: Cannot get the installed >> packages list. Command >> '/media/build1/poky/build/tmp/sysroots/x86_64-linux/usr/bin/opkg -f >> /media/build1/poky/build/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/opkg.conf >> -o >> /media/build1/poky/build/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/rootfs >> --force_postinstall --prefer-arch-to-version status' returned 0 and >> stderr: >> Collected errors: >> * file_md5sum_alloc: Failed to open >> file >> /media/build1/poky/build/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/rootfs/etc/syslog-startup.conf.busybox: >> No such file or directory. >> * file_md5sum_alloc: Failed to open >> file >> /media/build1/poky/build/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/rootfs/etc/fstab: >> No such file or directory. >> >> basically for all CONFFILES in the image. This is due to the file >> rearranging >> the rootfs generation code does. If we preserve the /etc directory, >> the avoids the problem. > > It avoids the problem, but it does not address the root cause (IMHO). > Should opkg really complain about missing configuration files? It is > perhaps an edge case, but besides editing a configuration file > *removing* it entirely may also be a valid user modification. > > The usage of opkg here is during image building, but the operation > itself (opkg status) is not specific to image creation and thus should > be able to handle arbitrary states of /etc and the config files in > general.
Opkg status is supposed to give you the state of all your installed packages. Currently is pretty rough data: it dumps into stdout the internal metadata that tracks package info and promotes to error any inconsistency, like conffiles not being present. Looking at pacakge_manager.py, opkg status is being called on OpkgPkgsList. Seems to me that if the purpose is to get all installed packages, then "opkg list-installed" is the correct command. Looking at dpkg (DpkgPkgsList), "dpkg-query -W" is being called, which I think maps to opkg list-installed, not to opkg status. -- Cheers, Alejandro -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
