Skip to content

fix: use macOS DMG source with JS stubs, update to v1.1.1200#87

Open
Programmerino wants to merge 1 commit intok3d3:mainfrom
Programmerino:fix-linux-support
Open

fix: use macOS DMG source with JS stubs, update to v1.1.1200#87
Programmerino wants to merge 1 commit intok3d3:mainfrom
Programmerino:fix-linux-support

Conversation

@Programmerino
Copy link

Summary

This PR fixes Claude Desktop on Linux by switching to a simpler, working approach:

Changes

  • Switch from Windows installer to macOS DMG - More reliable extraction, better source
  • Replace Rust native bindings with JavaScript stubs - No compilation needed, simpler maintenance
  • Update to Claude Desktop v1.1.1200 (latest)
  • Add Linux platform detection for Claude Code
  • Fix tray icon theme detection for dark/light modes

Why?

The previous Rust-based patchy-cnb approach had issues:

  1. Required Rust compilation during build
  2. The tray menu patches injected await outside async contexts, causing SyntaxError: Unexpected token 'new' on startup

The JS stub approach matches what claude-desktop-debian uses and is proven to work.

Testing

Tested on NixOS - app starts, logs in, connects to MCP servers, and downloads Claude Code successfully.

Stats

  • -1752 lines (removed Rust crate)
  • +377 lines (simplified nix + JS stubs)

Major changes:
- Switch from Windows installer to macOS DMG (more reliable extraction)
- Replace Rust native bindings (patchy-cnb) with simple JavaScript stubs
- Update to Claude Desktop v1.1.1200
- Add Linux platform detection for Claude Code
- Fix tray icon theme detection for dark/light modes
- Simplify build process (no Rust compilation needed)

The previous Rust-based approach required compilation and had issues with
the tray menu patches injecting 'await' outside async contexts, causing
SyntaxError on startup. The JS stub approach matches what claude-desktop-debian
uses and is simpler to maintain.
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