After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 684474 - screen reader doesn't read on the login screen
screen reader doesn't read on the login screen
Status: RESOLVED FIXED
Product: gdm
Classification: Core
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: GDM maintainers
GDM maintainers
Depends on: 663721 684589
Blocks:
 
 
Reported: 2012-09-20 12:53 UTC by Matthias Clasen
Modified: 2012-09-25 17:59 UTC
See Also:
GNOME target: 3.6
GNOME version: ---


Attachments
data: at at-spi stuff to login session (2.50 KB, patch)
2012-09-20 21:36 UTC, Ray Strode [halfline]
none Details | Review
Matthias doesn't think the registryd bits should be needed. (2.81 KB, patch)
2012-09-20 21:53 UTC, Ray Strode [halfline]
rejected Details | Review
don't run gnome-session in failsafe mode (1.10 KB, patch)
2012-09-22 19:52 UTC, Matthias Clasen
accepted-commit_after_freeze Details | Review
add an autostart file for orca (2.17 KB, patch)
2012-09-22 19:52 UTC, Matthias Clasen
reviewed Details | Review
launch-environment: start dbus-daemon inside the user session (25.40 KB, patch)
2012-09-24 19:29 UTC, Ray Strode [halfline]
committed Details | Review
Add an autostart file for orca (2.22 KB, patch)
2012-09-24 20:02 UTC, Ray Strode [halfline]
none Details | Review
Add an autostart file for orca (3.79 KB, patch)
2012-09-24 20:34 UTC, Ray Strode [halfline]
committed Details | Review

Description Matthias Clasen 2012-09-20 12:53:48 UTC
When I flip the 'Screen Reader' switch on the login screen, nothing happens, orca doesn't greet me :-(

Maybe the login screen session setup is somehow insufficient for a11y to work fully ?
Comment 1 Matthias Clasen 2012-09-20 12:57:08 UTC
Marking as a tentative blocker - having a11y work on the login screen is pretty important.
Comment 2 Ray Strode [halfline] 2012-09-20 21:36:31 UTC
Created attachment 224864 [details] [review]
data: at at-spi stuff to login session

In order for orca to work we need certain accessibility
services running.  This commit adds those services.
Comment 3 Ray Strode [halfline] 2012-09-20 21:36:50 UTC
something like attachment 224864 [details] [review] may help, but i haven't tested it yet.
Comment 4 Ray Strode [halfline] 2012-09-20 21:53:53 UTC
Created attachment 224868 [details] [review]
Matthias doesn't think the registryd bits should be needed.

Bastien points out these files aren't going to get AutostartCondition tested
since we use gnome-session -f.

One more (still untested) round:

data: at at-spi stuff to login session

In order for orca to work we need certain accessibility
services running.  This commit adds those services.
Comment 5 Matthias Clasen 2012-09-20 22:57:23 UTC
Grr, I was trying to use loginctl session-status to verify that the a11y bus was launched in the gdm session. Looks like the a11y tools manage to escape the cgroup ?! Not sure whats up with that.

Anyway, it still doesn't work, because orca relies on autostart conditions to get launched, see /etc/xdg/autostart/orca-autostart.desktop.
Comment 6 Matthias Clasen 2012-09-21 22:19:37 UTC
The patches in this bug are actually for gdm, so moving it there.
I've also added a dependency on the gnome-session bug that is the root cause.
Comment 7 Matthias Clasen 2012-09-22 19:52:11 UTC
Created attachment 224995 [details] [review]
don't run gnome-session in failsafe mode
Comment 8 Matthias Clasen 2012-09-22 19:52:36 UTC
Created attachment 224996 [details] [review]
add an autostart file for orca
Comment 9 Matthias Clasen 2012-09-22 19:54:42 UTC
These are more work-in-progress patches. They rely on the patches in the blocking gnome-session bug. Even with these, I still haven't gotten orca to start and stop correctly. I did see orca start once, but then it didn't stop when I turned the switch off.

It seems as if gsettings monitoring doesn't work reliably. gnome-sessions debug log did show my that the autostart condition monitor was triggering, but it alway saw the same value. Maybe this is somehow caused by the bus being 'off to the side' ?
Comment 10 Ray Strode [halfline] 2012-09-24 19:29:40 UTC
Created attachment 225093 [details] [review]
launch-environment: start dbus-daemon inside the user session

