Skip to content

Windows: 0.5.8 auto-update drops the PATH entry and registry uninstall key — buzz CLI stops resolving #5377

Description

@xcaruz

Summary

The 0.5.8 Windows auto-update left Buzz installed but unregistered: after the updater ran, the install directory (%LOCALAPPDATA%\Buzz) was no longer on the user PATH, and the app has no uninstall entry in the registry (nothing under any ...\CurrentVersion\Uninstall hive, so it also disappears from "Add or remove programs"). The binaries themselves are present and work when invoked by full path — but buzz stops resolving in every shell, which looks to the user like the CLI vanished.

Updates 0.5.4 → 0.5.5 → 0.5.7 on the same machine did not have this problem; buzz resolved fine until the 0.5.8 update.

Environment

  • Windows 11 Pro (build 10.0.26200), x64
  • Buzz Desktop 0.5.8, installed per-user in %LOCALAPPDATA%\Buzz
  • Update chain on this machine (from updater artifacts in %TEMP%): 0.5.4 (Aug 4) → 0.5.5 (Aug 6) → 0.5.7 (Aug 8) → 0.5.8 (Aug 9)
  • The 0.5.8 update ran unattended/headless (no interactive session in front of it)

Timeline (from file timestamps, Aug 9)

Time (local) Event
05:55:01 Buzz-0.5.8-installer.exe dropped in %TEMP%\Buzz-0.5.8-updater-* and run
05:55:17 Fresh uninstall.exe written to %LOCALAPPDATA%\Buzz
after New binaries present (buzz.exe, buzz-agent.exe, buzz-acp.exe, buzz-dev-mcp.exe, git-credential-nostr.exe), but no PATH entry and no registry uninstall key

Observed state after the update

  • Get-Command buzz → not found (checked user PATH, machine PATH, and live session PATH — the Buzz dir is in none of them)
  • No DisplayName like '*buzz*' entry under HKCU:\...\Uninstall, HKLM:\...\Uninstall, or HKLM:\...\WOW6432Node\...\Uninstall
  • & "$env:LOCALAPPDATA\Buzz\buzz.exe" --help works normally, so the payload itself is fine

Expected

The updater should leave the install registered: PATH entry re-added and uninstall key re-created, as previous versions did.

Hypothesis

This has the signature of the classic uninstall-then-reinstall update flow failing halfway: the old version's uninstaller removed the PATH entry and registry key, the new install wrote the files and uninstall.exe, but the re-registration steps never ran (or failed silently — no installer log was left behind). Possibly related to running headless, or to Defender interference (cf. the 0.5.4 release-note hardening for Defender blocks, #4382).

Workaround

Manually re-add the install dir to the user PATH:

[Environment]::SetEnvironmentVariable('Path',
  [Environment]::GetEnvironmentVariable('Path','User') + ';' + "$env:LOCALAPPDATA\Buzz", 'User')

This restores buzz in new shells, but the missing registry uninstall entry remains.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions