APPLIED: [SRU][Jammy][Unstable][PATCH 0/1] Enable Speakup kernel modules to allow the speakup screen reader to function
Tim Gardner
tim.gardner at canonical.com
Tue May 10 17:57:16 UTC 2022
Applied to unstable:master. Thanks.
-rtg
On 4/26/22 02:17, Matthew Ruffell wrote:
> Hi Kernel team,
>
> Can this please be applied to Unstable? I don't want this to be lost
> again on transition to Kinetic Kudu, accessibility is just so
> important for our users.
>
> Thanks,
> Matthew
>
> On Tue, Apr 5, 2022 at 7:14 PM Matthew Ruffell
> <matthew.ruffell at canonical.com> wrote:
>>
>> BugLink: https://bugs.launchpad.net/bugs/1967702
>>
>> [Impact]
>>
>> Blind system administrators rely on the speakup accessibility feature to be able
>> to use screen readers in text mode, like "espeakup".
>>
>> Ubuntu has enabled CONFIG_SPEAKUP for a significant amount of time, although in
>> recent releases it keeps being disabled. In Hirsute and Impish, it was
>> accidentally disabled due to it moving from drivers/staging/ to
>> drivers/accessibility/, and it was re-added by Tim Gardner in LP1942459.
>>
>> When it was recently re-enabled, the patch was never applied to ubuntu-unstable,
>> and thus was never picked up by Jammy.
>>
>> We need to enable CONFIG_ACCESSIBILITY and CONFIG_SPEAKUP in Jammy and
>> ubuntu-unstable.
>>
>> [Fix]
>>
>> We need to enable the following configuration items:
>>
>> CONFIG_ACCESSIBILITY=y
>> CONFIG_SPEAKUP=m
>>
>> and the additional modules:
>>
>> CONFIG_SPEAKUP_SYNTH_ACNTSA=m
>> CONFIG_SPEAKUP_SYNTH_APOLLO=m
>> CONFIG_SPEAKUP_SYNTH_AUDPTR=m
>> CONFIG_SPEAKUP_SYNTH_BNS=m
>> CONFIG_SPEAKUP_SYNTH_DECEXT=m
>> CONFIG_SPEAKUP_SYNTH_DECTLK=m
>> CONFIG_SPEAKUP_SYNTH_DUMMY=m
>> CONFIG_SPEAKUP_SYNTH_LTLK=m
>> CONFIG_SPEAKUP_SYNTH_SOFT=m
>> CONFIG_SPEAKUP_SYNTH_SPKOUT=m
>> CONFIG_SPEAKUP_SYNTH_TXPRT=m
>>
>> [Testcase]
>>
>> Install the speakup accessibility tool:
>>
>> $ sudo apt install espeakup
>>
>> Check journalctl to see if it is able to load kernel modules:
>>
>> systemd[1]: Starting Software speech output for Speakup...
>> modprobe[27013]: modprobe: FATAL: Module speakup_soft not found in directory /lib/modules/5.15.0-25-generic
>> systemd[1]: espeakup.service: Control process exited, code=exited, status=1/FAILURE
>> systemd[1]: espeakup.service: Failed with result 'exit-code'.
>> systemd[1]: Failed to start Software speech output for Speakup.
>> systemd[1]: espeakup.service: Scheduled restart job, restart counter is at 1.
>> systemd[1]: Stopped Software speech output for Speakup.
>> systemd[1]: espeakup.service: Start request repeated too quickly.
>> systemd[1]: espeakup.service: Failed with result 'exit-code'.
>> systemd[1]: Failed to start Software speech output for Speakup.
>>
>> We should see espeakup.service start correctly, instead of failing to load
>> speakup_soft:
>>
>> systemd[1]: Starting Software speech output for Speakup...
>> kernel: input: Speakup as /devices/virtual/input/input5
>> kernel: initialized device: /dev/synth, node (MAJOR 10, MINOR 123)
>> kernel: speakup 3.1.6: initialized
>> kernel: synth name on entry is: (null)
>> kernel: synth probe
>> kernel: initialized device: /dev/softsynth, node (MAJOR 10, MINOR 122)
>> kernel: initialized device: /dev/softsynthu, node (MAJOR 10, MINOR 121)
>> systemd[1]: Started Software speech output for Speakup.
>>
>> You can also try load the modules manually:
>>
>> $ sudo modprobe speakup_soft
>>
>> There is a test package available in the following ppa:
>>
>> https://launchpad.net/~mruffell/+archive/ubuntu/lp1967702-test
>>
>> If you install the test kernel, the speakup modules should load successfully.
>>
>> [Where problems could occur]
>>
>> We are enabling CONFIG_ACCESSIBILITY for all arches apart from s390x, and this
>> shouldn't have any affect on config items being turned on, since it simply
>> enables the speakup submenu to be shown.
>>
>> Enabling CONFIG_SPEAKUP* should not have any impact on users that don't use
>> screen reader accessibility software, as it will only be loaded by users of
>> espeakup.
>>
>> If a regression were to occur, users could unload the speakup modules.
>>
>> Matthew Ruffell (1):
>> UBUNTU: [Config] CONFIG_SPEAKUP=m
>>
>> debian.master/config/amd64/config.common.amd64 | 1 +
>> debian.master/config/annotations | 18 ++++++++++++++++--
>> debian.master/config/arm64/config.common.arm64 | 1 +
>> debian.master/config/armhf/config.common.armhf | 1 +
>> debian.master/config/config.common.ubuntu | 14 +++++++++++++-
>> .../config/ppc64el/config.common.ppc64el | 1 +
>> debian.master/config/s390x/config.common.s390x | 1 +
>> 7 files changed, 34 insertions(+), 3 deletions(-)
>>
>> --
>> 2.34.1
>>
>
--
-----------
Tim Gardner
Canonical, Inc
More information about the kernel-team
mailing list