We currently start dbus-daemon separately from the launch
environment PAM session.  This means all things activated
by that bus get started in the wrong logind session and are
missing important environment variables (such as XDG_RUNTIME_DIR).

This commit deletes a bunch of code for managing the dbus session
separately, and instead just makes it part of the session command
(using dbus-launch as a wrapper around the session).

Because we no longer have the specific PID of the bus daemon,
we now stop the launch environment by killing the whole process
group in one go.
Comment 11 Ray Strode [halfline] 2012-09-24 19:31:17 UTC
You're suspicions were correct.  attachment 225093 [details] [review] addresses those suspicions by moving dbus-daemon inside the PAM session, and it fixes the symptoms you cited.
Comment 12 Colin Walters 2012-09-24 19:55:55 UTC
Review of attachment 225093 [details] [review]:

Only one question.

::: daemon/gdm-launch-environment.c
@@ -353,3 @@
-static void
-rotate_logs (const char *path,
-             guint       n_copies)

Is this log rotation stuff important?  Are you deleting it intentionally?
Comment 13 Ray Strode [halfline] 2012-09-24 20:00:09 UTC
we have a copy of it in the new place it gets called, so not important.
Comment 14 Ray Strode [halfline] 2012-09-24 20:02:41 UTC
Created attachment 225097 [details] [review]
Add an autostart file for orca

Add an autostart file for orca, and install it in
/usr/share/gdm/greeter/autostart.

This is necessary to make the screen reader switch in
the a11y menu work in the login screen.
Comment 15 Ray Strode [halfline] 2012-09-24 20:03:36 UTC
Comment on attachment 224996 [details] [review]
add an autostart file for orca

oops wrong one
Comment 16 Ray Strode [halfline] 2012-09-24 20:28:46 UTC
Comment on attachment 224868 [details] [review]
Matthias doesn't think the registryd bits should be needed.

(this is apparently unneeded)
Comment 17 Ray Strode [halfline] 2012-09-24 20:29:14 UTC
Review of attachment 224995 [details] [review]:

looks good
Comment 18 Ray Strode [halfline] 2012-09-24 20:29:53 UTC
Review of attachment 224996 [details] [review]:

we should remove the orca-screen-reader sitting in applications
Comment 19 Ray Strode [halfline] 2012-09-24 20:34:06 UTC
Created attachment 225101 [details] [review]
Add an autostart file for orca

Add an autostart file for orca, and install it in
/usr/share/gdm/greeter/autostart.

This is necessary to make the screen reader switch in
the a11y menu work in the login screen.
Comment 20 Matthias Clasen 2012-09-25 10:25:00 UTC
I've tested these patches, and they worked fine. Approval 1 from me.
Comment 21 André Klapper 2012-09-25 11:07:40 UTC
Review of attachment 225101 [details] [review]:

::: data/autostart/orca-autostart.desktop
@@ +1,3 @@
+[Desktop Entry]
+Type=Application
+Name=Orca screen reader

Should be _Name I guess, to keep it translatable? Plus should keep the old string "Orca Screen Reader" and its capitalization to not break strings.
Why were fields like _Comment, Categories, X-GNOME-Bugzilla-Bugzilla, X-GNOME-Bugzilla-Product, X-GNOME-Bugzilla-Component dropped? Because of NoDisplay?
Comment 22 Matthias Clasen 2012-09-25 12:15:55 UTC
(In reply to comment #21)
> Review of attachment 225101 [details] [review]:
> 
> ::: data/autostart/orca-autostart.desktop
> @@ +1,3 @@
> +[Desktop Entry]
> +Type=Application
> +Name=Orca screen reader
> 
> Should be _Name I guess, to keep it translatable? Plus should keep the old
> string "Orca Screen Reader" and its capitalization to not break strings.
> Why were fields like _Comment, Categories, X-GNOME-Bugzilla-Bugzilla,
> X-GNOME-Bugzilla-Product, X-GNOME-Bugzilla-Component dropped? Because of
> NoDisplay?

There's no application menu anywhere in the login screen (nor should there be), so these are intentionally untranslated.
Comment 23 Colin Walters 2012-09-25 14:22:39 UTC
gdm patch tested in gnome-ostree; works for me.
Comment 24 Ray Strode [halfline] 2012-09-25 17:59:48 UTC
Attachment 225093 [details] pushed as 348c920 - launch-environment: start dbus-daemon inside the user session
Attachment 225101 [details] pushed as 62a649d - Add an autostart file for orca