From ed716d0573927fb7460f4783289f529e29d0b25e Mon Sep 17 00:00:00 2001 From: Shoma Nishitateno Date: Wed, 13 May 2026 14:46:09 +0900 Subject: [PATCH] =?UTF-8?q?docs(readme):=20macOS=20install=20=E3=82=92=20-?= =?UTF-8?q?-no-quarantine=20=E5=BF=85=E9=A0=88=E3=81=AB=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit v1.2.0 リリースで .app 配布が開始されたため、未署名配布の制約を README の Quick Start に明示する: - brew install コマンドに --no-quarantine フラグを追加 - なぜ必要かを IMPORTANT note で説明 (壊れている表示の対処) - xattr による事後修復もフォールバックとして案内 - 署名対応の追跡 issue (#193) へリンク - 過時 NOTE (F1-F7 進行中) を削除 - macOS 要件を Cask 定義に合わせて Monterey 以降に修正 --- README.md | 47 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 38 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 2fd5dc1..48f263e 100644 --- a/README.md +++ b/README.md @@ -42,20 +42,49 @@ Arkは、Agent SDKではなく **tmux + ttyd によるターミナル転送方 ### macOS (.app, Apple Silicon) -> [!NOTE] -> .app 配布は実装中 (F1-F7 進行中)。実 release tag は F4-F6 完了後に公開予定。 -> 詳細は `plans/macos-app-implementation-plan.md` を参照。 +Homebrew Cask: ```bash -# Homebrew tap 経由 (推奨) -brew tap ignission/tap -brew install --cask ark +brew install --cask ignission/tap/ark +``` + +または GitHub Releases から直接ダウンロード: + +要件: macOS 12 (Monterey) 以降、arm64 (Apple Silicon)。Cask の `depends_on macos: ">= :monterey"` に合わせており、これ未満は未検証です。 + +#### 初回起動で「Ark は壊れているため開けません」と表示された場合 + +現在の `.app` は **Developer ID 署名・Apple notarization が未対応** (追跡 issue: [#193](https://github.com/ignission/claude-code-ark/issues/193))。 +このため macOS は Homebrew 経由でダウンロードした `.app` を quarantine 対象として "damaged" 判定します。 + +> [!CAUTION] +> 以下の手順は Gatekeeper の検証を意図的に迂回します。実行前に **入手元が正規であること** を必ず確認してください: +> +> - 配布元が `https://github.com/ignission/claude-code-ark/releases` であること +> - Homebrew Cask 経由でインストールした場合、`brew` が `.zip` の sha256 を Cask 定義 ([`Casks/ark.rb`](https://github.com/ignission/homebrew-tap/blob/main/Casks/ark.rb)) と自動照合しているため、改ざんは検知されています +> - 直接ダウンロードした場合は GitHub Releases ページ掲載の sha256 と `shasum -a 256 Ark-*.zip` 出力を手元で比較してください + +署名対応完了までは以下のいずれかで対処してください: -# または GitHub Releases から直接ダウンロード: -# https://github.com/ignission/claude-code-ark/releases +**対処 A: quarantine 属性を事後削除** + +```bash +# Cask の install 先 (/Applications/Ark.app) 前提。別パスにある場合は読み替え。 +APP="/Applications/Ark.app" +if [ ! -d "$APP" ]; then + echo "ERROR: $APP が見つかりません。インストール先を確認してください。" >&2 + exit 1 +fi +xattr -dr com.apple.quarantine "$APP" +``` + +**対処 B: 再インストール時に quarantine を付けない** + +```bash +brew reinstall --cask --no-quarantine ignission/tap/ark ``` -要件: macOS 14 (Sonoma) 以降、arm64 (Apple Silicon)。 +`--no-quarantine` は Homebrew Cask が install 時に quarantine 属性付与を skip するフラグです。 ### Linux / 開発環境 (ソースから起動)