Skip to content

fix(dev): add .exe to Windows sidecar stub paths - #3540

Open
sumit-m wants to merge 1 commit into
block:mainfrom
sumit-m:windows-sidecar-stubs
Open

fix(dev): add .exe to Windows sidecar stub paths#3540
sumit-m wants to merge 1 commit into
block:mainfrom
sumit-m:windows-sidecar-stubs

Conversation

@sumit-m

@sumit-m sumit-m commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Appends .exe to the sidecar stub filenames on Windows so _ensure-sidecar-stubs produces the names Tauri's externalBin validation expects.

On Windows the host triple is x86_64-pc-windows-msvc and Tauri looks for binaries/<bin>-x86_64-pc-windows-msvc.exe. The recipe creates the stubs without the suffix, so Tauri rejects them and every recipe depending on _ensure-sidecar-stubsdev, desktop, desktop-standalone, desktop-staging — fails before the app starts.

Three lines, and a no-op on every other platform: EXT stays empty unless the triple contains windows.

Related issue

Fixes #2492.

Two open PRs touch the same recipe, and I have not seen a maintainer signal which should land first:

Testing

Verified on Windows 11 (x86_64-pc-windows-msvc, Git Bash):

$ rm -rf desktop/src-tauri/binaries && just _ensure-sidecar-stubs
$ ls desktop/src-tauri/binaries/
buzz-acp-x86_64-pc-windows-msvc.exe
buzz-agent-x86_64-pc-windows-msvc.exe
buzz-dev-mcp-x86_64-pc-windows-msvc.exe
buzz-x86_64-pc-windows-msvc.exe
git-credential-nostr-x86_64-pc-windows-msvc.exe

Before this change the same command produced extensionless files and just dev aborted with binaries\buzz-acp-x86_64-pc-windows-msvc.exe doesn't exist.

Not verified on macOS or Linux — I have no such hardware. The guard is [[ "$TARGET" == *windows* ]], so EXT is empty and the emitted paths are byte-identical to today's on any non-Windows triple.

@sumit-m
sumit-m requested a review from a team as a code owner July 29, 2026 14:15
@sumit-m
sumit-m force-pushed the windows-sidecar-stubs branch from edb1dc4 to 3e7e7ee Compare July 29, 2026 14:52

@Chessing234 Chessing234 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small and correct — Tauri's Windows externalBin lookup really does want the .exe suffix on the host triple, and leaving EXT empty elsewhere keeps this a no-op on unix. One thing worth a follow-up (not blocking): _ensure-sidecar-stubs still touches empty stubs, so a first just desktop on a clean Windows clone will get past validation and then fail later when the real binaries aren't built. Out of scope for this PR, but related to the same Windows stub path.

@Chessing234 Chessing234 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving the sidecar stub fix — minimal, correct, and unblocks every Windows recipe.

@Chessing234 Chessing234 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving the Windows sidecar stub extension fix — minimal and unblocks desktop recipes.

Tauri's externalBin validation expects binaries/<bin>-<triple>.exe on
Windows, so every recipe depending on _ensure-sidecar-stubs fails there.

Fixes block#2492

Signed-off-by: sumit-m <33051892+sumit-m@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.

Windows: _ensure-sidecar-stubs Justfile recipe omits the .exe suffix Tauri requires for externalBin

2 participants