Skip to content

Add voicebox#260314

Open
jamiepine wants to merge 2 commits intoHomebrew:mainfrom
jamiepine:add-voicebox
Open

Add voicebox#260314
jamiepine wants to merge 2 commits intoHomebrew:mainfrom
jamiepine:add-voicebox

Conversation

@jamiepine
Copy link
Copy Markdown

@jamiepine jamiepine commented Apr 21, 2026

Voicebox (https://voicebox.sh) is an open-source local text-to-speech desktop app with voice cloning and seven on-device TTS engines (Chatterbox, Qwen3-TTS, Kokoro, HumeAI TADA, Qwen CustomVoice, LuxTTS, Chatterbox Multilingual). Everything runs locally, no cloud. Tauri-based, signed and notarized macOS binary.

Repo: https://github.com/jamiepine/voicebox. 21k+ stars, 400k+ release downloads. Users asked for a brew install path in jamiepine/voicebox#516.


After making any changes to a cask, existing or new, verify:

  • The submission is for a stable version or documented exception. (v0.4.3, tagged semver release)
  • brew audit --cask --online voicebox is error-free.
  • brew style --fix voicebox reports no offenses.

Additionally, if adding a new cask:

  • Named the cask according to the token reference.
  • Checked the cask was not already refused.
  • brew audit --cask --new voicebox worked successfully.
  • HOMEBREW_NO_INSTALL_FROM_API=1 brew install --cask voicebox worked successfully.
  • brew uninstall --cask voicebox worked successfully.

  • AI was used to generate or assist with generating this PR.

Claude wrote the initial cask file. Manual verification performed:

  • SHA-256 hashes computed locally via shasum -a 256 on both DMGs downloaded fresh from the v0.4.3 release.
  • Notarization confirmed twice: once by mounting each DMG and running spctl -a -t exec -vv Voicebox.app on the contained .app, and once on the brew-installed /Applications/Voicebox.app. Both return accepted, source=Notarized Developer ID.
  • Install / uninstall verified end-to-end locally. brew install --cask placed the app at /Applications/Voicebox.app, brew list --cask listed it, and brew uninstall --cask voicebox cleanly removed it.
  • zap paths verified against a real Voicebox install. Running find ~/Library -iname '*voicebox*' surfaced that the app writes to both sh.voicebox.app (primary bundle id) and voicebox (WKWebView + Tauri productName fallback) variants under Application Support, Caches, Preferences, and WebKit. Both variants are captured in the zap stanza.

@bevanjkay
Copy link
Copy Markdown
Member

The notarization error may be a CI-related issue, because it is only occurring macos-15. Local checks seem ok to me.
There's no way for us to add macos-15 specifically to the skiplist at the moment, so we may need to make a change in Homebrew/brew to allow for it.

Comment thread Casks/v/voicebox.rb Outdated
@jamiepine
Copy link
Copy Markdown
Author

jamiepine commented Apr 21, 2026

The notarization error may be a CI-related issue, because it is only occurring macos-15. Local checks seem ok to me. There's no way for us to add macos-15 specifically to the skiplist at the moment, so we may need to make a change in Homebrew/brew to allow for it.

CI is an issue on my end actually, exposed a bug users were reporting that I couldn't replicate until running through your CI, our .app bundle was being notarized but not the DMG. I've just published a 0.4.3 update that fixes this, updating the PR now and addressing that livecheck feedback.

@jamiepine
Copy link
Copy Markdown
Author

Huh, macOS 15 is still failing. However, 0.4.3 is locally clean: xcrun stapler validate passes on both the DMG and the inner .app, and spctl -a -vvv -t install returns accepted, source=Notarized Developer ID.

Not sure whats up with the CI, let me know if there's anything else I can do.

@jamiepine jamiepine marked this pull request as ready for review April 21, 2026 08:19
@gdibble
Copy link
Copy Markdown

gdibble commented Apr 21, 2026

Nice work here. Thanks for showing how simple this is.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants