Skip to content

Commit ed478bc

Browse files
committed
fix:完全无法使用termux的方式直接嵌入二进制文件执行,只能打包自带依赖
1 parent 87424fe commit ed478bc

21 files changed

+569
-1219
lines changed

.github/workflows/build.yml

Lines changed: 0 additions & 112 deletions
Original file line numberDiff line numberDiff line change
@@ -92,62 +92,6 @@ jobs:
9292
- name: Verify dependencies
9393
run: go mod verify
9494

95-
- name: Download ECS binaries and prepare for Android
96-
run: |
97-
REPO="oneclickvirt/ecs"
98-
99-
# 使用 gh CLI 获取最新版本
100-
echo "获取最新版本信息..."
101-
ECS_VERSION=$(gh release view --repo "$REPO" --json tagName --jq '.tagName')
102-
103-
if [ -z "$ECS_VERSION" ]; then
104-
echo "错误: 无法获取最新版本"
105-
exit 1
106-
fi
107-
108-
echo "ECS 版本: $ECS_VERSION"
109-
110-
# 创建 jniLibs 目录
111-
mkdir -p jniLibs/arm64-v8a
112-
mkdir -p jniLibs/x86_64
113-
114-
# 下载 Linux ARM64(用于 Android ARM64)
115-
echo "下载 Linux ARM64..."
116-
gh release download "$ECS_VERSION" --repo "$REPO" --pattern "goecs_linux_arm64.zip" --output "/tmp/goecs_linux_arm64.zip"
117-
unzip -q -o "/tmp/goecs_linux_arm64.zip" -d /tmp/
118-
mv /tmp/goecs jniLibs/arm64-v8a/libgoecs.so
119-
chmod 755 jniLibs/arm64-v8a/libgoecs.so
120-
121-
# 下载 Linux AMD64(用于 Android x86_64)
122-
echo "下载 Linux AMD64..."
123-
gh release download "$ECS_VERSION" --repo "$REPO" --pattern "goecs_linux_amd64.zip" --output "/tmp/goecs_linux_amd64.zip"
124-
unzip -q -o "/tmp/goecs_linux_amd64.zip" -d /tmp/
125-
mv /tmp/goecs jniLibs/x86_64/libgoecs.so
126-
chmod 755 jniLibs/x86_64/libgoecs.so
127-
128-
# 下载 proot(用于在 Android 上运行 Linux 二进制文件)
129-
echo "下载 proot..."
130-
PROOT_VERSION="5.4.0"
131-
132-
# ARM64 proot
133-
curl -L "https://github.com/proot-me/proot/releases/download/v${PROOT_VERSION}/proot-v${PROOT_VERSION}-aarch64-static" \
134-
-o jniLibs/arm64-v8a/libproot.so
135-
chmod 755 jniLibs/arm64-v8a/libproot.so
136-
137-
# x86_64 proot
138-
curl -L "https://github.com/proot-me/proot/releases/download/v${PROOT_VERSION}/proot-v${PROOT_VERSION}-x86_64-static" \
139-
-o jniLibs/x86_64/libproot.so
140-
chmod 755 jniLibs/x86_64/libproot.so
141-
142-
echo ""
143-
echo "jniLibs 文件列表:"
144-
ls -lh jniLibs/*/*.so
145-
echo ""
146-
echo "文件大小:"
147-
du -sh jniLibs/*/*.so
148-
env:
149-
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
150-
15195
- name: Update FyneApp.toml version
15296
run: |
15397
sed -i "s/Version = .*/Version = \"${{ needs.prepare.outputs.version }}\"/" FyneApp.toml
@@ -280,62 +224,6 @@ jobs:
280224
- name: Verify dependencies
281225
run: go mod verify
282226

283-
- name: Download ECS binaries for embed
284-
shell: bash
285-
run: |
286-
REPO="oneclickvirt/ecs"
287-
BINARIES_DIR="embedding/binaries"
288-
TARGET_OS="${{ matrix.platform }}"
289-
TARGET_ARCH="${{ matrix.arch }}"
290-
291-
mkdir -p "$BINARIES_DIR"
292-
293-
# 使用 gh CLI 获取最新版本(更简单可靠)
294-
echo "获取最新版本信息..."
295-
ECS_VERSION=$(gh release view --repo "$REPO" --json tagName --jq '.tagName')
296-
297-
if [ -z "$ECS_VERSION" ]; then
298-
echo "错误: 无法获取最新版本"
299-
exit 1
300-
fi
301-
302-
echo "ECS 版本: $ECS_VERSION"
303-
echo "目标平台: $TARGET_OS/$TARGET_ARCH"
304-
305-
# Windows 需要 .exe 后缀
306-
if [ "$TARGET_OS" == "windows" ]; then
307-
OUTPUT_FILE="${BINARIES_DIR}/goecs-${TARGET_OS}-${TARGET_ARCH}.exe"
308-
else
309-
OUTPUT_FILE="${BINARIES_DIR}/goecs-${TARGET_OS}-${TARGET_ARCH}"
310-
fi
311-
312-
PATTERN="goecs_${TARGET_OS}_${TARGET_ARCH}.zip"
313-
314-
echo "下载 ${TARGET_OS}/${TARGET_ARCH}..."
315-
echo "Pattern: $PATTERN"
316-
echo "Output: $OUTPUT_FILE"
317-
318-
# 下载到临时文件
319-
gh release download "$ECS_VERSION" --repo "$REPO" --pattern "$PATTERN" --output "/tmp/goecs.zip"
320-
unzip -q -o "/tmp/goecs.zip" -d /tmp/
321-
322-
if [ -f "/tmp/goecs.exe" ]; then
323-
mv /tmp/goecs.exe "$OUTPUT_FILE"
324-
elif [ -f "/tmp/goecs" ]; then
325-
mv /tmp/goecs "$OUTPUT_FILE"
326-
chmod +x "$OUTPUT_FILE"
327-
else
328-
echo "错误: 找不到解压后的二进制文件"
329-
exit 1
330-
fi
331-
332-
echo ""
333-
echo "二进制文件列表:"
334-
ls -lh "${BINARIES_DIR}/"
335-
echo ""
336-
env:
337-
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
338-
339227
- name: Update FyneApp.toml version
340228
shell: bash
341229
run: |

0 commit comments

Comments
 (0)