GNOME Bugzilla – Bug 478984
dogtail-run-headless fails when trying to run example scripts
Last modified: 2011-02-07 06:09:20 UTC
Please describe the problem: dogtail-run-headless fails in Fedora 7. The example scripts run on their own so its not a problem with them. # dogtail-run-headless -n ./gedit-test-utf8-procedural-api.py xinit /tmp/dogtail-headless-xinitrc.8517 -- /usr/bin/Xvfb :1 -screen 0 1024x768x16 -ac -noreset -shmem screen 0 shmid 1015824 GTK Accessibility Module initialized ** (metacity:8526): WARNING **: AT_SPI_REGISTRY was not started at session startup. ** (metacity:8526): WARNING **: IOR not set. ** (metacity:8526): WARNING **: Could not locate registry Creating logfile at /tmp/dogtail/logs/gedit-test-utf8-procedural-api_20070921-102536_debug ... Creating logfile at /tmp/dogtail/logs/gedit-test-utf8-procedural-api_20070921-102536_results ... Detecting distribution: Fedora (or derived distribution) ** (process:8528): WARNING **: AT_SPI_REGISTRY was not started at session startup. ** (process:8528): WARNING **: Could not locate registry GTK Accessibility Module initialized ** (gedit-test-utf8-procedural-api.py:8528): WARNING **: AT_SPI_REGISTRY was not started at session startup. ** (gedit-test-utf8-procedural-api.py:8528): WARNING **: IOR not set. ** (gedit-test-utf8-procedural-api.py:8528): WARNING **: Could not locate registry (gedit-test-utf8-procedural-api.py:8528): Bonobo-CRITICAL **: bonobo_unknown_ping: assertion `object != NULL' failed ** (gedit-test-utf8-procedural-api.py:8528): WARNING **: AT_SPI_REGISTRY was not started at session startup. ** (gedit-test-utf8-procedural-api.py:8528): WARNING **: Could not locate registry Traceback (most recent call last):
+ Trace 164419
from dogtail.procedural import *
import tree
root = Root (atspi.registry.getDesktop ())
Steps to reproduce: 1. 2. 3. Actual results: Expected results: Does this happen every time? Other information: # rpm -q dogtail pyspi dogtail-0.6.1-1.fc7 pyspi-0.6.1-4.fc8 Also saw this on stock F7 dogtail and pyspi (this output is from rawhide)
I've digged into this a little. Tried running on F7. pretty much same error messages. The error messages are saying at-spi-registry daemon hasn't started. if you run dogtail-run-headless: "dogtail-run-headless -n ./gedit-test-utf8-procedural-api.py" it runs the command : "xinit /tmp/dogtail-headless-xinitrc.XXXX -- /usr/bin/Xvfb :1 -screen 0 1024x768x16 -ac -noreset -shmem" with the content of /tmp/dogtail-headless-xinitrc.XXXX being something like: #!/bin/sh /usr/libexec/gnome-settings-daemon & gnome-panel & nautilus -n & metacity & sleep 10 cd /home/some_user && dogtail-detect-session && sh -c "/usr/share/doc/dogtail-0.6.1/examples/gedit-test-utf8-procedural-api.py "; echo -n $? > /tmp/dogtail-headless-exitcode.XXXX You might think adding "/usr/libexec/at-spi-registryd &" would solve the problem. It doesn't. Why ? because gnome *does not* support running multiple sessions for the same user on the same machine. It doesn't even make sense. Now the possible solutions that come to my mind: 1. some "test" user - created by hand & passed as parameter, or maybe at dogtail install time, don't know 2. try to speak to the already-running at-spi-registry (i doubt this would work, and if you want a separate testing environment which would not affect normal session, this isn't it :) 3. maybe somehow "integrate" with fast-user-switching ? 4. dump dogtail-run-headless ? O:) i'm leaning toward 1. but that seems pointless to add to dogtail, since you can achieve it easily with a VNC/Xorg session for a hand-created test user. -- mb
Oh... well, yeah, I wouldn't expect it to work for a user that's already running a GNOME session. Doesn't seem very "headless" :) Sure, it'd be nice if it did, but I recommend just using a dedicated test user.
dogtail development has been stalled and it has been unmaintained for a few years now. Maintainers don't have future development plan so i am closing bugs as WONTFIX. Please feel free to reopen the bugs in future if anyone takes the responsibility for active development.