Skip to content

fix(linux): prevent AppImage env from breaking curl-based agent installers and stop false UI success - #229

Draft
cursor[bot] wants to merge 2 commits into
mainfrom
cursor/ato-416-linear-bug-handling-f638
Draft

fix(linux): prevent AppImage env from breaking curl-based agent installers and stop false UI success#229
cursor[bot] wants to merge 2 commits into
mainfrom
cursor/ato-416-linear-bug-handling-f638

Conversation

@cursor

@cursor cursor Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Describe Your Changes

  • Sanitize AppImage runtime environment before spawning host processes.
    apply_login_path now calls sanitize_appimage_env, which removes the
    AppImage-injected LD_LIBRARY_PATH, APPDIR, and other runtime variables
    from spawned commands. This stops system curl/npm/node/MCP servers
    from loading the bundled (older) OpenSSL and breaking with symbol errors.
    The same list is also applied to MCP stdio server spawns in
    src/core/mcp/helpers.rs.

  • Use bash with pipefail for Unix curl-based agent installers.
    goose, hermes, poolside, and zed Unix install commands now run as
    bash -c 'set -o pipefail; curl -fsSL ... | ...' instead of sh -c '...'.
    A failed curl now aborts the pipeline with a non-zero exit code instead of
    being masked by the trailing shell exiting cleanly on an empty script.

  • Return the post-install detection result in the Launch UI.
    installAgent now returns await detect(agent) and only shows the success
    toast when the binary is actually found. This prevents the UI from
    reporting a successful install when the installer failed silently.

  • Add regression test for sanitize_appimage_env ensuring it removes all
    AppImage runtime variables from a spawned command.

Fixes Issues

Self Checklist

  • Added relevant comments, esp in complex areas
  • Updated docs (for bug fixes / features)
  • Created issues for follow-up changes or refactoring needed

Note: this is a targeted bug fix that does not change user-facing docs.

Open in Web View Automation 

cursoragent and others added 2 commits August 7, 2026 16:51
…allers

- Strip AppImage runtime variables (LD_LIBRARY_PATH, etc.) from spawned
  host processes so curl/npm/node/MCP servers load system libraries.
- Run goose/hermes/poolside/zed Unix installers through bash with pipefail
  so a failed curl aborts the pipeline instead of returning exit 0.
- Add regression test for sanitize_appimage_env.

Fixes ATO-416

Co-authored-by: Mike <Vect0rM@users.noreply.github.com>
Return the result of detect(agent) instead of unconditionally returning
true, and only show the success toast when the binary is actually found.
Prevents the UI from reporting a successful install when the installer
exited without placing the binary on PATH.

Fixes ATO-416

Co-authored-by: Mike <Vect0rM@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