Release History
Vocalinux Changelog
Track every release and see how Vocalinux has evolved. From initial alpha to stable releases, follow the journey of Linux voice dictation.
v0.16.2
StableLatest2026-09-05- KDE: skip leftover IBus when it is not the session IM so dictation types into Kate, browsers, and terminals (PR #753, fixes #752)
- Wayland shortcuts: wtype and ydotool deliver real chords instead of refusing or silently doing nothing (PR #715)
- IBus shortcuts: route X11_IBUS through xdotool and WAYLAND_IBUS through wtype/ydotool (PR #716)
- Voice command delete that: send real BackSpace key events instead of U+0008 text (PR #714)
- Installer: Fedora and Arch need glslc/shaderc packages, not glslang (PR #763, #604)
- Nightly: stamp version.py before python -m build so wheel metadata matches the filename (PR #762)
- Release integrity: checksums, signatures, and pinned builders for release artifacts (PR #759, epic #701 phase 5)
- CI: gate AUR PKGBUILD builds on every PR; test the distros the docs promise and fix docs drift (PR #772, #773)
- Site: VocaGateway family card is Beta; README logo, badges, and privacy copy (PR #765, #764)
- Deps: bump the github-actions group (PR #766)
v0.16.1
Stable2026-08-30- Startup uses the engine's own model size instead of a leftover generic key; the model is saved only after it loaded (PR #684, #685, fixes #681)
- Unused leftover-model list shows every row; one ConfigManager so Settings writes stick (PR #686, #691, fixes #683, #689)
- Tray stays idle after leftover transcription on toggle stop, and the missing-model notification can download the recommended model (PR #741, #687)
- Terminals get Ctrl+Shift+V paste; GNOME XWayland layout is restored after scoped IBus inject (PR #734, #742)
- Installer requires Python 3.11, verifies model downloads, and no longer invents GPUs (PR #713, #736)
- AppImage built against a glibc floor that boots on Debian 12 through current Fedora (PR #743, #744)
- AUR: build against Arch extra setuptools 84, and skip context_params on AUR pywhispercpp 1.4 so the app starts
- Settings dropdowns share a width; About is quieter with family platform marks (PR #754)
v0.16.0
Stable2026-08-23- In-app update checker (stable/nightly) plus tray Update Available when GitHub has a newer release (PR #631, #645)
- New installs default to hold Right Alt push-to-talk; existing configs keep their shortcut (PR #648)
- Searchable language list and delete unused downloaded speech models (PR #672, #671)
- Family dictation tone picker in Settings → Audio: Lift, Flick, Ember, Step, Voca, Soft, Chirp, Scale, Drop, Glass, Off, plus Preview. New installs default to Voca. Catalog tones are the family preview WAVs, not synthesized files (PR #707, #708)
- License migrated to AGPL-3.0 (PR #660)
- App icon, tray states, and site favicons use the shared Voca family mic instead of the old Linux rounded-rect (PR #704)
- Installer hardened with Justfile and uv lockfiles; distro python3-gi required (no pip sdist of PyGObject). Epic #701 remains open (PR #700, #705, #706)
- Test Dictation no longer reports no speech when recognition never started (PR #702)
- IBus/X11 reliability: restorable scoped injection, engine restore after teardown, XKB layout restore (PR #623, #643, #665)
- Audio, clipboard, and AppImage/GPU packaging fixes (PR #629, #673, #588, #646, #674, #637)
- Settings About page groups this app, the VocaHQ family, and talk-to-us links (PR #718)
- vocalinux.com restyled to the Voca family workbench; Discord and X links point at VocaHQ (PR #728, #729, #722, #717)
v0.15.0
Stable2026-07-28- Searchable sidebar settings with live search replace the seven-tab notebook (PR #601)
- AppImage packages for x86_64 and aarch64 on GitHub Releases (PR #573, #602)
- Expanded speech-language catalog (~33 languages + Auto-detect), including Hungarian; VOSK only lists languages with official models (PR #616, fixes #565)
- Settings: dictation status / mic level / Test Dictation / Close live in the sidebar footer (PR #618)
- Settings: Custom Shortcut Record/Set controls show again (PR #619)
- Languages: English (India) maps to Whisper code en for whisper.cpp / Whisper / remote API (PR #617)
- Auto-capitalize after sentence punctuation; trailing space so the next utterance does not glue on (PR #554, #608)
- Auto-pause competing apps and idle model keep-alive unload for battery/GPU headroom (PR #592, closes #445, #591)
- Vulkan: auto-select discrete GPU and pick a device in Advanced settings (PR #590, closes #589)
- Wayland: use IBus on previously unbridged compositors when ibus-wayland is running (PR #614, closes #607)
- IBus: keep engine teardown correct when parent destroy fails (PR #613, fixes #606)
- CLI: vocalinux --version (PR #563, closes #555)
- Settings info notices flattened; Bluetooth mic heap-corruption fix; KDE unbridged-IBus skip when ibus-wayland is absent; xdotool focus preserve; installer/AUR fixes (PR #615, #599, #577, #564, #583, #569, #597, #579, #586)
- Marketing site redesign; languages page per-engine badges; robots.txt indexing fix (PR #582, #616, #610)
v0.14.2
Stable2026-07-17- IBus: restore engine process launch after Flatpak XDG path import so the engine no longer dies with ImportError and falls back to ydotool/clipboard paste (PR #534)
- IBus: wait for FocusIn before commit on scoped injection so the first dictation of a session is not dropped on GNOME Wayland (PR #533, fixes #523)
- Settings UI: notebook tabs scroll so the dialog fits the monitor; wheel events from unfocused combos/spins reach the tab scroller (PR #538, #541)
v0.14.1
Stable2026-07-17- Flatpak packaging for universal distribution: whisper.cpp engine, XDG sandbox paths, global hotkeys via evdev, Wayland text injection via wl-copy + ydotool (PR #484, closes #167)
- AUR package and CI publish path for Arch Linux (PR #518)
- Layout-aware combo keys so custom shortcuts work on non-US keyboard layouts (PR #514)
- Installer fix for sg not found on Ubuntu 26.04 / Debian 13 (PR #524)
- Text injection treats XIM none as unset (PR #512)
- Website screenshot gallery refresh and Dependabot npm alert fixes (PR #521, #515)
v0.14.0-beta
Beta2026-07-13- Configurable modifier+key hotkeys: set custom shortcuts with any combination of Ctrl, Alt, Shift, and Super plus a letter/number key, e.g. Alt+R or Ctrl+Shift+V (PR #493)
- Remote API engine now supports FunASR/SenseVoice models via OpenAI-compatible endpoints; SenseVoice metadata labels are stripped before text injection (PR #468)
- GNOME Wayland IBus text injection restored when only a bare xkb engine is configured; engine restore fallback now picks the correct IM engine (PR #506, #500)
- KDE Plasma Wayland IBus text-injection path restored after recent compositor-detection regressions (PR #502)
- Wayland text injection now waits for held modifiers to release before typing, preventing accidental shortcut triggers and garbled output (PR #494)
- Shortcuts UI keeps preset and custom shortcut selection exclusive: selecting a preset clears the custom field, and setting a custom combo selects the Custom Shortcut preset (PR #509)
- whisper.cpp no longer defaults to all CPU cores on hybrid processors, improving UI responsiveness and battery life (PR #492)
- Fixed a crash on recording start when the selected audio device index no longer matches the current system enumeration (PR #499)
- Installer includes xsel as a fallback for the Wayland clipboard path when xclip is unavailable (PR #496)
- Removed an outdated long comment about whisper.cpp default thread counts (PR #505)
v0.13.0-beta
Beta2026-06-30- Guided whisper.cpp model selection: pick a size plus a specialization (English-only, quantized Q5/Q8, or Large v3 Turbo) through split Model Size and Specialization dropdowns with in-app guidance; the --model flag also accepts exact IDs like medium.en-q5_0 and large-v3-turbo (PR #465)
- Dictation now keeps a space between segments spoken with a pause in between, so words no longer run together after a silence (PR #464)
- Keyboard shortcuts now work on keyboards hotplugged after Vocalinux starts, with the evdev backend rescanning for new devices and recovering from disconnects (PR #467)
- Vocalinux now detects KDE Plasma Wayland sessions and points you to enable IBus Wayland for reliable text injection, surfaced during install and when wtype injection fails (PR #466)
- Wayland: fixed garbled text on non-US keyboard layouts (AZERTY/QWERTZ/Dvorak) and a clipboard-copy hang; ydotool now pastes through the clipboard, which is layout-independent (PR #480)
- Wayland: use wtype/ydotool instead of IBus on compositors that don't bridge it to native apps like COSMIC, Sway, and Hyprland, fixing silent text drops (PR #486)
- Wayland/IBus: require a real IM engine before using IBus, so a bare xkb layout no longer causes silent text drops on GNOME/Mutter and other compositors (#478)
- Wayland: keep the keyboard layout intact by not running setxkbmap, which was flipping XWayland apps to us after dictation (#474)
- Faster ydotool text injection via an explicit --key-delay (PR #488)
- Settings dialog height capped on high-resolution displays (PR #465)
- Refreshed website docs with new feature pages for Remote API, Silero VAD, advanced whisper.cpp settings, and desktop reliability, plus responsive layout polish (PR #470)
v0.12.0-beta
Beta2026-06-07- Remote API speech recognition engine with installation and configuration support (PR #335)
- Silero VAD drops silence-only buffers for cleaner dictation when ONNX Runtime support is available (PR #447)
- Thread safety hardening for Remote API, IBus, and text injection paths (PR #452)
- IBus preserves user engines for dead keys and captures the current engine during scoped activation (PR #457, #458)
- Remote Server settings now respect the Advanced toggle and the settings dialog fits lower-resolution screens (PR #454, #456)
- CUDA diagnostics now include auto-remediation and behavioral tests (PR #451)
- Corrected whisper.cpp and VOSK model download size metadata (PR #453)
- Startup now works without the pynput backend (PR #448)
- Remote API developer test server documentation (PR #455)
- Website speech demo browser support clarification (PR #449) and GitHub Sponsors funding configuration
v0.11.0-beta
Beta2026-05-30- New Advanced Settings tab with whisper.cpp anti-hallucination parameters - temperature, no_speech_threshold, max segment length, and more (PR #415)
- IBus engine readiness probe at startup with hardened retries (PR #391)
- IBus runtime failure recovery without app restart (PR #411)
- IBus engine instance destruction handled on keyboard layout switch (fixes #388, closes #389)
- Preserve final speech on stop - no more truncated transcriptions (fixes #401)
- Play stop sound immediately on release and after audio thread joins (PR #426, #436)
- Repair pywhispercpp library loading in installer (PR #433)
- Reduce whisper.cpp CPU threads and ensure GPU backend builds in dev mode (PR #439)
- Correct openSUSE Tumbleweed dependencies with fallback handling (PR #418, #420)
- Harden Debian compatibility layer in installer (PR #437)
- Add Python 3.14 support and bump lxml>=6.1.0 (fixes #404)
- Validate pyproject.toml/setup.py content before entering local repo mode (fixes #396)
- Reuse existing whispercpp builds during install (PR #421)
- Refresh ldconfig after openSUSE typelib install, clarify python3XY placeholder convention (PR #438)
- Clean up runtime log noise and cache hardware detection
- Test coverage: recognition internals, IBus edge cases, CI notification suppression (PR #410, #414)
- Clarify PyPI installation requirements (PR #423)
- Dependency bumps: Next.js security updates (PR #399, #429), PostCSS
v0.10.2-beta
Beta2026-04-08- Handle non-ASCII characters (á, é, ñ, etc.) with ydotool via clipboard paste fallback (fixes #362, PR #376)
- Detect IBus on Wayland without legacy env vars and fix text injection (PR #381)
- Start IBus engine process before checking registration to fix startup on some systems (fixes #360, PR #361)
- Add missing dependencies for Pop!_OS and Ubuntu 24.04+ including cmake, libcairo2-dev, libgirepository (PR #379)
- Systematic code quality refactor across 20 dimensions (PR #377)
- Clarify missing GNOME AppIndicator support on Debian (PR #385)
- Redesigned OG image for vocalinux.com - cleaner, professional, text-based layout (PR #392)
- Test coverage improvements: mock Notify module, tray degraded-startup, IBus socket-readiness branches (PR #384, #386, #390)
v0.10.1-beta
Beta2026-03-30- Bundled package resources to prevent missing system tray icons (fixes #349, PR #354)
- Stopped recognition before engine switches to prevent segfaults (fixes #350, PR #355)
- Added a dedicated Close button in Settings for better WM compatibility (fixes #323, PR #356)
- Preserved XKB layout state during Vocalinux IBus activation (fixes #292, PR #343)
- Auto-recover speech recognition after system suspend/resume via new D-Bus handler (fixes #367, PR #369)
- Restart keyboard shortcut backend after resume to keep shortcuts working (PR #371)
- Delayed keyboard restart to allow USB re-enumeration after resume (PR #372)
- Fixed premature transcription during push-to-talk silence (fixes #358, PR #359)
- Disabled copy-to-clipboard by default in Settings (PR #370)
- Maintenance updates: npm/yarn dependency refresh and brace-expansion dev dependency bump (PR #346, #357)
v0.10.0-beta
Beta2026-03-25- Generalized keyboard modifier alias matching across layouts for more reliable shortcuts
- Audio channel probing now validates device-supported sample rates before selection
- evdev now handles SYN_DROPPED to prevent stale modifier state
- IBus engine activation now uses register_component for stronger text-injection startup
- Settings dialog forces window decorations to prevent missing-titlebar behavior
- Tray icon refresh now uses icon names for better AppIndicator compatibility
- Coverage increased to 80%+ with additional IBus launch/main-entry tests
- Installer and CI polish: latest-tag fallback via GitHub API, Node 24 deploy, and path-filtered workflows
v0.9.0-beta
Beta2026-03-14- Left/right modifier key distinction - choose Left Ctrl vs Right Ctrl for your shortcut
- Sound effects toggle - enable or disable audio feedback from Settings
- Wayland clipboard fallback - auto-copies text when virtual keyboard injection isn't available
- Display availability check - graceful error when running in headless environments
- Fixed unwanted leading space at the start of each new transcription session
- Fixed shortcut mode (toggle/push-to-talk) not applying on startup
- Improved Debian/pipx installation guidance and cross-distro error messages
- Grouped shortcut selector UI - shortcuts organised by Either/Left/Right side
v0.8.0-beta
Beta2026-03-01- Push-to-talk shortcut mode (hold to speak, release to stop)
- Optional voice commands with VOSK auto-enable behavior
- Improved shortcut mode switching and callback reliability
- IBus active-method detection before text injection
- Audio hardware compatibility fixes (sample rate and channel count)
- Fedora startup dialog stability fix
- Web SEO expansion and homepage visual refresh
v0.7.0-beta
Beta2026-02-22- Autostart on login support (XDG autostart)
- Tabbed settings dialog (Speech Engine, Recognition, Text Injection, Audio Feedback, General)
- Intel GPU compatibility detection - auto fallback to CPU for incompatible GPUs
- Single instance prevention - prevents multiple Vocalinux running
- Evdev device management - removes disconnected devices to prevent CPU spin
- Improved GPU detection - avoids false positives on systems without dev libraries
- IBus fallback - skip setup when daemon not running
- Fedora dnf check-update fix
- Web SEO - 7 new optimized pages
v0.6.3-beta
Beta2026-02-19- Fixed installer default tag pointing to correct version
- Added missing psutil dependency for fresh installs
- Process check and interactive prompts in install/uninstall
- Removed leading space from first speech transcription
v0.6.2-beta
Beta2026-02-18- Interactive backend selection (GPU/CPU)
- Enhanced welcome message
- Simplified install commands
- Better GPU support and Vulkan detection
v0.6.0-beta
Beta2026-02-12- whisper.cpp as default engine
- Multi-language support with auto-detection
- System tray indicator
- Full Wayland support
- IBus text injection engine
v0.5.0-beta
Beta2026-02-06- First beta release
- Stable core functionality
- Multiple speech engine support
- Improved text injection
v0.4.1-alpha
Alpha2026-01-29- Language selector UI
- App drawer launch fix
- Better commit handling
- Improved update mechanism
v0.4.0-alpha
Alpha2026-01-29- Multi-language support (French, German, Russian)
- Debian 13+ compatibility
- Python 3.12+ support
- Tag-based version selection in installer
v0.3.0-alpha
Alpha2026-01-21- Initial public alpha
- Basic speech recognition
- X11 text injection
- VOSK engine support
Stay Updated
- Watch the repository on GitHub for release notifications
- Re-run the installer to update to the latest version
- Check the install guide for update instructions