Voice control for Linux desktops. Fully local, no cloud, Wayland-native.
See the codeVoice control for Linux desktops. Fully local, no cloud, Wayland-native.
Say "Hey Jarvis" and control your desktop with your voice.
⚠️ Early development. This project works but is not polished. Expect bugs, incomplete docs, and changes without notice.
Linux desktop voice control is a gap. Talon exists but has a steep learning curve and costs money for the full version. Most other tools are X11-only, abandoned, or cloud-dependent.
EasySpeak is free and open source (GPL-3.0), fully local (no cloud, no accounts), Wayland-native, simple ("Hey Jarvis, open downloads"), and extensible (drop a Python file in plugins/). Built for people with RSI, accessibility needs, hands-busy workflows, or anyone who wants to talk to their computer.
Requirements: Linux with GNOME Shell 47+ on Wayland, Python 3.10–3.14 (tested against 3.10, 3.11, 3.12, 3.13, and 3.14), a microphone, and ~2 GB disk for models. Tested on Fedora 43.
# 1. System packages (Fedora; see the docs for the full list)
sudo dnf install python3 python3-devel gcc portaudio-devel \
pipewire-utils wireplumber at-spi2-core python3-gobject libadwaita qutebrowser \
glib2 ffmpeg-free pulseaudio-utils sound-theme-freedesktop
# 2. Get EasySpeak and run it (uv manages the virtualenv for you)
git clone https://github.com/ctsdownloads/easyspeak.git ~/easyspeak
cd ~/easyspeak
uv run easyspeak
You also need Piper TTS installed for voice feedback. See the Installation guide for the venv-based path, head tracking, and full details.
Prefer prebuilt packages? Grab the easyspeak app .deb/.rpm plus a language
pack (easyspeak-lang-en; German, Italian, French and Spanish packs exist too) from the
Releases page and install them
together — a self-contained, offline install (Python runtime, piper, GNOME
extension, and speech models). See the
Packaging guide.
Then say "Hey Jarvis" followed by a command. Say "help" to list all commands.
Python
87.9%
JavaScript
6.9%
Shell
2.1%
Nix
1.3%
Just
1.2%
Voice control for Linux desktops. Fully local, no cloud, Wayland-native.
See the codeVoice control for Linux desktops. Fully local, no cloud, Wayland-native.
Say "Hey Jarvis" and control your desktop with your voice.
⚠️ Early development. This project works but is not polished. Expect bugs, incomplete docs, and changes without notice.
Linux desktop voice control is a gap. Talon exists but has a steep learning curve and costs money for the full version. Most other tools are X11-only, abandoned, or cloud-dependent.
EasySpeak is free and open source (GPL-3.0), fully local (no cloud, no accounts), Wayland-native, simple ("Hey Jarvis, open downloads"), and extensible (drop a Python file in plugins/). Built for people with RSI, accessibility needs, hands-busy workflows, or anyone who wants to talk to their computer.
Requirements: Linux with GNOME Shell 47+ on Wayland, Python 3.10–3.14 (tested against 3.10, 3.11, 3.12, 3.13, and 3.14), a microphone, and ~2 GB disk for models. Tested on Fedora 43.
# 1. System packages (Fedora; see the docs for the full list)
sudo dnf install python3 python3-devel gcc portaudio-devel \
pipewire-utils wireplumber at-spi2-core python3-gobject libadwaita qutebrowser \
glib2 ffmpeg-free pulseaudio-utils sound-theme-freedesktop
# 2. Get EasySpeak and run it (uv manages the virtualenv for you)
git clone https://github.com/ctsdownloads/easyspeak.git ~/easyspeak
cd ~/easyspeak
uv run easyspeak
You also need Piper TTS installed for voice feedback. See the Installation guide for the venv-based path, head tracking, and full details.
Prefer prebuilt packages? Grab the easyspeak app .deb/.rpm plus a language
pack (easyspeak-lang-en; German, Italian, French and Spanish packs exist too) from the
Releases page and install them
together — a self-contained, offline install (Python runtime, piper, GNOME
extension, and speech models). See the
Packaging guide.
Then say "Hey Jarvis" followed by a command. Say "help" to list all commands.
Python
87.9%
JavaScript
6.9%
Shell
2.1%
Nix
1.3%
Just
1.2%