commit:     0859083be9b80f87a2ee7bb9e36472ead8686ed7
Author:     Ian Jordan <immoloism <AT> gmail <DOT> com>
AuthorDate: Sun Feb  8 22:11:18 2026 +0000
Commit:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Feb  8 23:08:13 2026 +0000
URL:        https://gitweb.gentoo.org/proj/releng.git/commit/?id=0859083b

LiveGUI: Accessibility

This wires up the LiveGUI to work with the new accessibility
feature added to the live media using GRUB.

I've had to abuse fsscript by creating a small shell script
inside it. Using livecd-tools to do the same task leads to
espeakup reporting errors verbally to users. I feel this that
is a more undesired effect then the method chosen here.

This method also allows fast repair and feature adds as a side
benefit.

mrpony checks for dospeakup in /proc/cmdline and runs Orca
screen reader and loads the accessibilty for users that need
other needs catered for such as colour blindness.

Signed-off-by: Ian Jordan <immoloism <AT> gmail.com>

 .../specs/amd64/livegui/files/fsscript-stage2.sh   | 28 +++++++++++++++++++++-
 releases/specs/amd64/livegui/livegui-stage1.spec   |  1 +
 2 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/releases/specs/amd64/livegui/files/fsscript-stage2.sh 
b/releases/specs/amd64/livegui/files/fsscript-stage2.sh
index 0a28fc5d..fcfb39cf 100755
--- a/releases/specs/amd64/livegui/files/fsscript-stage2.sh
+++ b/releases/specs/amd64/livegui/files/fsscript-stage2.sh
@@ -14,7 +14,7 @@ sed -e '/^DISPLAYMANAGER=/s/.*/DISPLAYMANAGER="sddm"/' -i 
/etc/conf.d/display-ma
 
 # Don't let NM change hostname (this breaks xauth)
 echo "[main]
-plugins=keyfile 
+plugins=keyfile
 hostname-mode=none" > /etc/NetworkManager/NetworkManager.conf
 
 # Autologin via sddm to plasma
@@ -127,6 +127,32 @@ idleTime=300000
 suspendThenHibernate=false
 suspendType=1" > .config/powermanagementprofilesrc
 
+## Setup accessibilty features
+# We use fsscript as this script causes issues with the
+# minimal cd when used with espeakup.
+
+echo "#! /bin/bash
+
+if grep -qw 'dospeakup' /proc/cmdline
+then
+echo \"[ScreenReader]
+Enabled=true\" > /home/gentoo/.config/kaccessrc
+
+systemsettings kcm_access
+orca --replace
+fi" > /usr/bin/mrpony
+
+chmod +x /usr/bin/mrpony
+
+echo "[Desktop Entry]
+Version=1.0
+Name=Mr Pony - Accessibilty
+Icon=preferences-system
+Type=Application
+SingleMainWindow=true
+Exec=/usr/bin/mrpony
+Terminal=false" > .config/autostart/mrpony.desktop
+
 popd
 # Clean up perms
 chown -R gentoo:users /home/gentoo

diff --git a/releases/specs/amd64/livegui/livegui-stage1.spec 
b/releases/specs/amd64/livegui/livegui-stage1.spec
index d87980f8..052d9b5a 100644
--- a/releases/specs/amd64/livegui/livegui-stage1.spec
+++ b/releases/specs/amd64/livegui/livegui-stage1.spec
@@ -10,6 +10,7 @@ portage_confdir: @REPO_DIR@/releases/portage/livegui
 
 livecd/use:
        -aac
+       accessibility
        compile-locales
        fbcon
        jpeg2k

Reply via email to