From b1c1b16e66ea4a600d7f56addd90ccf820698f95 Mon Sep 17 00:00:00 2001 From: "jif2.zhang" Date: Sun, 25 Oct 2026 00:56:35 +0800 Subject: [PATCH] =?UTF-8?q?ci:=20minisign=20=E9=9D=99=E6=80=81=E5=8C=85?= =?UTF-8?q?=E6=B7=B7=E5=A4=9A=E5=B9=B3=E5=8F=B0=E4=BA=8C=E8=BF=9B=E5=88=B6?= =?UTF-8?q?,=20=E8=AF=95=E8=BF=90=E8=A1=8C=E6=8C=91=E5=8F=AF=E7=94=A8?= =?UTF-8?q?=E8=80=85,=20=E5=A4=B1=E8=B4=A5=E5=9B=9E=E9=80=80=20apt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/docker-build.yml | 13 ++++++++++++- .gitea/workflows/ota-build.yml | 13 ++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/docker-build.yml b/.gitea/workflows/docker-build.yml index b5f3245..eaf337b 100644 --- a/.gitea/workflows/docker-build.yml +++ b/.gitea/workflows/docker-build.yml @@ -65,11 +65,22 @@ jobs: - name: Install minisign # 静态二进制直接下载, 免去每次 apt-get update + install + # 注意: release tarball 是 macOS 上打包的, 混有多个平台的 minisign 二进制, + # 逐个试运行挑出本机可执行的, 都不行再回退 apt run: | set -euo pipefail mkdir -p /tmp/ms curl -sL https://github.com/jedisct1/minisign/releases/download/0.12/minisign-0.12-linux.tar.gz | tar xz -C /tmp/ms - sudo install -m755 "$(find /tmp/ms -type f -name minisign | head -1)" /usr/local/bin/minisign + BIN="" + for c in $(find /tmp/ms -type f -name minisign); do + if "$c" -v >/dev/null 2>&1; then BIN="$c"; break; fi + done + if [ -n "$BIN" ]; then + sudo install -m755 "$BIN" /usr/local/bin/minisign + else + echo "未找到可执行的静态二进制, 回退 apt 安装" + sudo apt-get update && sudo apt-get install -y minisign + fi minisign -v - name: Build & sign OTA package diff --git a/.gitea/workflows/ota-build.yml b/.gitea/workflows/ota-build.yml index 9b1185d..cf71028 100644 --- a/.gitea/workflows/ota-build.yml +++ b/.gitea/workflows/ota-build.yml @@ -47,11 +47,22 @@ jobs: - name: Install minisign # 静态二进制直接下载, 免去每次 apt-get update + install + # 注意: release tarball 是 macOS 上打包的, 混有多个平台的 minisign 二进制, + # 逐个试运行挑出本机可执行的, 都不行再回退 apt run: | set -euo pipefail mkdir -p /tmp/ms curl -sL https://github.com/jedisct1/minisign/releases/download/0.12/minisign-0.12-linux.tar.gz | tar xz -C /tmp/ms - sudo install -m755 "$(find /tmp/ms -type f -name minisign | head -1)" /usr/local/bin/minisign + BIN="" + for c in $(find /tmp/ms -type f -name minisign); do + if "$c" -v >/dev/null 2>&1; then BIN="$c"; break; fi + done + if [ -n "$BIN" ]; then + sudo install -m755 "$BIN" /usr/local/bin/minisign + else + echo "未找到可执行的静态二进制, 回退 apt 安装" + sudo apt-get update && sudo apt-get install -y minisign + fi minisign -v - name: Build & sign OTA package