feat(macos): native install path via Homebrew
install-macos.sh mirrors install.sh's split: every portable step - git pull, venv, pip with the right overlay, npm build - stays in bin/sync.py, shared with Linux and Windows. The script only does what sync.py cannot do for itself on a bare Mac, which is install the Homebrew packages needed before a Python exists to run sync.py with. Two stages had to learn about darwin. ensure_exec_bits() keyed off `os.name == "nt"`, which is false on macOS, so it ran the Linux path; and requirements() had no darwin branch. linux_stage() now no-ops there, which is what makes skipping the Ollama fetch correct rather than an omission: bin/fetch-ollama.sh only ships a Linux x86-64 binary, and _ollama_bin() in synapse/ollama_manager.py already prefers the bundled copy and falls back to whatever `ollama` is on PATH. On macOS that is the brewed one, with Metal acceleration and no flags needed. The XFCE desktop branding is Linux-only and was already gated off macOS the same way, so there is nothing to install for it here. install-macos.sh joins the shell-parse list in bin/check.sh. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
5f67d19e80
commit
93d78c0ad3
+1
-1
@@ -40,7 +40,7 @@ else
|
||||
fi
|
||||
|
||||
echo "== shell parse =="
|
||||
for f in scripts/install-termux.sh launch_nexus.sh management/nexus-cli.sh; do
|
||||
for f in scripts/install-termux.sh install-macos.sh launch_nexus.sh management/nexus-cli.sh; do
|
||||
[ -f "$f" ] && { bash -n "$f" || fail=1; }
|
||||
done
|
||||
|
||||
|
||||
Reference in New Issue
Block a user