Sonar GNU/Linux merges with Vinux

Linux for blind general discussion blinux-list at redhat.com
Fri Apr 28 22:07:59 UTC 2017


Luke Yelavich here, reply inline.

On Fri, Apr 28, 2017 at 11:18:22PM AEST, Linux for blind general discussion wrote:
> BTW.: During this discussion many things have been said about commercial 
> and specialized distros, but IMHO things like systemd or pulseaudio are 
> much more problematic for people who are using screen readers on linux. 
> For example getting sbl working with speech-dispatcher is a pain on 
> Debian...

That is more to do with permissions than anything else. The problem right 
now, is that the software we use to help with reading the screen and/or 
speech synthesis is running as root. This on its own is not really 
acceptable, but right now it has to run as root to work with the various 
kernel interfaces provided to do its job. Fortunately this is fixable, thanks 
to systemd's logind and a bit of udev rules work.

The problem then becomes working with audio, because again, permissions. By 
default, distros configure things such that audio is only accessible to the 
currently logged in user, whether it be on a text console, or in a graphical 
environment. Sure, you can add users wanting audio to the audio group, but 
this is actually not considered secure, and can break functionality of other 
things relating to audio. Can't think of anything specific right now, but I 
think I've heard of such in the past.

Running everything needed by the user as a user when logged in is of course 
not a problem, assuming permissions are properly set for the various device 
nodes. The next problem needing solving is how to get screen reading with 
speech at a text login. Graphical login is not a problem, because the 
graphical login is running as a separate non-privileged user, so things are 
fine there. The text login runs as root.

What needs to happen, is for work to be done on logind, to allow software to 
run as a non-privileged user, such that it can work with audio output and 
required device nodes. This non-privileged user and special session, would 
only have access when the current focus is on a terminal with nobody logged 
in.

I implemented a solution back in the Vinux 4.0 days, when ConsoleKit was 
being used, but didn't send it upstream due to the impending change to 
logind. I have not yet taken the time to look into how the same could be done 
with logind.

Luke




More information about the Blinux-list mailing list