Hey all,
For the last several days, I've been trying to figure out how to get task-base to produce a minimal image. Currently the problem I'm experiencing is the following dependency chain,
task-base -> avahi-daemon -> avahi-python -> pygtk -> gtk+ -> xorg
Now, I'm it seems that avahi-python provides avahi-daemon because it builds all of avahi but with --enable-python, which the usual avahi-daemon package lacks. This is fine however bitbake seems to want to pull in avahi-python despite my stated preferences to do otherwise,
> $ bitbake -DD -n task-base
> ...
DEBUG: providers for avahi-daemon are: ['avahi-python', 'avahi']
DEBUG: update_data()
NOTE: checking PREFERRED_PROVIDER_avahi-python
NOTE: checking PREFERRED_PROVIDER_avahi-python-0.6.21
NOTE: checking PREFERRED_PROVIDER_avahi-python-0.6.21-r8
NOTE: checking PREFERRED_PROVIDER_avahi
NOTE: selecting avahi to satisfy runtime avahi-daemon due to PREFERRED_PROVIDER_avahi = avahi
DEBUG: sorted providers for avahi-daemon are: ['/mnt/oe/oe/openembedded/packages/avahi/avahi_0.6.24.bb', '/mnt/oe/oe/openembedded/packages/avahi/avahi-python_0.6.21.bb']
DEBUG: adding '/mnt/oe/oe/openembedded/packages/avahi/avahi_0.6.24.bb' to satisfy runtime 'avahi-daemon'
> ...
DEBUG: Added runtime recommendation avahi for /mnt/oe/oe/openembedded/packages/avahi/avahi_0.6.24.bb
DEBUG: adding '/mnt/oe/oe/openembedded/packages/avahi/avahi-python_0.6.21.bb' to satisfy runtime 'avahi-daemon'
DEBUG: Added dependency pkgconfig-native for /mnt/oe/oe/openembedded/packages/avahi/avahi-python_0.6.21.bb
> ...
A similar thing happens when processing avahi-autoipd,
DEBUG: providers for avahi-autoipd are: ['avahi-python', 'avahi']
DEBUG: update_data()
NOTE: checking PREFERRED_PROVIDER_avahi-python
NOTE: checking PREFERRED_PROVIDER_avahi-python-0.6.21
NOTE: checking PREFERRED_PROVIDER_avahi-python-0.6.21-r8
NOTE: checking PREFERRED_PROVIDER_avahi
NOTE: selecting avahi to satisfy runtime avahi-autoipd due to PREFERRED_PROVIDER_avahi = avahi
DEBUG: sorted providers for avahi-autoipd are: ['/mnt/oe/oe/openembedded/packages/avahi/avahi_0.6.24.bb', '/mnt/oe/oe/openembedded/packages/avahi/avahi-python_0.6.21.bb']
DEBUG: adding '/mnt/oe/oe/openembedded/packages/avahi/avahi_0.6.24.bb' to satisfy runtime 'avahi-autoipd'
DEBUG: adding '/mnt/oe/oe/openembedded/packages/avahi/avahi-python_0.6.21.bb' to satisfy runtime 'avahi-autoipd'
After this, hilarity ensues as avahi-python adds python-pygtk, which in turn adds gtk+ which in turn adds most of Xorg (which I seek to avoid). Why does bitbake decide to add both avahi-python and avahi when satisfying avahi-daemon and avahi-autoipd? Isn't it supposed to only pick one of the providing packages (preferably the preferred package)? I'm quite confused. Any input you could provide you be greatly appreciated. Thanks,
- Ben