fix(scripts): local_test.sh 对齐当前 macOS 架构(sysext 标识符名 + 静态 libbox)
发版脚本停留在旧「嵌入 Libbox.framework」架构,与现工程漂移两处、导致 sign 失败: - sysext bundle 名 = 标识符 com.pangolin.pangolin.PacketTunnel.systemextension (PRODUCT_NAME,见 CLAUDE.md),非短名 PacketTunnel.systemextension。 - libbox 现「只 Link 不 Embed」静态进 sysext 二进制,sysext 内已无独立 Libbox.framework;删掉对不存在 framework 的签名,签 sysext bundle 即覆盖。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -35,7 +35,9 @@ DIR="${SRC%/*}"; [ "$DIR" = "$SRC" ] && DIR="."
|
||||
cd "$DIR/.."; REPO_ROOT="$PWD"
|
||||
CLIENT="$REPO_ROOT/client"
|
||||
APP="$CLIENT/build/macos/Build/Products/Release/pangolin_vpn.app"
|
||||
SE="$APP/Contents/Library/SystemExtensions/PacketTunnel.systemextension"
|
||||
# sysext bundle 名 = 标识符(PRODUCT_NAME=com.pangolin.pangolin.PacketTunnel,见 CLAUDE.md),
|
||||
# 不是短名 PacketTunnel.systemextension。
|
||||
SE="$APP/Contents/Library/SystemExtensions/com.pangolin.pangolin.PacketTunnel.systemextension"
|
||||
LIBFW="$SE/Contents/Frameworks/Libbox.framework"
|
||||
PROF_DIR="$HOME/Library/Developer/Xcode/UserData/Provisioning Profiles"
|
||||
WORK="${TMPDIR:-/tmp}/pangolin_local_test"; mkdir -p "$WORK"
|
||||
@@ -112,9 +114,9 @@ cmd_sign(){
|
||||
cp "$app_prof" "$APP/Contents/embedded.provisionprofile"
|
||||
cp "$se_prof" "$SE/Contents/embedded.provisionprofile"
|
||||
|
||||
# 内向外:Libbox 真二进制 → Libbox.framework → sysext → app 各 framework → app 主体
|
||||
cs -s "$SIGN_ID" "$LIBFW/Versions/A/Libbox"
|
||||
cs -s "$SIGN_ID" "$LIBFW"
|
||||
# 内向外:sysext → app 各 framework → app 主体。
|
||||
# libbox 现为「只 Link 不 Embed」静态进 sysext 二进制(见 CLAUDE.md),sysext 内已无
|
||||
# 独立 Libbox.framework;签 sysext bundle 即覆盖其静态链接的 libbox,无需单独签 framework。
|
||||
cs --entitlements "$WORK/sysext.entitlements" -s "$SIGN_ID" "$SE"
|
||||
local item
|
||||
for item in "$APP/Contents/Frameworks/"*; do
|
||||
|
||||
Reference in New Issue
Block a user