diff --git a/.github/workflows/release-mac.yml b/.github/workflows/release-mac.yml index aad2270a..b1fa841b 100644 --- a/.github/workflows/release-mac.yml +++ b/.github/workflows/release-mac.yml @@ -129,11 +129,44 @@ jobs: its embedding provider is doing, and open the dashboard. Everything runs on your machine. - ### Install + ### Install — fastest, no dialogs - 1. Download the `.dmg` below and open it. - 2. Drag **cix.app** onto **Applications**. - 3. Open it from Applications. + macOS blocks this download twice: once for the disk image, once for + the app inside it. It only inspects files carrying a "downloaded + from the internet" mark, and the app inherits that mark from the + image at the moment you copy it out — so clearing it on the image + first means neither block ever happens: + + ```bash + xattr -d com.apple.quarantine ~/Downloads/cix-*-arm64.dmg + ``` + + Then open the image and drag **cix.app** onto **Applications**. + + Already dragged the app across and hit the block? Clear it in place + instead: + + ```bash + xattr -dr com.apple.quarantine /Applications/cix.app + ``` + + `No such xattr` in either case just means it was already clear. + + ### Or click through it + + 1. **Open the `.dmg`.** macOS says it "could not verify" the file. + Choose **Done** — never *Move to Bin*, which deletes the download. + 2. **System Settings → Privacy & Security**, scroll to **Security**. + A line names the blocked file, with **Open Anyway** beside it. + Click it and confirm with Touch ID or your password. + That button appears only *after* step 1 — going there first shows + nothing. + 3. **The image opens.** Drag **cix.app** onto **Applications**. + 4. **Open cix from Applications.** Blocked again, for the app this + time — repeat step 2 for **cix.app**. + + On macOS 15 and later the old right-click → Open shortcut works for + neither block. You do this once per installed version. On first launch the app downloads the server itself — `cix-server`, the `cix` CLI and a Metal-accelerated `llama-server`, about 40 MB — @@ -141,21 +174,12 @@ jobs: That is the same build the Docker images are cut from, and it updates on its own schedule: a new server does not need a new app. - ### macOS will block it twice — this is expected + ### Why it is blocked at all cix is open source and is **not** signed with a paid Apple Developer - certificate, so it is not notarized. macOS refuses both the disk - image and the app inside it with "Apple could not verify…". Nothing - is wrong with the download — choose **Done**, never *Move to Bin*. - - Clear each one the same way: **System Settings → Privacy & Security**, - scroll to **Security**, then **Open Anyway** next to the message. - Once for the `.dmg` when you open it, and once for **cix.app** the - first time you launch it — the app inherits the quarantine flag from - the image, so clearing the first does not clear the second. - - On macOS 15 and later the old right-click → Open shortcut no longer - works for either. You do this once per installed version. + certificate, so macOS cannot verify it and treats the download as + unknown. Nothing is wrong with the file. Integrity is covered by the + checksum instead. ### Verify the download diff --git a/site/src/docs/docs.jsx b/site/src/docs/docs.jsx index 9a92c3ec..4358d981 100644 --- a/site/src/docs/docs.jsx +++ b/site/src/docs/docs.jsx @@ -3,7 +3,7 @@ import { CixAscii } from '../shared/ascii.jsx'; import { Foot } from '../shared/foot.jsx'; import { TeamDiagram } from '../shared/team-diagram.jsx'; import { - SERVER_VERSION, CLI_VERSION, PLUGIN_VERSION, COWORK_PLUGIN_VERSION, GITHUB_URL, + SERVER_VERSION, CLI_VERSION, PLUGIN_VERSION, COWORK_PLUGIN_VERSION, MAC_APP_VERSION, GITHUB_URL, } from '../shared/versions.js'; const TOC = [ @@ -103,6 +103,15 @@ git clone https://github.com/dvcdsys/code-index && cd code-index ./install-server.sh`}
At the end it prints the dashboard URL and your admin login (the password is temporary — you change it on first login), and offers to install the cix CLI and connect it to the new server — so cix init works immediately. Re-running after a git pull upgrades in place; --uninstall removes the server but keeps your data. Forgot the admin password later? ./server/scripts/reset-password.sh <email> resets it offline. Details: SETUP_MACOS_NATIVE.md.
On an Apple Silicon Mac there is a second way in: cix.app, a menu bar app that runs the server for you. It sets up an admin account on first launch, downloads the server itself (about 40 MB, the same build the Docker images are cut from), and gives you start/stop, network access, launch-at-login and a password reset without a terminal. The server keeps running when you quit the app, and both halves update themselves. Download cix.app {MAC_APP_VERSION} — macOS 13 or later, Apple Silicon only (upstream llama.cpp publishes no macOS x86_64 build).
+ +macOS will block the download, twice: once for the disk image, once for the app inside it. cix is open source and not signed with a paid Apple Developer certificate, so macOS cannot verify it — nothing is wrong with your download. The fastest way through is one command before you open the image, because the app inherits the download mark from the image at the moment you copy it out:
+Then open the image and drag cix.app onto Applications as usual — no dialogs. Already dragged it across and hit the block? Clear it in place instead: xattr -dr com.apple.quarantine /Applications/cix.app. (No such xattr in either case just means it was already clear.)
To click through it instead: open the .dmg, and when macOS says it "could not verify" the file choose Done — never Move to Bin, which deletes the download. Then go to System Settings → Privacy & Security, scroll to Security, and click Open Anyway next to the blocked file. That button appears only after the failed attempt, so going there first shows nothing. Drag the app across, open it, and repeat for the app itself. On macOS 15 and later the old right-click → Open shortcut works for neither block. You do this once per version.
Docker (CPU):