Skip to content

feat: streamline macOS install with DMG builds + cross-platform setup - #41

Open
shizzleclover wants to merge 1 commit into
TechyCSR:mainfrom
shizzleclover:feat/streamline-macos-install
Open

feat: streamline macOS install with DMG builds + cross-platform setup#41
shizzleclover wants to merge 1 commit into
TechyCSR:mainfrom
shizzleclover:feat/streamline-macos-install

Conversation

@shizzleclover

@shizzleclover shizzleclover commented Aug 4, 2026

Copy link
Copy Markdown

Streamline macOS Installation

Problem

macOS has no pre-built download — users must clone the repo, install Node.js, and run a Bash setup script. Windows users just download an .exe. The setup script also requires Bash + Perl, making it broken on Windows without Git Bash/WSL.

Solution

Ship macOS DMGs via GitHub Releases + replace the Bash setup script with a cross-platform Node.js version.

macOS install flow: Before → After

Before (5-10 min):
Install Node.js → git clone → chmod +x → ./setup.sh → wait for npm + Whisper → configure API key

After (30 seconds):
Download .dmg → Drag to Applications → xattr -rd com.apple.quarantine /Applications/OpenCluely.app → Open

Changes

  • Add macOS to CI build matrix — builds DMGs for both arm64 (Apple Silicon) and x64 (Intel)
  • Ad-hoc signingmac.identity: "-" for consistent builds
  • setup.js — Cross-platform Node.js replacement for setup.sh (works on Windows/macOS/Linux without Bash or Perl)
  • scripts/launch.js — Replaces Unix-only env -u ELECTRON_RUN_AS_NODE with a cross-platform launcher
  • setup.sh — Now a thin backward-compatible wrapper that calls node setup.js
  • README — Rewritten install docs with macOS DMG download + quarantine fix instructions

Tested

  • npm start launches app via new launch.js
  • node setup.js --no-run --skip-whisper dry-run completes
  • npm run build:mac` produces arm64 + x64 DMGs
  • DMG install → xattr fix → app opens successfully on macOS

- Add macOS (arm64 + x64) to CI build matrix for DMG distribution
- Add ad-hoc signing so DMGs work with xattr quarantine fix
- Replace bash-only setup.sh with cross-platform Node.js setup.js
- Replace Unix-only 'env -u' npm scripts with cross-platform launch.js
- Update README with macOS DMG download + one-time quarantine fix
- macOS install: download DMG → drag to Apps → one terminal command → done
@vercel

vercel Bot commented Aug 4, 2026

Copy link
Copy Markdown

@shizzleclover is attempting to deploy a commit to the csrsoftwares' projects Team on Vercel.

A member of the Team first needs to authorize it.

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