net-wireless/bluez-4.39-r2 comes with the "test-programs" USE-Flag. this pulls in some helper applications such as simple-agent. afaik these are python based and require dev-python/pygobject to run properly. because pygobject was not pulled in as a dependency by bluez or any other ebuild, i ran into the follwing scenario: "simple-agent hci0 adress Traceback (most recent call last): File "/usr/bin/simple-agent", line 3, in <module> import gobject ImportError: No module named gobject" or "bluez-test-device list dbus.Array([], signature=dbus.Signature('o'))" so i tried the following: "python Python 2.6.2 (r262:71600, Oct 3 2009, 20:09:42) [GCC 4.3.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import gobject Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named gobject" "equery b gobject [ Searching for file(s) gobject in *... ] dev-libs/glib-2.20.5 (/usr/share/gtk-doc/html/gobject) dev-libs/glib-2.20.5 (/usr/include/glib-2.0/gobject)" "equery d pygobject [ Searching for packages depending on pygobject... ] dev-python/dbus-python-0.83.0-r1 (test? dev-python/pygobject)" afterwards i just installed pygobject via a --oneshot. this makes the bluez test-programs to run properly. but if i will run a "emerge -av --depclean", portage would pull in pygobject since there is no ebuild installed depending on pygobject. only "dev-python/dbus-python"would pull it in if the USE="test" would be set. therefore the build should depend on pygobject. Reproducible: Always Steps to Reproduce: 1. emerge net-wireless/bluez-4.39-r2 with USE="test-programs" 2. try to run simple-agent 3. experience python error Actual Results: experience python error. no connection to a bluetooth device is possible. Expected Results: try to connect with a bluetooth device
Created attachment 209696 [details] added dev-python/pygobject as a dependency
For all of the test-programs to work, dev-python/dbus-python also needs to be a dependency. The suggested fix, however, is incorrect. These are both run-time dependencies for bluez, so I think they belong under RDEPEND. I also think that the dependency should also be conditional based on the test-programs USE flag being set. A patch to the bluez-4.39-r2.ebuild will be attached. PS: I could be wrong about this being done to RDEPEND instead of CDEPEND, but I do believe that I am correct about the dependency needed only for test-programs.
Created attachment 214805 [details, diff] Patch to include dependencies needed for test-programs USE flags
It's fixed for bluez-4.60 on bug #270859. I think we do not need to fix it for 4.39 ebuild, so we can close this bug when 4.60 get merged.
Fixed in 4.60