[BRLTTY] Questions about brltty and Orca
Dave Mielke
dave at mielke.cc
Sat Sep 9 07:16:24 EDT 2017
[quoted lines by Didier Spaier on 2017/09/06 at 22:20 +0200]
>I prepare the next Slint version http://slint.fr
>On that occasion I will:
>_ upgrade brltty from 4.4 to 4.5,
I hope you mean 5.5, as that's the latest release, and, among other things,
much better with respect to battery drain.
>_ make the installer speak with speakup, espeakup and espeak,
Sounds good.
>_ make the window manager and desktops speak with Orca whenever
> possible. Orca and deps will be installed if speech is used during
> installation, else available as packages.
That means that braille won't automatically work within a graphical environment
if speech wasn't used during the install. Maybe the speech packages should just
be available on the full system if speech isn't used during the install, but,
in my opinion, Orca should be active if braille or speeh was used during the
install. This also means, of course, that Orca should be preconfigured to have
speech, braille, or both enabled in accordance with how the install was done.
>1) Compiling brltty 5.5 with speech-dispatcher installed, I had to help
>configure find the speech-dispatcher headers with:
>CPPFLAGS="-I/usr/include -I/usr/include/speech-dispatcher"
>No big deal, but maybe this can be avoided modifying some file used
>for configuration
Yes, if this is a problem, we should fix our detection of Speech Dispatcher.
You must be using an in between release. We have hard-coding for where the
older releases were installed, and use pkg-config to find where newer releases
are installed. It seems that you must be using a release somewhere in between
these two where the newer layout is being used but a pkg-config file (.pc)
isn't being provided. Perhaps you could check if the release you're using does
provide a .pc file which, perhaps, you haven't installed on the system where
you build brltty.
>(sorry I am a complete beginner wrt autotools, so I can just ask).
What's there to be sorry for? None of us knows everything about everything,
and, when something is new to any of us, it's much better to ask than to guess.
I don't want anyone to resist asking just because he/she thinks that it might
be embarrassing to do so. At least on this list, all questions are respected
and properly answered.
>2) In the source archive there is a file Autostart/Udev/brltty-wrapper
>including this comment:
># This script must be installed in the udev programs directory: /usr/lib/udev/
>
>I did that but don't really understand this script's purpose so am not
>sure why I need it.
The simplest answer is because our latest udev rules invoke it rather than
directly invoking brltty. This, of course, leads to wondering why we need the
wrapper. The answer is that newer releases of udev (basically, ever since the
Systemd people took it over) impose a five-second timeout on any program that
udev directly invokes. Our wrapper does a bit of cgroup magic such that brltty
won't be subject to that timeout.
>Context: Slackware and its derivatives do not use systemd, and include eudev
>instead of udev.
I'm not familiar with eudev so am unable to comment on why those distributions
dno't use our wrapper. I guess eudev allows brltty to be directly invoked
without being unceremoniously killed after five seconds. Another possibility is
that euvdev may be based on an older release of udev that doesn't impose the
timeout.
>3) Orca has liblouis as optional dependency and if I understand well
>this allows Orca to send contracted Braille to a Braille terminal. Is that
>right?
Yes. Orca uses LibLouis even for uncontracted braille. In other words, Orca
uses LibLouis, rather than brltty's tables, to render braille. This does create
an inconsistency insofar as braille rendering is concerned between text and
graphical consoles, but, for better or worse, that's just the way it is right
now.
>If yes, is it widely used? I am wondering if I should provide a liblouis
>package and link Orca to that.
You probably should. Another reason for including it is that brltty itself,
i.e. in a text console, can now also use LibLouis's tables. Some users may
prefer this, and it could even be that LibLouis has tables for languages that
brltty doesn't have tables for.
>4) In the above described context, do I need to ship brlAPI? so far
>I target end users rather that developers, so I am considering not
>installing it by default, but providing it as a package. What do you
>think? Is it needed beyond developing new drivers or such use cases?
That depends on what's in your BrlAPI package. While you don't need to install
its headers and documentation, you do need to install its shared object (.so
file) and bindings (e.g. Orca uses BrlAPI's Python bindings).
--
Dave Mielke | 2213 Fox Crescent | http://Mielke.cc/
Phone: 1-613-726-0014 | Ottawa, Ontario | http://Mielke.cc/bible/
EMail: Dave at Mielke.cc | Canada K2A 1H7 | The Bible is the very Word of God.
More information about the BRLTTY
mailing list