Differences between revisions 1 and 201 (spanning 200 versions)
Revision 1 as of 2005-01-18 11:12:09
Size: 253
Editor: anonymous
Comment:
Revision 201 as of 2021-03-29 00:18:40
Size: 19079
Editor: PaulWise
Comment: Opengazer: open gaze tracking via webcams
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## Auto-converted by kwiki2moinmoin v2005-10-07
== Accessiblity ==
 * [http://delysid.org/gnome.html Gnome for the Blind].
 * [http://www.baum.ro/gnopernicus.html GNOME's screen reader and screen magnification software]: ["Gnopernicus"].
 * GnomeSpeech
This page is for internal use by the Debian accessibility team. For
user documentation on accessibility in Debian, please look at the
[[accessibility|accessibility page]]. For general package maintainer
information on accessibility in Debian, please look at the
[[accessibility-maint|accessibility maintainer page]].

== Links ==

 * Debian mailing list: [[https://lists.debian.org/debian-accessibility/|debian-accessibility]]
 * Debian IRC channel: [[ircs://irc.oftc.net/debian-a11y|#debian-a11y]] ([[https://webchat.oftc.net/?channels=debian-a11y|webchat]])
 * Debian Salsa project: [[https://salsa.debian.org/a11y-team|a11y-team]]
 * Debian QA page: [[https://qa.debian.org/developer.php?email=pkg-a11y-devel%40lists.alioth.debian.org]]
 * TTS Debian QA page: [[https://qa.debian.org/developer.php?email=tts-project%40lists.alioth.debian.org]]
 * [[DebianInstaller/Accessibility|Debian Installer accessibility]]
 * [[https://blends.debian.org/accessibility/bugs/|Accessibility blend bugs]]
 * [[https://bugs.debian.org/tag:a11y|Accessibility-tagged bugs]]
 * [[https://bugs.debian.org/cgi-bin/pkgreport.cgi?users=bugs@hypra.fr;tag=hypra|bugs tracked upstream by Hypra]]
 * Blend subversion repository: svn://svn.debian.org/svn/blends/projects/accessibility/trunk/debian-accessibility/tasks
 * Talk at [[https://meetings-archive.debian.net/pub/debian-meetings/2008/fosdem/|fosdem08]], [[https://brl.thefreecat.org/fosdem.odp|odp slides]], [[https://brl.thefreecat.org/fosdem.html|html slides]], [[https://brl.thefreecat.org/how_accessible_is_Debian___Samuel_Thibault.mp3|audio stream]].
 * Talk at DebConf9: ([[https://meetings-archive.debian.net/pub/debian-meetings/2009/debconf9/low/1014_Accessibility_and_Debian.ogv|low]] / [[https://meetings-archive.debian.net/pub/debian-meetings/2009/debconf9/high/1014_Accessibility_and_Debian.ogv|high]] quality video)
 * [[ThisWeekInDebian|This Week In Debian]] Episode 6 ([[https://meetings-archive.debian.net/pub/debian-meetings/2010/this-week-in-debian/TWID_006.ogg|ogg]], [[https://meetings-archive.debian.net/pub/debian-meetings/2010/this-week-in-debian/TWID_006.mp3|mp3]]), and its [[https://brl.thefreecat.org/TWID-a11y.txt|transcript]]
 * Talk at DebConf15: ([[https://summit.debconf.org/debconf15/meeting/290/thanks-for-maintaining-a-desktop-environment-but-is-it-accessible/|summary]], [[https://brl.thefreecat.org/2015-08-22-debconf.pdf|slides]], [[https://brl.thefreecat.org/2015-08-22-debconf.html|html slides]], [[https://brl.thefreecat.org/2015-08-22-debconf.odp|odp slides]], [[https://meetings-archive.debian.net/pub/debian-meetings/2015/debconf15/Thanks_for_maintaining_a_desktop_environment_But_is_it_accessible.webm|video]], [[https://brl.thefreecat.org/2015-08-22-debconf.txt|transcript]])
 * [[https://developer.gnome.org/accessibility-devel-guide/]]

== Accessibility stack internals ==

For graphical desktop accessibility to work, three things are needed:

 * the accessibility bus get started,
 * toolkits load their accessibility layer,
 * a screen reader get started.

The first two points, described in details below, can be checked
automatically on any desktop with

{{{
$ git clone https://salsa.debian.org/a11y-team/check-a11y.git
$ sudo apt-get install build-essential pkg-config libdbus-1-dev libatspi2.0-dev libgtk2.0-dev libgtk-3-dev libqt4-dev qtbase5-dev
$ cd check-a11y
$ source env.sh
$ make check
}}}

This check is also run automatically on several desktops, please see [[https://familiekainz.at/a11y|a11y Desktop status Overview]].
'''This is currently work in Progress''', so please inform [[mailto:skainz@debian.org|Simon Kainz]] if you have questions/ideas about this.

=== Accessibility bus getting started ===

This is provided by package at-spi2-core.

This is automatically started from '''/etc/xdg/autostart/at-spi-dbus-bus.desktop'''

On Stretch and later, it is always started, whatever desktop is used.

On Jessie and before, for gnome and Unity, it is started under condition:

{{{
gsettings get org.gnome.desktop.interface toolkit-accessibility
}}}

For MATE, this is automatically started under condition

{{{
gsettings get org.mate.interface accessibility
}}}

Others don't start it automatically, but it is getting started when
running accessible GTK2, GTK3 or QT4 applications with accessibility
enabled. QT5 doesn't start it automatically, but can catch up with it
afterwards if accessibility is enabled in it, see below.

=== Toolkits loading their accessibility layer ===

gtk3 needs libatk-adaptor and libgail-common, no condition.

gtk2 needs libatk-adaptor and libgail-common, loaded when
'''GTK_MODULES=gail:atk-bridge''' (already set by default from
/etc/X11/Xsession.d/90atk-adaptor in Stretch and later) or loaded by
'''/usr/lib/gnome-settings-daemon-3.0/gtk-modules/at-spi2-atk.desktop'''
when gnome-settings-daemon is running and '''gsettings get org.gnome.desktop.interface
toolkit-accessibility''' is true.

KDE4 needs qt-at-spi, conditionalized by '''QT_ACCESSIBILITY=1'''
(already set by default from /etc/X11/Xsession.d/90qt-a11y in Stretch and later)

KDE5 has it integrated, conditionalized by

{{{
gsettings get org.gnome.desktop.a11y.applications screen-reader-enabled
}}}

but starting from QT5.4, it can also be forced with
'''QT_LINUX_ACCESSIBILITY_ALWAYS_ON=1'''
(already set by default from /etc/X11/Xsession.d/90qt-a11y in Stretch)

See more discussion in DebianBug:874054

java needs libatk-wrapper-java, conditionalized in
'''/etc/java-*-openjdk/accessibility.properties''' :

{{{
assistive_technologies=org.GNOME.Accessibility.AtkWrapper
}}}

and it can only work with the GTK look and feel, configured in

'''/etc/java-*-openjdk/swing.properties''' :

{{{
swing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel
}}}

(already set by default in Stretch and later)

If it still doesn't work, debugging help can be obtained via the `troubleshoot`
script from the
[[https://salsa.debian.org/a11y-team/check-a11y|check-a11y]]
repository.

TODO: mono Winforms ?

=== screen reader getting started ===

 * Part of Debian Installer testing: [[DebianInstaller/Accessibility]]
 * Under Gnome3, MATE, Unity, Cinnamon, started by '''/etc/xdg/autostart/orca-autostart.desktop ''' under condition

{{{
gsettings get org.gnome.desktop.a11y.applications screen-reader-enabled
}}}

 * Gnome2: started under condition

{{{
gconftool-2 --get /desktop/gnome/applications/at/screen_reader_enabled
}}}

 * XFCE could have it

{{{
xfconf-query -c xfce4-session -p StartAssistiveTechnologies
}}}

 * KDE4: started under condition

{{{
qdbus org.kde.kaccessibleapp /Adaptor speechEnabled
}}}

can be set with

{{{
qdbus org.kde.kaccessibleapp /Adaptor setSpeechEnabled true
}}}

 * KDE5: started under condition

{{{
kreadconfig5 --file kaccessrc --group ScreenReader --key Enabled
}}}

can be set with

{{{
kwriteconfig5 --file kaccessrc --group ScreenReader --key Enabled true
}}}

 * LXDE?

== Notes about packaging ==

 * a11y-team project on salsa, we usually use git repositories.
 * speakup: speakup_decpc is not free, that's why we use a dfsg branch. To release a newer upstream version, pull the upstream branch from the dfsg branch, then pull the dfsg branch from the debian branch, then run git-buildpackage --git-tag --git-upstream-branch=dfsg
 * liblouis*: import tarballs to the upstream-import branch (git-import-orig file.tar.gz --upstream-branch=upstream-import), then pull into the upstream branch and discard the conflicts in generated files which we do not ship in the .orig.tar.gz
 * Some packages (e.g. orca) follow the gnome packaging style, see for instance https://wiki.debian.org/Gnome/Git#Package_new_upstream_version )
   * To get unstable releases, use the experimental branch whose watch file tracks unstable tarballs too.
   * and use e.g. {{{gbp import-orig --uscan --debian-branch=debian/experimental --upstream-vcs-tag=ORCA_3_29_3}}}

== TODO ==

Testing scenarii (see explanation on https://lists.debian.org/debian-accessibility/2013/10/msg00026.html)

 * debian-installer: https://wiki.debian.org/DebianInstaller/Accessibility
 * accessodf: TODO
 * at-spi2: autopkgtest
 * brailleutils: TODO
 * brltty: TODO
 * daisy-player: [[http://anonscm.debian.org/gitweb/?p=pkg-a11y/daisy-player.git;a=blob;f=debian/README.testing;h=0ddb01e5f6e9cc013702e5921854cfc52b5be5e4;hb=015dfad2f08647437b9877c1f65b16b86be23c0e|README.testing in git]], and autopkgtest
 * dots: TODO
 * ebook-speaker: [[http://anonscm.debian.org/gitweb/?p=pkg-a11y/ebook-speaker.git;a=blob;f=debian/README.testing;h=f4a0bc894936dce565506e87e564fa0fdfb4c148;hb=19a42caa2cd209263b7b511455c2ad9c91da0e4f|README.testing in git]]
 * edots-speaker: TODO
 * eflite: done
 * emacspeak: README.testing in git, https://lists.debian.org/debian-accessibility/2013/10/msg00040.html
 * espeak: autopkgtest
 * espeakedit: TODO
 * espeakup: TODO
 * festival: [[http://anonscm.debian.org/gitweb/?p=tts/festival.git;a=blob;f=debian/README.testing;h=85899facd6d47b40074de3d080db977e4649ead5;hb=84526e2298d6be2e17f4cbb2bcabd8099201fb32]] and autopkgtest
 * festvox-mbrola: TODO
 * flite: done and autopkgtest
 * gnome-mousetrap: TODO
 * java-atk-wrapper: TODO
 * liblouis: autopkgtest
 * liblouisutdml: autopkgtest
 * liblouisxml: autopkgtest
 * mbrola: autopkgtest
 * natbraille: done, autopkgtest
 * orca: TODO
 * pocketsphinx: autopkgtest
 * simon: TODO
 * sonic: autopkgtest
 * speakup: TODO
 * speakup-tools: TODO
 * speech-dispatcher: TODO
 * speechd-up: TODO
 * sphinxbase: autopkgtest
 * sphinxtrain: TODO
 * svox: [[http://anonscm.debian.org/gitweb/?p=collab-maint/svox.git;a=blob;f=debian/README.testing;h=d6d4da6cf6bdee8744103dfd91a7821825316553;hb=refs/heads/debian-sid|README.testing in git]], autopkgtest
 * transcribo: TODO
 * yasr: TODO

== TODO Packaging ==

 * Package nfbtrans, see [[https://lists.debian.org/debian-accessibility/2008/05/msg00043.html]] [[http://www.nfb.org/nfb/nfbtrans.asp]]
 * Hook braille translators into cups
 * Package Anumaan http://www.cdacmumbai.in/index.php/cdacmumbai/research_and_publications/research_groups/open_source_soft_division/projects/anumaan
 * Add a tasksel element. It doesn't seem so simple, we'd need subtasks. Maybe a complete package that asks precise questions.
 * Help Mario with the packages he requested help for.
 * See how to write a win32-loader frontend to easily configure a11y parameters
 * check mono's UI accessibility
   * Apparently packaged directly in the toolkit
   * GTK# seems to be fine
   * Winforms doesn't seem fine: for instance, running nunit-gui, {{{orca -l}}} sees it, but after some timeout, so it seems to have issues.
     * Removal of mono-uia (DebianBug:726045) says that "Novell fired all Mono a11y developers, this project is dead"
 * GEM http://www.cdacmumbai.in/ http://www.cdacmumbai.in/projects/accessibility/
 * chewing-word, on alioth, licensing issue.
 * petitboot: integrate with brltty to make it an accessible bootloader
 * wb http://linux-speakup.org/wb.git/
 * vedics [[http://vedics.sourceforge.net/]]
 * brailleblaster [[http://www.brailleblaster.org/]]
 * --( speechless [[https://github.com/raginggoblin/speechless]] )--This is now [[http://typetalk.github.io/TypeTalk/|TypeTalk]], repository at [[https://github.com/TypeTalk/TypeTalk]]
 * odt2braille and odt2daisy, needs liblouisxml 2.3.0, or maybe libutdml is enough.
 * dae ftp://ftp.csir.co.za/MI/National_Accessibility_Portal/wvdwalt/dae-latest.tar.bz2
 * marytts / OpenMary ([[http://mary.dfki.de/]] , svn checkout https://mary.opendfki.de/repos/trunk [[https://github.com/marytts/marytts]])
 * http://simon-listens.blogspot.com/2012/12/simon-040.html
 * VoxForge http://voxforge.org/
 * LiSpeak (https://github.com/BmanDesignsCanada/LiSpeak) and / or Palaver (https://github.com/JamezQ/Palaver)?
 * Enable libjs support in links2
 * chromevox, see thread starting at [[https://lists.debian.org/debian-accessibility/2016/11/msg00093.html]]
 * OCRdesktop [[https://linux-a11y.org/index.php?page=ocrdesktop]]
 * RHVoice [[http://github.com/rhvoice/rhvoice]] (mostly russian voice)
   * A couple of its voices are non-free: only for non-commercial use, will need to be packaged separately
   * The way to reproduce the data needs to be documented
 * OCR-Desktop [[https://github.com/chrys87/ocrdesktop]
 * OCRPDF [[https://github.com/chrys87/ocrpdf/]]
 * DeepSpeech? https://github.com/mozilla/DeepSpeech
   * needs TensorFlow https://www.tensorflow.org/install/install_sources
     * needs Bazel https://docs.bazel.build/versions/master/install-compile-source.html
       * needs a flurry of java packages..............
     * see https://lists.debian.org/debian-devel/2019/04/msg00298.html
     * see https://salsa.debian.org/science-team/tensorflow/
   * But also DebianBug:921519
 * Mozilla TTS https://github.com/mozilla/TTS
   * needs PyTorch https://salsa.debian.org/deeplearning-team/pytorch , which lumin gave up on packaging (DebianBug:853923), more details on https://people.debian.org/~lumin/debian-dl.html
 * Speech-friendly alsa mixer (sam) http://www.sanote.co.za/downloads/sam-latest.tar.bz2
 * Blather (https://github.com/ajbogh/blather), or rather Norman (https://github.com/ajbogh/norman)
 * Franfest in addition to cicero
 * bookworm? (DebianBug:883867) Note the confusion between mush42's and babluboy's bookworm
 * sekai? https://notabug.org/isengaara/sekai.git
 * WORLD vocoder (DebianBug:971008)
 * Opengazer? https://www.inference.org.uk/opengazer/

== Installation ==

More generic details on [[https://brl.thefreecat.org/wiki/Installer]]

 * Tune accessibility support in the liveCD.
 * Add brltty/speakup parameters preseed support?
 * Create a webpage that generates preseed files according to the
 hardware selected by the user in a form.
 * Another way is putting parameters in the iso itself:
 [https://people.debian.org/~sthibault/remaster-append.sh]
 * Add AT-SPI and Orca/gok to debian installer (needs python there first)
 * speakup translations should be loaded automatically according to installation locale, at least
 * Centralize configuration in a common package
   * to expose a debconf question to choose what to enable/disable
     * allows non-disabled people to prepare a machine for a disabled user
     * allows disabled people to prepare a machine for a non-disabled user
   * there are currently bits in at least:
     * brltty-udeb's /usr/lib/finish-install.d/07brltty
     * espeakup-udeb's /usr/lib/finish-install.d/06espeakup
     * rootskel's /usr/lib/finish-install.d/07rootskel

== Documentation ==

 * Add an accessibility chapter to the developer's reference
 * Add accessibility questions to the NM process.
 * Add an "Accessible Event Howto" for debconf, minidebconf & co.
 * Add an accessibility section to [[Derivatives/Guidelines]] and tell debian-derivatives@lists.debian.org about it.
 * Add accessibility questions to the Debian Policy.

== Misc ==

 * {OK} Add more types of package tags: something like
 accessible-with::{at-spi,tty-screen-reader} (technicaly tested),
 accessible-with::{braille,speech} (usability in general),
 accessible-with::{gnome-orca,brltty,speakup} (usability with a particular reader) (DebianBug:855446)
 * {OK} Add an accessibility tag to bugs (and thus cc-ed to debian-accessibility) (DebianBug:706902 DebianBug:867416)
 * Make accessibility bugs RC, or at least consider them with care during freeze?
 * Add archive Accessibility section?
 * Rasterize console fonts (DebianBug:595696). Useful for both bigger and smaller fonts
 * Use personas: [http://www.aegis-project.eu/index.php?option=com_content&view=article&id=63&Itemid=53], [http://www.w3.org/WAI/redesign/personas]

== Accessibility archive section? ==

 * braille translation programs (could be text)
  * dots (currently gnome)
  * liblouis*
  * natbraille
 * screen readeers (usually admin)
  * brltty (currently admin)
  * screader (currently text)
  * speakup (currently admin)
  * espeakup (currently admin)
  * yasr (currently admin)
  * console-braille (currently utils)
  * emacspeak (currently editors)
  * speechd-el (currently editors)
 * gnome (could be gnome)
  * libgail-gnome-module (currently libs)
  * gnome-accessibility-themes (currently gnome)
  * gnome-orca (currently gnome)
  * gnome-mag (currently x11)
 * kde (could be kde)
  * kmag (currently utils)
  * kmousetool (currently utils)
  * kmouth (currently utils)
  * kttsd (currently utils)
 * x11
  * big-cursor (currently x11)
  * xzoom (currently x11)
 * input
  * cellwriter (currently gnome)
  * dasher (currently x11)
  * gok (currently gnome)
  * mousetweaks (currently gnome)
  * gnome-mousetrap (currently gnome)
  * mozilla-mozgest (currently web)
  * wayv (currently x11)
  * xvkbd (currently x11)
 * speechrecognition (could be sound)
  * sphinx2-bin (currently sound)
  * gnome-voice-control
  * perlbox
 * speechsynthesis (could be sound)
  * eflite, flite (currently sound)
  * espeak (currently sound)
  * epos (currently sound)
  * festival (currently sound)
  * gnome-speech-*
  * recite (currently sound)
  * saydate, saytime (currently sound)
  * speech-dispatcher, speech-tools (currently sound)
  * speech-dispatcher-festival (currently sound)
  * mbrola (currently sound)
  * gespeaker (currently sound)
  * daisy-player (currently sound)
  * epos (currently sound)
  * libttspico-utils (currently sound)
  * freetts (currently java)
  * sonic (currently sound)
 * devel
  * accerciser (currently gnome)
 * ocr software?
  * gocr (currently graphics
  * hocr-gtk (currently graphics)
  * tesseract-ocr (currently graphics)
  * ttf-ocr-a (currently fonts)
  * cuneiform (currently graphics)
 * magnification
  * vmg (currently utils)

== Backports ==

 * brltty for newer hardware support
 * speech-dispatcher with pico support (>> 0.7.1)
 * at-spi stack (at-spi2-core, atk, at-spi2-atk, pyatspi)
 * gnome-orca
 * compiz

=== Wiki page restructuring ===

The current [[accessibility]] is a monolithic source of information that makes
finding the correct information difficult, especially for non-technical users.
Instead, the front accessibility page should be short, and only be a point of entry to
other pages which go into details; these should nevertheless shortly be
introduced on the front page. Sections would include:

 * [ ] installation
 * [ ] live CD
 * [ ] boot accessibility
 * [ ] speech support
 * [ ] braille support
 * [ ] text console accessibility
 * [ ] GUI accessibility
 * [ ] embossing
 * [ ] virtualization

Notably, the troubleshooting and the tips & tricks pieces should
go to the corresponding sections so they are easier to find.

Note: please tick sections that you outsource to track the working progress,
thanks.

This page is for internal use by the Debian accessibility team. For user documentation on accessibility in Debian, please look at the accessibility page. For general package maintainer information on accessibility in Debian, please look at the accessibility maintainer page.

Accessibility stack internals

For graphical desktop accessibility to work, three things are needed:

  • the accessibility bus get started,
  • toolkits load their accessibility layer,
  • a screen reader get started.

The first two points, described in details below, can be checked automatically on any desktop with

$ git clone https://salsa.debian.org/a11y-team/check-a11y.git
$ sudo apt-get install build-essential pkg-config libdbus-1-dev libatspi2.0-dev libgtk2.0-dev libgtk-3-dev libqt4-dev qtbase5-dev 
$ cd check-a11y
$ source env.sh
$ make check

This check is also run automatically on several desktops, please see a11y Desktop status Overview. This is currently work in Progress, so please inform Simon Kainz if you have questions/ideas about this.

Accessibility bus getting started

This is provided by package at-spi2-core.

This is automatically started from /etc/xdg/autostart/at-spi-dbus-bus.desktop

On Stretch and later, it is always started, whatever desktop is used.

On Jessie and before, for gnome and Unity, it is started under condition:

gsettings get org.gnome.desktop.interface toolkit-accessibility

For MATE, this is automatically started under condition

gsettings get org.mate.interface accessibility

Others don't start it automatically, but it is getting started when running accessible GTK2, GTK3 or QT4 applications with accessibility enabled. QT5 doesn't start it automatically, but can catch up with it afterwards if accessibility is enabled in it, see below.

Toolkits loading their accessibility layer

gtk3 needs libatk-adaptor and libgail-common, no condition.

gtk2 needs libatk-adaptor and libgail-common, loaded when GTK_MODULES=gail:atk-bridge (already set by default from /etc/X11/Xsession.d/90atk-adaptor in Stretch and later) or loaded by /usr/lib/gnome-settings-daemon-3.0/gtk-modules/at-spi2-atk.desktop when gnome-settings-daemon is running and gsettings get org.gnome.desktop.interface toolkit-accessibility is true.

KDE4 needs qt-at-spi, conditionalized by QT_ACCESSIBILITY=1 (already set by default from /etc/X11/Xsession.d/90qt-a11y in Stretch and later)

KDE5 has it integrated, conditionalized by

gsettings get org.gnome.desktop.a11y.applications screen-reader-enabled

but starting from QT5.4, it can also be forced with QT_LINUX_ACCESSIBILITY_ALWAYS_ON=1 (already set by default from /etc/X11/Xsession.d/90qt-a11y in Stretch)

See more discussion in 874054

java needs libatk-wrapper-java, conditionalized in /etc/java-*-openjdk/accessibility.properties :

assistive_technologies=org.GNOME.Accessibility.AtkWrapper

and it can only work with the GTK look and feel, configured in

/etc/java-*-openjdk/swing.properties :

swing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel

(already set by default in Stretch and later)

If it still doesn't work, debugging help can be obtained via the troubleshoot script from the check-a11y repository.

TODO: mono Winforms ?

screen reader getting started

  • Part of Debian Installer testing: DebianInstaller/Accessibility

  • Under Gnome3, MATE, Unity, Cinnamon, started by /etc/xdg/autostart/orca-autostart.desktop under condition

gsettings get org.gnome.desktop.a11y.applications screen-reader-enabled
  • Gnome2: started under condition

gconftool-2 --get /desktop/gnome/applications/at/screen_reader_enabled
  • XFCE could have it

xfconf-query -c xfce4-session -p StartAssistiveTechnologies
  • KDE4: started under condition

qdbus org.kde.kaccessibleapp /Adaptor speechEnabled

can be set with

qdbus org.kde.kaccessibleapp /Adaptor setSpeechEnabled true
  • KDE5: started under condition

kreadconfig5 --file kaccessrc --group ScreenReader --key Enabled

can be set with

kwriteconfig5 --file kaccessrc --group ScreenReader --key Enabled true
  • LXDE?

Notes about packaging

  • a11y-team project on salsa, we usually use git repositories.
  • speakup: speakup_decpc is not free, that's why we use a dfsg branch. To release a newer upstream version, pull the upstream branch from the dfsg branch, then pull the dfsg branch from the debian branch, then run git-buildpackage --git-tag --git-upstream-branch=dfsg
  • liblouis*: import tarballs to the upstream-import branch (git-import-orig file.tar.gz --upstream-branch=upstream-import), then pull into the upstream branch and discard the conflicts in generated files which we do not ship in the .orig.tar.gz
  • Some packages (e.g. orca) follow the gnome packaging style, see for instance https://wiki.debian.org/Gnome/Git#Package_new_upstream_version )

    • To get unstable releases, use the experimental branch whose watch file tracks unstable tarballs too.
    • and use e.g. gbp import-orig --uscan --debian-branch=debian/experimental --upstream-vcs-tag=ORCA_3_29_3

TODO

Testing scenarii (see explanation on https://lists.debian.org/debian-accessibility/2013/10/msg00026.html)

TODO Packaging

Installation

More generic details on https://brl.thefreecat.org/wiki/Installer

  • Tune accessibility support in the liveCD.
  • Add brltty/speakup parameters preseed support?
  • Create a webpage that generates preseed files according to the hardware selected by the user in a form.
  • Another way is putting parameters in the iso itself:

    [https://people.debian.org/~sthibault/remaster-append.sh]

  • Add AT-SPI and Orca/gok to debian installer (needs python there first)
  • speakup translations should be loaded automatically according to installation locale, at least
  • Centralize configuration in a common package
    • to expose a debconf question to choose what to enable/disable
      • allows non-disabled people to prepare a machine for a disabled user
      • allows disabled people to prepare a machine for a non-disabled user
    • there are currently bits in at least:
      • brltty-udeb's /usr/lib/finish-install.d/07brltty
      • espeakup-udeb's /usr/lib/finish-install.d/06espeakup
      • rootskel's /usr/lib/finish-install.d/07rootskel

Documentation

  • Add an accessibility chapter to the developer's reference
  • Add accessibility questions to the NM process.
  • Add an "Accessible Event Howto" for debconf, minidebconf & co.

  • Add an accessibility section to Derivatives/Guidelines and tell debian-derivatives@lists.debian.org about it.

  • Add accessibility questions to the Debian Policy.

Misc

Accessibility archive section?

  • braille translation programs (could be text)
    • dots (currently gnome)
    • liblouis*
    • natbraille
  • screen readeers (usually admin)
    • brltty (currently admin)
    • screader (currently text)
    • speakup (currently admin)
    • espeakup (currently admin)
    • yasr (currently admin)
    • console-braille (currently utils)
    • emacspeak (currently editors)
    • speechd-el (currently editors)
  • gnome (could be gnome)
    • libgail-gnome-module (currently libs)
    • gnome-accessibility-themes (currently gnome)
    • gnome-orca (currently gnome)
    • gnome-mag (currently x11)
  • kde (could be kde)
    • kmag (currently utils)
    • kmousetool (currently utils)
    • kmouth (currently utils)
    • kttsd (currently utils)
  • x11
    • big-cursor (currently x11)
    • xzoom (currently x11)
  • input
    • cellwriter (currently gnome)
    • dasher (currently x11)
    • gok (currently gnome)
    • mousetweaks (currently gnome)
    • gnome-mousetrap (currently gnome)
    • mozilla-mozgest (currently web)
    • wayv (currently x11)
    • xvkbd (currently x11)
  • speechrecognition (could be sound)
    • sphinx2-bin (currently sound)
    • gnome-voice-control
    • perlbox
  • speechsynthesis (could be sound)
    • eflite, flite (currently sound)
    • espeak (currently sound)
    • epos (currently sound)
    • festival (currently sound)
    • gnome-speech-*
    • recite (currently sound)
    • saydate, saytime (currently sound)
    • speech-dispatcher, speech-tools (currently sound)
    • speech-dispatcher-festival (currently sound)
    • mbrola (currently sound)
    • gespeaker (currently sound)
    • daisy-player (currently sound)
    • epos (currently sound)
    • libttspico-utils (currently sound)
    • freetts (currently java)
    • sonic (currently sound)
  • devel
    • accerciser (currently gnome)
  • ocr software?
    • gocr (currently graphics
    • hocr-gtk (currently graphics)
    • tesseract-ocr (currently graphics)
    • ttf-ocr-a (currently fonts)
    • cuneiform (currently graphics)
  • magnification
    • vmg (currently utils)

Backports

  • brltty for newer hardware support
  • speech-dispatcher with pico support (>> 0.7.1)

  • at-spi stack (at-spi2-core, atk, at-spi2-atk, pyatspi)
  • gnome-orca
  • compiz

Wiki page restructuring

The current accessibility is a monolithic source of information that makes finding the correct information difficult, especially for non-technical users. Instead, the front accessibility page should be short, and only be a point of entry to other pages which go into details; these should nevertheless shortly be introduced on the front page. Sections would include:

  • [ ] installation
  • [ ] live CD
  • [ ] boot accessibility
  • [ ] speech support
  • [ ] braille support
  • [ ] text console accessibility
  • [ ] GUI accessibility
  • [ ] embossing
  • [ ] virtualization

Notably, the troubleshooting and the tips & tricks pieces should go to the corresponding sections so they are easier to find.

Note: please tick sections that you outsource to track the working progress, thanks.