# ============================================================================ # macOS 代码签名 + 公证(notarization)配置 —— 模板(可入库,无密钥) # ---------------------------------------------------------------------------- # 用法: # 1. 复制本文件为同目录的 .env.signing(真实文件,已被 .gitignore,绝不入库): # cp apps/desktop/signing/.env.signing.example apps/desktop/signing/.env.signing # 2. 填入下面的真实值(来源见同目录 README.md)。 # 3. 出带签名 + 公证的安装包: # bun run build:signed # # 普通 `bun run build` 不读这些变量,保持 ad-hoc 签名,任何人都能照常构建。 # ============================================================================ # ── 1) 签名身份(下面两种二选一)───────────────────────────────────────── # 【推荐 / 本机开发】证书已导入「登录」钥匙串后,只填身份全名即可。 # 取值:终端执行 security find-identity -v -p codesigning # 复制引号里的全名,形如:Developer ID Application: Your Name (TEAMID1234) # ⚠️ 必须是 "Developer ID Application" 类型,不能是 "Apple Development" / "Mac Developer"。 APPLE_SIGNING_IDENTITY="Developer ID Application: YOUR NAME (YOURTEAMID)" # 【或 / CI、无钥匙串】直接给 .p12 的 base64 内容(此时把上面的 IDENTITY 留空/注释掉)。 # 导出:钥匙串里右键证书 → 导出为 .p12(设个导出口令)→ base64 -i DeveloperID.p12 | pbcopy # APPLE_CERTIFICATE="" # APPLE_CERTIFICATE_PASSWORD="" # ── 2) 公证 notarization(下面两种二选一)─────────────────────────────── # 不配公证 → 别人下载后仍会报「无法验证开发者」(比「已损坏」好,但仍打不开)。 # 要彻底解决,必须配公证。 # 【推荐】App Store Connect API Key 方式: # 生成:App Store Connect → Users and Access → Integrations → Keys # → 生成一个 "Developer" 角色的 Key → 下载 AuthKey_XXXX.p8(只能下一次!) # .p8 放到「仓库外」或下面这个已 gitignore 的目录;路径可相对仓库根,也可绝对路径。 APPLE_API_ISSUER="00000000-0000-0000-0000-000000000000" # Issuer ID(keys 表格上方那串) APPLE_API_KEY="ABCDE12345" # Key ID(表格 "Key ID" 列) APPLE_API_KEY_PATH="apps/desktop/.tauri/AuthKey_ABCDE12345.p8" # .p8 文件路径 # 【或】Apple ID 方式(此时把上面三个 APPLE_API_* 留空/注释掉): # APPLE_PASSWORD 是「App 专用密码」,不是你的登录密码。 # 生成:appleid.apple.com → 登录与安全 → App 专用密码 → 生成。 # APPLE_ID="you@example.com" # APPLE_PASSWORD="xxxx-xxxx-xxxx-xxxx" # APPLE_TEAM_ID="YOURTEAMID"