Vocalinux v0.15.0
TL;DR:
Vocalinux 0.15.0 is a stable minor release on the 0.14 packaging line. Settings move to a searchable sidebar with dictation controls in the footer. GitHub Releases ship AppImages. The speech-language list is much larger (Hungarian included). Continuous dictation capitalizes sentences and leaves a space between utterances. There are new power and GPU controls, better Wayland IBus when ibus-wayland is present, and a fix for Bluetooth mic crashes during PortAudio probing.
Highlights
| Area | Description |
|---|---|
| Settings | Sidebar + search instead of seven tabs; status, mic level, Test Dictation, and Close stay in the sidebar footer |
| AppImage | x86_64 and aarch64 builds attached to the GitHub Release |
| Languages | About 33 selectable speech languages plus Auto-detect (including Hungarian); VOSK only lists languages with official models |
| Dictation polish | Capitalize after . / ! / ?; trailing space after each completed utterance
|
| Auto-pause / keep-alive | Unload the model while configured apps run, or after an idle timeout |
| Vulkan devices | Prefer a discrete GPU when one exists; override under Advanced settings |
| ibus-wayland | Prefer IBus on previously “unbridged” compositors when ibus-wayland is running
|
| CLI | vocalinux --version
|
| Bluetooth mics | Capture open/probe path no longer heap-corrupts on SCO/HFP devices |
New Features
- Settings: searchable sidebar instead of seven notebook tabs. (#601 by @jatinkrmalik)
- Settings: recognition status, mic level, Test Dictation, and Close live in the sidebar footer so they stay visible while you change pages. (#618 by @jatinkrmalik)
- Packaging: AppImage for x86_64 and aarch64, plus smoke-test packaging fixes. (#573, #602 by @jatinkrmalik)
- Languages: expand the speech catalog (Hungarian and many more). CLI
--languageuses the same list as Settings. Official Alphacephei VOSK models are wired where they exist; Whisper-only languages stay out of the VOSK dropdown. (#616 by @jatinkrmalik, fixes #565) - Dictation: capitalize at the start and after sentence-ending punctuation. (#554 by @jatinkrmalik, closes #553)
- Dictation: append a trailing space after each completed transcription so the next session does not glue onto the previous sentence. (#608 by @jatinkrmalik, fixes #605)
- Auto-pause competing apps and idle model keep-alive unload. (#592 by @jatinkrmalik, closes #445, #591)
- Vulkan: auto-select a discrete GPU and allow a manual device in Advanced settings. (#590 by @jatinkrmalik, closes #589)
- Wayland: use IBus when
ibus-waylandis running, including on compositors previously treated as unbridged. (#614 by @eiseleb47, closes #607) - CLI:
vocalinux --version. (#563 by @AnayGarodia, closes #555) - Website: marketing redesign and a languages page with honest per-engine badges. (#582, #616 by @jatinkrmalik)
Bug Fixes
- Settings: Custom Shortcut entry / Record / Set show again after the sidebar settings refactor. (#619 by @jatinkrmalik)
- Languages: English (India) (
en-in) maps to Whisper codeenfor whisper.cpp / Whisper / remote API. VOSK still usesen-in. (#617 by @jatinkrmalik) - Audio: stop Bluetooth mic probing from corrupting the heap. One PortAudio open per capture session, stop-before-close, and no stereo probe on mono-only devices. Fixes crashes on SCO/HFP headsets such as PipeWire “Bluetooth internal capture”. (#599 by @jatinkrmalik, fixes #567 reported by @HaleTom)
- IBus: keep engine teardown correct when parent
do_destroyfails. (#613 by @eiseleb47, fixes #606) - Settings UI: flatten info notices so helper text matches the rest of the dialog. (#615 by @jatinkrmalik)
- KDE Plasma Wayland: skip unbridged IBus when
ibus-waylandis not present so injection does not fail quietly. (#577 by @jatinkrmalik, fixes #574) - xdotool: keep input focus after injection. (#564 by @AnayGarodia, fixes #549)
- Uninstall: remove the IBus data dir, stop the app via PID file, and remove
~/.local/binlaunchers reliably. (#597 by @jatinkrmalik, #569 by @webenefits) - Installer: install both libgirepository 1.0 and 2.0 when the distro has them. (#583 by @jatinkrmalik, fixes #571)
- AUR: depend on virtual
python-pywhispercpp; move clipboard and wtype tools to optdepends. (#579 by @Asseel-Naji, #586 by @jatinkrmalik) - UI: first-run dialog response without
Gtk.Dialog.do_response. (#580 by @jatinkrmalik, fixes #566) - Vosk: add Italian and English-India rows to the medium/large model tables. (#551 by @AnayGarodia, fixes #550)
- Docs: fix ydotool service setup guidance. (#560 by @AnayGarodia, fixes #557)
Docs / maintenance
- Multi-distro tray icon FAQ. (#584)
- robots.txt no longer blocks indexable pages. (#610)
- Website CI lint / action warning cleanup. (#611)
- README badge layout tweaks. (#542, #544, #545)
- Next.js dependency bump. (#587)
Thanks
Thank you @eiseleb47 for the IBus teardown fix and for teaching Vocalinux about ibus-wayland (#613, #614).
Thank you @AnayGarodia for --version, the xdotool focus fix, the Vosk model table entries, and the ydotool docs correction (#563, #564, #551, #560).
Thank you @webenefits for making uninstall remove the ~/.local/bin wrappers (#569).
Thank you @Asseel-Naji for the AUR python-pywhispercpp dependency fix (#579).
Thank you @HaleTom for reporting the Bluetooth mic malloc crash (#567).
Thanks to everyone who filed bugs and feature requests on the way to 0.15 and to everyone who tested builds.
Install / Upgrade
Recommended (install.sh)
curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh && bash /tmp/vl.shAppImage
Download Vocalinux-0.15.0-x86_64.AppImage or Vocalinux-0.15.0-aarch64.AppImage from this release:
chmod +x Vocalinux-0.15.0-x86_64.AppImage
./Vocalinux-0.15.0-x86_64.AppImageHost text-injection tools (xdotool, wtype, or ydotool) are still required, same as a PyPI install. FUSE is needed to run the AppImage on most hosts.
Arch Linux (AUR)
yay -S vocalinuxPyPI
pip install -U vocalinuxFlatpak
Local build notes live under packaging/flatpak/. Flathub may still trail this tag.
Upgrade details: docs/UPDATE.md
Full changelog: v0.14.2...v0.15.0


