Vocalinux v0.18.6
A patch on the 0.18 stable line. It fixes a stuck Ctrl key after paste on Sway, a dock Quit that did nothing on GNOME, an empty overlay window on KDE, and a Settings layout readout that did not follow layout switches.
Highlights
| Fix | What changed |
|---|---|
| Ctrl no longer sticks after paste | The wtype paste chord used alongside ydotool now releases Ctrl and Shift on Sway and other wlroots compositors |
| Dock Quit closes Vocalinux | Quit from the GNOME Wayland dock or taskbar menu now quits the app |
| No empty overlay window | The Wayland fallback overlay is detected by GType and stays compact |
| gtk-layer-shell packaged | .deb/.rpm recommend it and the Flatpak bundles it, so the overlay stays out of the KDE/wlroots taskbar |
| Settings follows layout switches | The follow-layout readout and picker update while Settings is open |
Bug Fixes
Text injection
- Release Ctrl/Shift after the wtype paste chord (#1049 by @jatinkrmalik; fixes #1048 reported by @rafaeln)
Overlay and tray
- Quit Vocalinux when the dock closes the overlay window (#1036 by @jatinkrmalik; fixes #1028 reported by @lavoie005)
- Detect Wayland by GType so the fallback overlay stays compact (#1035 by @jatinkrmalik; refs #1030 reported by @Satlinker)
Settings
- Keep the follow-layout readout in step with layout switches (#1050 by @jatinkrmalik; fixes #1047 reported by @hopsayer)
- Show the selected microphone's full name in the device tooltip, and escape device names and test errors in the audio status label (#1037, #1043 by @jatinkrmalik; refs #1029 reported by @cmcclung-ANGENG)
Packaging
- Ship gtk-layer-shell with the .deb, .rpm and Flatpak (#1044 by @jatinkrmalik; refs #1030)
- Build the Snap from locked Python inputs and verify the installed artifact (#1041 by @sesav)
Improvements
- Optional Underdog Bark 3.0 models for the Parakeet engine, int8 and 4-bit, English only (#1031 by @AlexThunder1989)
Thanks
@AlexThunder1989 and @sesav for their PRs, and @rafaeln, @hopsayer, @Satlinker, @steffenmichalek, @jmcastagnetto, @lavoie005 and @cmcclung-ANGENG for their reports.
Install / Upgrade
Quick Install (Recommended)
curl -fsSL https://raw.githubusercontent.com/VocaHQ/vocalinux/v0.18.6/install.sh | bashFrom Source
git clone https://github.com/VocaHQ/vocalinux.git
cd vocalinux
./install.shFrom PyPI
# Install the Linux system packages first:
# GTK/AppIndicator, PortAudio, and xdotool/wtype are required.
python3 -m venv ~/.local/share/vocalinux-pypi/venv --system-site-packages
source ~/.local/share/vocalinux-pypi/venv/bin/activate
pip install vocalinux
vocalinuxPyPI installs the Python package only. For automatic system dependency,
desktop integration, and model setup, use the Quick Install command above.
See docs/INSTALL.md for distro-specific PyPI prerequisites.
Arch Linux (AUR)
yay -S vocalinuxAppImage (no install, no root)
Download the .AppImage matching your CPU (x86_64 or aarch64, the latter attached
shortly after this release is published) below:
chmod +x Vocalinux-0.18.6-x86_64.AppImage
./Vocalinux-0.18.6-x86_64.AppImageStill requires xdotool/wtype/ydotool on the host for text injection, same as the PyPI path.
Distro packages (.deb / .rpm)
Download the package matching your distro and CPU (amd64/x86_64, or arm64/aarch64
attached shortly after this release is published):
# Debian / Ubuntu
sudo apt install ./vocalinux_*_amd64.deb
# Fedora
sudo dnf install ./vocalinux-*.x86_64.rpmThin packages: Python, GTK, PyGObject and the AppIndicator typelib come from the
distro, and apt/dnf resolves them. Only pywhispercpp and pynput are
vendored (the first is packaged by neither distro, the second is missing on
Fedora). whisper.cpp runs on CPU in these packages; the Vulkan build is the
AppImage. A PPA and a COPR are not published yet.
On Wayland the default Right Alt hotkey uses evdev: sudo usermod -aG input $USER,
then log out and back in (the input group can read every keyboard and pointer
device; X11 needs nothing).
Flatpak
Install and auto-update via the self-hosted VocaHQ remote (flatpak update
picks up each release):
flatpak install https://vocahq.github.io/vocalinux-flatpak/com.vocalinux.Vocalinux.flatpakrefThe .flatpakref adds the vocahq remote and resolves org.gnome.Platform//50
through Flathub itself — no separate Flathub setup needed. To add the
pieces by hand instead:
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak remote-add --if-not-exists vocahq https://vocahq.github.io/vocalinux-flatpak/vocahq.flatpakrepo
flatpak install vocahq com.vocalinux.VocalinuxOr download the .flatpak matching your CPU (x86_64 or aarch64, attached
shortly after this release is published) — a bundle with no auto-update:
# once: Flathub remote + GNOME runtime (the app itself is not on Flathub)
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.gnome.Platform//50
flatpak install --user ./Vocalinux-0.18.6-x86_64.flatpak
flatpak run com.vocalinux.VocalinuxWhisper.cpp engine only. Hotkeys need device access as documented in
packaging/flatpak/README.md. Not on Flathub (flathub/flathub#9368).
Snap
Tagged releases also attach vocalinux_0.18.6_amd64.snap
and try the Snap Store (edge and candidate). stable is promoted
from candidate after QA by the snap-promote.yml dispatch workflow.
Wayland typing runs through the RemoteDesktop portal; the snap ships no uinput plug.
The GitHub .snap is also the sideload while a Store revision lags:
sudo snap install --dangerous ./vocalinux_0.18.6_amd64.snap--dangerous is required because this file is not a Store revision. It will not
refresh from the Store. amd64 only.
Verifying what you downloaded
SHA256SUMS covers every file here and is attached once the aarch64 AppImage,
both Flatpak builds, and the snap finish, a few minutes after this release appears.
The wheel and the sdist below are the same bytes published to PyPI.
sha256sum -c --ignore-missing SHA256SUMSEach artifact also carries GitHub build provenance, which ties it to this workflow run:
gh attestation verify Vocalinux-0.18.6-x86_64.AppImage \
--repo VocaHQ/vocalinuxSee CHANGELOG for detailed changes.
What's Changed
- docs(web): 16 new SEO pages for v0.17–v0.18 features and more distros by @jatinkrmalik in #1038
- fix(web): SEO fixes from Search Console and Lighthouse audit by @jatinkrmalik in #1039
- feat(web): Linux-flavoured 404 page that sends visitors back by @jatinkrmalik in #1040
- chore(deps): bump the github-actions group with 4 updates by @dependabot[bot] in #1042
- fix(ui): show the selected microphone's full name in the device tooltip by @jatinkrmalik in #1037
- feat(parakeet): add optional Underdog Bark 3.0 models, int8 and 4-bit by @AlexThunder1989 in #1031
- fix(snap): build from locked python inputs and verify artifacts by @sesav in #1041
- fix(ui): escape device names and test errors in the audio status label by @jatinkrmalik in #1043
- fix(overlay): quit Vocalinux when the dock closes the overlay window (#1028) by @jatinkrmalik in #1036
- fix(overlay): detect Wayland by GType so the fallback overlay stays compact (#1030) by @jatinkrmalik in #1035
- fix(packaging): ship gtk-layer-shell with the .deb, .rpm and Flatpak by @jatinkrmalik in #1044
- fix(injection): release Ctrl/Shift after the wtype paste chord by @jatinkrmalik in #1049
- fix(settings): keep the follow-layout readout in step with layout switches by @jatinkrmalik in #1050
- chore(release): v0.18.6 by @jatinkrmalik in #1054
Full Changelog: v0.18.5...v0.18.6