Chapter 23. Configuring the desktop environment for accessibility
As a system administrator, you can configure the desktop environment to support users with a visual impairment.
To enable accessibility, perform the following procedures.
23.1. Components that provide accessibility features
Accessibility for users with a visual impairment is ensured by the Orca screen reader on the Red Hat Enterprise Linux 8 desktop. Orca is included in the default RHEL installation.
Orca reads information from the screen and communicates it to you using the following components:
- Speech synthesizer
- Provides a speech output. The default speech synthesizer on RHEL 8 is eSpeak-NG.
- Braille display
- Provides a tactile output. The BRLTTY service enables this functionality.
Additional resources
23.2. Configuring the brltty service
The Braille display is a device that uses the brltty
service to provide tactile output for visually impaired users.
In order for the Braille display to work correctly, perform the following procedures.
23.2.1. Enabling the brltty service
To enable the Braille display, enable the brltty
service to start automatically on boot. By default, brltty
is disabled.
Prerequisites
Ensure that
brltty
and speech synthesis forbrltty
are installed:# yum install brltty brltty-espeak-ng
Procedure
Enable the
brltty
service to start on boot:# systemctl enable --now brltty
Verification steps
- Reboot the system.
Check that the
brltty
service is running:# systemctl status brltty ● brltty.service - Braille display driver for Linux/Unix Loaded: loaded (/usr/lib/systemd/system/brltty.service; enabled; vendor pres> Active: active (running) since Tue 2019-09-10 14:13:02 CEST; 39s ago Process: 905 ExecStart=/usr/bin/brltty (code=exited, status=0/SUCCESS) Main PID: 914 (brltty) Tasks: 3 (limit: 11360) Memory: 4.6M CGroup: /system.slice/brltty.service └─914 /usr/bin/brltty
23.2.2. Authorizing users of a Braille display device
To set the users who are authorized to use a Braille display device, you can choose one of the following methods, which have an equal effect:
Authorization using the /etc/brlapi.key
file is suitable only for the file systems where users or groups can be assigned to a file.
Authorization using the /etc/brltty.conf
file is suitable even for the file systems where users or groups cannot be assigned to a file.
23.2.2.1. Authorizing users of a Braille display device with brltty.conf
Procedure
-
Open the
/etc/brltty.conf
file, and find the section calledApplication Programming Interface Parameters
. Specify the users.
To specify one or more individual users, list the users on the following line:
api-parameters Auth=user:user_1, user_2, ... # Allow some local user
To specify a user group, enter its name on the following line:
api-parameters Auth=group:group # Allow some local group
23.2.2.2. Authorizing users of a Braille display device with brlapi.key
Authorization using the /etc/brlapi.key
file is suitable only for the file systems where users or groups can be assigned to a file.
Prerequisites
- Your system must use a file system where users or groups can be assigned to a file.
Procedure
Create the
/etc/brlapi.key
file.# mcookie > /etc/brlapi.key
Change ownership of the
/etc/brlapi.key
to particular user or group.To specify an individual user:
# chown user_1 /etc/brlapi.key
To specify a group:
# chown group_1 /etc/brlapi.key
Adjust the content of
/etc/brltty.conf
by including the following line:api-parameters Auth=keyfile:/etc/brlapi.key
23.2.3. Setting the driver for a Braille display device
The braille-driver
directive in /etc/brltty.conf
file specifies a two-letter driver identification code of the driver for the Braille display device.
Procedure
Decide whether you want to use the autodetection for finding the appropriate driver for your Braille display device.
To use autodetection, use the default option as follows:
braille-driver auto # autodetect
WarningAutodetection tries all drivers. Therefore, it might take a long time or even fail. For this reason, setting up a particular driver is recommended.
If you do not want to use the autodetection, specify the identification code of the required driver in the
braille-driver
directive.Choose the identification code of required driver from the list provided in
/etc/brltty.conf
, for example:braille-driver xw # XWindow
You can also set multiple drivers, separated by commas, and autodetection is then performed among them.
23.2.4. Configuring a Braille display device
The braille-device
directive in the /etc/brltty.conf
file specifies the device to which the Braille display device is connected.
23.2.4.1. Supported types of Braille display device
This section describes which types of Braille display devices are supported.
Table 23.1. Braille display device types and the corresponding syntax
Braille device type | Syntax of the type | Note |
---|---|---|
Serial device |
|
Relative paths are at |
USB device |
|
The brackets ( |
Bluetooth device |
|
Example 23.1. Settings for particular Braille display devices
# First serial device braille-device serial:ttyS0 # First USB device matching braille driver braille-device usb: # Specific USB device by serial number braille-device usb:nnnnn # Specific Bluetooth device by address braille-device bluetooth:xx:xx:xx:xx:xx:xx
You can also set multiple devices, separated by commas, and each of them will be probed in turn.
If the device is connected by a serial-to-USB adapter, setting braille-device
to usb:
does not work. In this case, identify the virtual serial device that the kernel has created for the adapter. The virtual serial device can look like this:
serial:ttyUSB0
You can find the actual device name in the kernel messages on the device plug with the following command:
# dmesg | fgrep ttyUSB0
23.2.4.2. Setting specific parameters for Braille display devices
To set specific parameters for particular Braille display devices, use the braille-parameters
directive in /etc/brltty.conf
file. The braille-parameters
directive passes non-generic parameters through to the braille driver. Choose the required parameters from the list in /etc/brltty.conf
.
23.2.4.2.1. Setting the text table
The text-table
directive in /etc/brltty.conf
specifies which text table is used to encode the symbols. Relative paths to text tables are stored within the /etc/brltty/Text/
directory.
Procedure
- Decide whether you want to use the autoselection for finding the appropriate text table.
If you want to use the autoselection, leave
text-table
specified to auto, which is the default option.text-table auto # locale-based autoselection
This ensures that local-based autoselection with fallback to
en-nabcc
is performed.For example, to use the text table for American English:
text-table en_US # English (United States)
23.2.4.2.2. Setting the contraction table
The contraction-table
directive in the /etc/brltty.conf
file specifies which table is used to encode the abbreviations. Relative paths to particular contraction tables are stored within the /etc/brltty/Contraction/
directory.
Procedure
Choose the required contraction-table from the list in
/etc/brltty.conf
.For example, to use the contraction table for American English, grade 2:
contraction-table en-us-g2 # English (US, grade 2)
If not specified, no contraction table is used.
23.3. Switching on Always Show Universal Access Menu
To activate the Orca screen reader, enable the Always Show Universal Access Menu option as described in the following procedure.
Procedure
- Open the Gnome Settings menu.
- Select Universal Access.
Enable the Always Show Universal Access Menu item.
Enabling the Always Show Universal Access Menu option in GNOME Settings
Verification steps
Check that the Universal Access Menu icon is displayed on the top bar even when all options from this menu are switched off.
Alternatively, you can enable the Orca screen reader by pressing the Super+Alt+S keyboard shortcut. As a result, the Universal Access Menu icon is displayed on the top bar.
If you activate Orca by pressing the keyboard shortcut, the icon disappears in case that the user disables all of the provided options from the Universal Access Menu. The missing icon might cause difficulties to users with a visual impairment.
You can prevent the inaccessibility of the icon by switching on the Always Show Universal Access Menu option as described in the above procedure. When the Always Show Universal Access Menu option is enabled, the icon is displayed on the top bar even when all options from this menu are disabled.