Skip to content

Add Orca screen reader with Piper TTS#5139

Open
fedesapuppo wants to merge 1 commit intobasecamp:devfrom
fedesapuppo:t2-orca-piper-tts
Open

Add Orca screen reader with Piper TTS#5139
fedesapuppo wants to merge 1 commit intobasecamp:devfrom
fedesapuppo:t2-orca-piper-tts

Conversation

@fedesapuppo
Copy link
Copy Markdown
Contributor

@fedesapuppo fedesapuppo commented Mar 27, 2026

Summary

  • Adds omarchy-toggle-orca to start/stop the Orca screen reader with a single keypress
  • Adds omarchy-setup-piper-tts to download Piper TTS and configure it as the speech-dispatcher backend (replaces espeak-ng's robotic voice with a natural-sounding neural voice)
  • Installs orca and speech-dispatcher via new install/config/accessibility.sh for all users
  • Binds F3 to toggle the screen reader

A nice-to-have accessibility addition — for users who benefit from a screen reader, this pairs Orca with Piper TTS so the voice sounds natural instead of the default robotic espeak-ng output.

Copilot AI review requested due to automatic review settings March 27, 2026 21:37
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds an accessibility option to Omarchy by introducing an Orca screen reader toggle plus a helper to configure Piper TTS as a Speech Dispatcher backend (aiming to improve voice quality over espeak-ng), along with install/binding wiring.

Changes:

  • Install orca and speech-dispatcher during T2 Mac setup.
  • Add a default Hyprland keybinding (XF86LaunchA) to toggle Orca.
  • Introduce omarchy-toggle-orca and omarchy-setup-piper-tts helper scripts.

Reviewed changes

Copilot reviewed 2 out of 4 changed files in this pull request and generated 2 comments.

File Description
install/config/hardware/apple/fix-t2.sh Adds Orca/Speech Dispatcher packages during T2 provisioning.
default/hypr/bindings/media.conf Adds a default keybinding to toggle the screen reader.
bin/omarchy-toggle-orca Adds a toggle script to start/stop Orca.
bin/omarchy-setup-piper-tts Downloads Piper + voice model and writes Speech Dispatcher config to use Piper.

Tip

If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or run gh pr ready --undo.
Click "Ready for review" or run gh pr ready to reengage.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread install/config/hardware/apple/fix-t2.sh Outdated
KERNEL_CMDLINE[default]+=" intel_iommu=on iommu=pt pcie_ports=compat"
EOF

omarchy-pkg-add orca speech-dispatcher
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

orca/speech-dispatcher are only installed in the T2-specific path, but the global Hyprland binding/script introduced in this PR will be present on non‑T2 systems too. That leaves the default keybinding invoking omarchy-toggle-orca without the required packages installed. Consider moving these packages to the base (or an accessibility) install step, or make omarchy-toggle-orca handle missing dependencies gracefully (notify/prompt to install).

Copilot uses AI. Check for mistakes.
Comment thread default/hypr/bindings/media.conf Outdated
bindeld = ,XF86KbdBrightnessUp, Keyboard brightness up, exec, omarchy-brightness-keyboard up
bindeld = ,XF86KbdBrightnessDown, Keyboard brightness down, exec, omarchy-brightness-keyboard down
bindld = ,XF86KbdLightOnOff, Keyboard backlight cycle, exec, omarchy-brightness-keyboard cycle
bindld = ,XF86LaunchA, Toggle screen reader, exec, omarchy-toggle-orca
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This adds a default binding that will run on all installs, but omarchy-toggle-orca currently assumes orca is installed and will fail with “command not found” on non‑T2 systems. Either ensure orca/speech-dispatcher are installed for all users, or make the script no-op with a notification when dependencies aren’t present.

Suggested change
bindld = ,XF86LaunchA, Toggle screen reader, exec, omarchy-toggle-orca
bindld = ,XF86LaunchA, Toggle screen reader, exec, sh -c 'command -v orca >/dev/null 2>&1 && command -v speech-dispatcher >/dev/null 2>&1 && omarchy-toggle-orca || notify-send "Screen reader unavailable" "Install orca and speech-dispatcher to use this shortcut."'

Copilot uses AI. Check for mistakes.
Copilot AI review requested due to automatic review settings March 28, 2026 22:42
@fedesapuppo fedesapuppo changed the title Add Orca screen reader with Piper TTS for T2 MacBooks Add Orca screen reader with Piper TTS Mar 28, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 5 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread default/hypr/bindings/media.conf Outdated
bindeld = ,XF86KbdBrightnessUp, Keyboard brightness up, exec, omarchy-brightness-keyboard up
bindeld = ,XF86KbdBrightnessDown, Keyboard brightness down, exec, omarchy-brightness-keyboard down
bindld = ,XF86KbdLightOnOff, Keyboard backlight cycle, exec, omarchy-brightness-keyboard cycle
bindld = ,F3, Toggle screen reader, exec, omarchy-toggle-orca
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The binding uses F3, but the PR description says the toggle should be on XF86LaunchA (Fn+F3 on many MacBooks). Binding to plain F3 applies to all keyboards and is likely to conflict with normal F-key usage; consider switching the binding to XF86LaunchA (or otherwise making it Mac-specific) to match the stated intent.

Copilot uses AI. Check for mistakes.
Comment thread install/config/all.sh
run_logged $OMARCHY_INSTALL/config/powerprofilesctl-rules.sh
run_logged $OMARCHY_INSTALL/config/wifi-powersave-rules.sh
run_logged $OMARCHY_INSTALL/config/plocate-ac-only.sh
run_logged $OMARCHY_INSTALL/config/accessibility.sh
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

accessibility.sh is now run from the global install/config/all.sh, which means orca/speech-dispatcher will be installed for all installs. The PR description says these packages are installed during the T2 setup; either move this to the T2-specific setup path or update the PR description to reflect that this is now part of the default install.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants