From d1a80e6ead3d02026a4743e899b1eef41183b23d Mon Sep 17 00:00:00 2001 From: Xavier Karma Date: Fri, 6 Nov 2026 21:18:15 +0000 Subject: [PATCH] chore(release): prepare v0.19.1 (#55) --- CHANGELOG.md | 8 +++++++- README.md | 4 ++-- docs/RELEASE_PROCESS.md | 5 +++-- docs/UPDATE.md | 11 ++++++++++- packaging/void/README.md | 6 +++--- packaging/void/srcpkgs/voculinux/template | 4 ++-- src/vocalinux/version.py | 4 ++-- web/package-lock.json | 4 ++-- web/package.json | 2 +- web/src/app/page.tsx | 2 +- 10 files changed, 33 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index adb684a..f6c931c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,13 @@ Release history for Vocalinux. ## Current stable -**[v0.19.0](https://git.bongbetic.com/xavierk/voculinux/releases/tag/v0.19.0)** (2026-11-07) +**[v0.19.1](https://git.bongbetic.com/xavierk/voculinux/releases/tag/v0.19.1)** (2026-11-07) + +A patch on 0.19.0. A leftover upstream launcher (`vocalinux.desktop`, `vocalinux`, `vocalinux-gui`) is now reported at startup, because it hid the Voculinux entry in the launcher (#52, #54). The release pipeline docs now say `bash` for `publish-release.sh`. + +### v0.19.0 (2026-11-07) + +[Release page](https://git.bongbetic.com/xavierk/voculinux/releases/tag/v0.19.0) The first Voculinux release: a hard fork of 0.18.5 for Void Linux (glibc, x86_64), published as a signed xbps repository from the fork's Gitea host. Changes since v0.18.5, from the commit subjects and PR titles on `main`: diff --git a/README.md b/README.md index d7a33cc..74bdb31 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ [![License: AGPL-3.0](https://img.shields.io/badge/License-AGPL--3.0-blue.svg)](https://www.gnu.org/licenses/agpl-3.0) [![Privacy: on-device](https://img.shields.io/badge/privacy-on--device-success)](#privacy-and-security) [![X11 & Wayland](https://img.shields.io/badge/display-X11%20%7C%20Wayland-lightgrey)](#features) -[![Release](https://img.shields.io/badge/release-v0.19.0-478061)](https://git.bongbetic.com/xavierk/voculinux/releases/tag/v0.19.0) +[![Release](https://img.shields.io/badge/release-v0.19.1-478061)](https://git.bongbetic.com/xavierk/voculinux/releases/tag/v0.19.1) [Website](https://voculinux.com) · [Install](#install) · [Docs](#documentation) · [Releases](https://git.bongbetic.com/xavierk/voculinux/releases) · [Issues](https://git.bongbetic.com/xavierk/voculinux/issues) @@ -21,7 +21,7 @@ Voculinux turns speech into typed text in whatever app has focus. It is a free, No account is required. Models download once. After that, speech-to-text stays on your machine. -**Current release:** [v0.19.0](https://git.bongbetic.com/xavierk/voculinux/releases/tag/v0.19.0). The first Voculinux release: a Void Linux package from the [signed xbps repository](#void-linux-signed-xbps-repo), niri and Dank Material Shell support, a model default chosen by free GPU memory, and a fix that keeps system-audio capture from ever opening the microphone. Details: [docs/UPDATE.md](docs/UPDATE.md). +**Current release:** [v0.19.1](https://git.bongbetic.com/xavierk/voculinux/releases/tag/v0.19.1), a patch on v0.19.0 that warns when a leftover launcher from the upstream project shadows Voculinux. v0.19.0 was the first Voculinux release: a Void Linux package from the [signed xbps repository](#void-linux-signed-xbps-repo), niri and Dank Material Shell support, a model default chosen by free GPU memory, and a fix that keeps system-audio capture from ever opening the microphone. Details: [docs/UPDATE.md](docs/UPDATE.md). ## Features diff --git a/docs/RELEASE_PROCESS.md b/docs/RELEASE_PROCESS.md index 0f6c00b..650b9aa 100644 --- a/docs/RELEASE_PROCESS.md +++ b/docs/RELEASE_PROCESS.md @@ -574,10 +574,10 @@ from a clean checkout of the tag, in this order. Replace `vX.Y.Z` with the relea that is not the committed one, both before any container starts. It writes `sdist/`, `xbps/`, `SDIST_SHA256` and `BUILT_FROM` (the tag and the commit it was built from), and prints `checksum=`. Remove the key file afterwards. -5. **Dry-run the publish:** `packaging/void/publish-release.sh vX.Y.Z --out-dir /path/to/out --dry-run`. +5. **Dry-run the publish:** `bash packaging/void/publish-release.sh vX.Y.Z --out-dir /path/to/out --dry-run`. It runs every check (the tag is on `origin` at the built commit, the digest, the key) and prints the API calls it would make. It sends no request and reads no token. -6. **Publish:** `packaging/void/publish-release.sh vX.Y.Z --out-dir /path/to/out`. It attaches the +6. **Publish:** `bash packaging/void/publish-release.sh vX.Y.Z --out-dir /path/to/out`. It attaches the sdist, packages, signatures, `FINGERPRINT` and the client `.plist` to the tag's release, then replaces the assets of the rolling `latest` release that the client registration URL serves. The repodata is uploaded last. The token comes from `GITEA_TOKEN`, or from the `tea` login @@ -642,6 +642,7 @@ git push origin v0.5.1-beta | Version | Date | Phase | Notes | |---------|------|-------|-------| +| 0.19.1 | 2026-11-07 | Stable | Patch: a leftover upstream Vocalinux launcher is reported at startup (#52) | | 0.19.0 | 2026-11-07 | Stable | First Voculinux release: a hard fork for Void Linux (glibc, x86_64) with a signed xbps repository, niri and Dank Material Shell support, a per-backend memory-aware model default, and PipeWire system audio that never falls back to the microphone | | 0.2.0-alpha | 2024 | Alpha | Initial alpha | | 0.3.0-alpha | 2024 | Alpha | - | diff --git a/docs/UPDATE.md b/docs/UPDATE.md index ec98f2f..5eb5047 100644 --- a/docs/UPDATE.md +++ b/docs/UPDATE.md @@ -25,7 +25,7 @@ installer as below. ```bash cd voculinux git fetch origin -git checkout v0.19.0 +git checkout v0.19.1 ./install.sh ``` @@ -90,6 +90,15 @@ Missing system packages: see [INSTALL.md](INSTALL.md) or [DISTRO_COMPATIBILITY.m --- +## What's New in v0.19.1 + +0.19.1 is a patch on 0.19.0 for Void Linux. If a launcher from the upstream project +is still installed, Voculinux now says so +on startup instead of leaving a stale upstream entry in the launcher. It does not remove +the files; the startup message names them. Update with `sudo xbps-install -Su`. + +--- + ## What's New in v0.19.0 0.19.0 is the first Voculinux release: a hard fork of the 0.18.5 line for Void Linux diff --git a/packaging/void/README.md b/packaging/void/README.md index 9cb8567..a6e5e60 100644 --- a/packaging/void/README.md +++ b/packaging/void/README.md @@ -198,7 +198,7 @@ just void-smoke # the gate: build, sign with a throwaway k just void-release v0.19.0 # build the release set, with XBPS_SIGNING_KEY_FILE set packaging/void/build-release.sh names v0.19.0-beta # offline: the names a tag maps to packaging/void/build-release.sh check-tag v0.19.0-beta # offline: the tag gate -packaging/void/publish-release.sh v0.19.0 --out-dir DIR --dry-run # every check, the planned calls, no request +bash packaging/void/publish-release.sh v0.19.0 --out-dir DIR --dry-run # every check, the planned calls, no request ``` Podman only, never Docker. The base image digest and the void-packages commit @@ -315,11 +315,11 @@ cannot build this release. The sequence is: then, in that worktree, `packaging/void/build-release.sh release vX.Y.Z --key-file /dev/shm/xbps-sign-key.pem --out-dir /path/to/out`. Remove the key file when the run ends. -4. **Dry-run the publish:** `packaging/void/publish-release.sh vX.Y.Z --out-dir /path/to/out --dry-run`. +4. **Dry-run the publish:** `bash packaging/void/publish-release.sh vX.Y.Z --out-dir /path/to/out --dry-run`. It checks that origin's `vX.Y.Z` peels to the commit in `BUILT_FROM`, that the sdist matches `SDIST_SHA256`, and that the client key is the committed one, then prints the calls it would make. It sends no request and reads no token. -5. **Publish:** `packaging/void/publish-release.sh vX.Y.Z --out-dir /path/to/out`. The tag's +5. **Publish:** `bash packaging/void/publish-release.sh vX.Y.Z --out-dir /path/to/out`. The tag's release gets the sdist, packages, signatures, `FINGERPRINT` and the client `.plist`, and the rolling `latest` release that the client registration URL serves is replaced, with the repodata last. The token comes from `GITEA_TOKEN`, or from the `tea` login for diff --git a/packaging/void/srcpkgs/voculinux/template b/packaging/void/srcpkgs/voculinux/template index ae556c4..c9a19c1 100644 --- a/packaging/void/srcpkgs/voculinux/template +++ b/packaging/void/srcpkgs/voculinux/template @@ -1,11 +1,11 @@ # Template file for 'voculinux' pkgname=voculinux -version=0.19.0 +version=0.19.1 revision=1 # The release tag this template names: v + __version__, with the pre-release # hyphen kept (the tag is v0.19.0-beta while version is 0.19.0beta). The release # gate (packaging/void/build-release.sh check-tag) refuses any mismatch. -_tag=v0.19.0 +_tag=v0.19.1 # The release sdist ships no setup.py (setuptools pyproject-only), so the # build goes through the PEP 517 wheel (cf. Solaar, PhotoCollage). build_style=python3-pep517 diff --git a/src/vocalinux/version.py b/src/vocalinux/version.py index af210e7..965bbf9 100644 --- a/src/vocalinux/version.py +++ b/src/vocalinux/version.py @@ -2,8 +2,8 @@ Version information for Voculinux. """ -__version__ = "0.19.0" -__version_info__ = (0, 19, 0) +__version__ = "0.19.1" +__version_info__ = (0, 19, 1) __author__ = "Jatin K Malik" __email__ = "jatinkrmalik@gmail.com" __license__ = "AGPL-3.0-only" diff --git a/web/package-lock.json b/web/package-lock.json index 108d78c..47e1b74 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -1,12 +1,12 @@ { "name": "voculinux-website", - "version": "0.19.0", + "version": "0.19.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "voculinux-website", - "version": "0.19.0", + "version": "0.19.1", "dependencies": { "@types/node": "^20.14.10", "@types/react": "^18.3.3", diff --git a/web/package.json b/web/package.json index fa3d186..a5f0872 100644 --- a/web/package.json +++ b/web/package.json @@ -1,6 +1,6 @@ { "name": "voculinux-website", - "version": "0.19.0", + "version": "0.19.1", "private": true, "type": "module", "scripts": { diff --git a/web/src/app/page.tsx b/web/src/app/page.tsx index 16ed721..71078bd 100644 --- a/web/src/app/page.tsx +++ b/web/src/app/page.tsx @@ -29,7 +29,7 @@ const homeJsonLd = [ }, description: "Offline voice dictation and speech-to-text for Linux with whisper.cpp, Faster Whisper, Whisper, VOSK, and Parakeet.", - softwareVersion: "0.19.0", + softwareVersion: "0.19.1", author: { "@type": "Person", name: "Xavier Karma",