Skip to content

feat(voice): Linux download & OS-aware buttons - #79

Merged
wavekat-eason merged 7 commits into
mainfrom
feat/voice-linux-download
Jun 3, 2026
Merged

feat(voice): Linux download & OS-aware buttons#79
wavekat-eason merged 7 commits into
mainfrom
feat/voice-linux-download

Conversation

@wavekat-eason

Copy link
Copy Markdown
Contributor

Summary

  • Add Linux .deb download support to the Voice download page
  • Detect the visitor's OS and show a single, OS-appropriate download button
  • Match download caption/specs to the detected platform
  • Show per-platform specs in the "other platforms" menu
  • Remove the "Approved by Apple" reassurance line

Test plan

  • Visit /voice/download on macOS — Mac button + macOS specs shown
  • Visit on Linux — Linux .deb button + Linux specs shown
  • "Other platforms" menu lists each platform with its specs

🤖 Generated with Claude Code

wavekat-eason and others added 7 commits June 3, 2026 20:13
Surface the Linux .deb installer alongside the macOS build on the
voice landing and download pages. Read the version/size live from
latest-linux.yml at build time, mirroring the existing mac wiring.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace the side-by-side Mac/Linux buttons with one primary button for
the visitor's platform, with the other behind an "other platforms"
disclosure. The site is statically built, so detection is progressive
enhancement: SSR defaults to Mac, an inline script promotes Linux on a
Linux user-agent, and the native <details> keeps every build reachable
with JS off. Extracted into a reusable VoiceDownload component.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The active/hidden state stacked `inline-flex` and `hidden` on the same
element; `inline-flex` won the `display` race so every button (and both
dropdown items) stayed visible. Toggle between the two display classes
instead so an element is only ever one or the other.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The spec lines under the buttons were static (Mac first), so a Linux
visitor saw the Linux button on top but the Mac caption first. Tag each
line and have the detection script move the matching-OS line first, and
make both lines symmetric (version + trailer) instead of mismatched.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The smart button shows a single platform, but the caption still listed
both OS lines — redundant (each repeated version + beta/size) and
mismatched for the visitor. Show only the active platform's caption and
swap it with the OS, mirroring the button.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The alternate download in the dropdown only said "Download for Linux"
with no hint of which distros/format/size. Add an always-visible
sub-label (arch + size) under each item instead of a tooltip, so the
info reaches touch and keyboard users too.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

@wavekat-eason
wavekat-eason merged commit 590219d into main Jun 3, 2026
2 checks passed
@wavekat-eason
wavekat-eason deleted the feat/voice-linux-download branch June 3, 2026 08:57
wavekat-eason pushed a commit that referenced this pull request Jun 4, 2026
🤖 I have created a release *beep* *boop*
---


##
[0.0.27](wavekat-com-v0.0.26...wavekat-com-v0.0.27)
(2026-06-04)


### Features

* **seo:** structured data + social metadata (+ favicon & download
dropdown fixes)
([#81](#81))
([d8fb369](d8fb369))
* **voice:** add alternatives comparison pages
([#82](#82))
([6d01545](6d01545))
* **voice:** Linux download & OS-aware buttons
([#79](#79))
([590219d](590219d))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant