Skip to content

Live Speech

Everything under System Settings › Accessibility › Live Speech, as Nix options. Each one is named after the control you'd click, and set under programs.nix-plist-manager.options in home-manager.

3 options 1 verified against System Settings

System Settings › Accessibility › Live Speech › Font size

home-manager · per user Not verified
applications.systemSettings.accessibility.liveSpeech.fontSize = 12.0;

A number from 12 to 120 "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess liveSpeechFontSize

For 12.0:

/usr/bin/defaults write com.apple.universalaccess liveSpeechFontSize -float 12.000000 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess liveSpeechFontSize -float 12.000000' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess liveSpeechFontSize 2>/dev/null || true

For 120.0:

/usr/bin/defaults write com.apple.universalaccess liveSpeechFontSize -float 120.000000 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess liveSpeechFontSize -float 120.000000' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess liveSpeechFontSize 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess liveSpeechFontSize 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess liveSpeechFontSize 2>/dev/null || true

System Settings › Accessibility › Live Speech › Live Speech

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.liveSpeech.liveSpeech = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess liveSpeechEnabled

For false:

/usr/bin/defaults write com.apple.universalaccess liveSpeechEnabled -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess liveSpeechEnabled -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess liveSpeechEnabled 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess liveSpeechEnabled -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess liveSpeechEnabled -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess liveSpeechEnabled 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess liveSpeechEnabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess liveSpeechEnabled 2>/dev/null || true

System Settings › Accessibility › Live Speech › Voice

home-manager · per user Not verified
applications.systemSettings.accessibility.liveSpeech.voices = "/path/to/snapshot";

A directory captured with nix run …#capture — see Snapshots "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess liveSpeechLanguageVoiceSelections

For /path/to/snapshot:

/usr/bin/defaults delete com.apple.universalaccess liveSpeechLanguageVoiceSelections 2>/dev/null || true
/usr/bin/defaults import com.apple.universalaccess /path/to/snapshot/voices.plist || echo 'nix-plist-manager: failed: /usr/bin/defaults import com.apple.universalaccess /path/to/snapshot/voices.plist' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess liveSpeechLanguageVoiceSelections 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess liveSpeechLanguageVoiceSelections 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess liveSpeechLanguageVoiceSelections 2>/dev/null || true