镜像自地址
https://github.com/JGZYES/ParlzPackageManger.git
已同步 2026-09-11 05:42:44 +08:00
ci+aarch64: build pmm-aarch64 binary + linux-aarch64 .pdm; install.sh picks arch asset
- release.yml matrix adds linux-aarch64 (cc aarch64-linux-gnu-gcc), builds out/pmm-aarch64, and produces pmm-<ver>-linux-aarch64.pdm (pure-tar pdm) when that binary exists; amd64/windows packages unchanged. - web/install.sh: download pmm (amd64) vs pmm-aarch64 (arm64) per arch, dropping the 'only amd64 provided' warning.
这个提交包含在:
@@ -24,10 +24,20 @@ jobs:
|
||||
cc: x86_64-w64-mingw32-gcc
|
||||
ext: .exe
|
||||
pkg: mingw-w64
|
||||
bin: pmm.exe
|
||||
arch: windows-amd64
|
||||
- target: linux-amd64
|
||||
cc: gcc
|
||||
ext: ''
|
||||
pkg: ''
|
||||
bin: pmm
|
||||
arch: amd64
|
||||
- target: linux-aarch64
|
||||
cc: aarch64-linux-gnu-gcc
|
||||
ext: ''
|
||||
pkg: gcc-aarch64-linux-gnu
|
||||
bin: pmm-aarch64
|
||||
arch: aarch64
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -43,7 +53,7 @@ jobs:
|
||||
mkdir -p out
|
||||
VER=${{ github.ref_type == 'tag' && github.ref_name || (github.event.inputs.version != '' && github.event.inputs.version || 'dev') }}
|
||||
VER=${VER#v}
|
||||
${{ matrix.cc }} -O2 -Wall -static -std=c11 -D_FORTIFY_SOURCE=0 -U_FORTIFY_SOURCE -DPMM_VERSION=\"$VER\" -o out/pmm${{ matrix.ext }} \
|
||||
${{ matrix.cc }} -O2 -Wall -static -std=c11 -D_FORTIFY_SOURCE=0 -U_FORTIFY_SOURCE -DPMM_VERSION=\"$VER\" -o out/${{ matrix.bin }} \
|
||||
src/main.c src/json.c src/ini.c src/pmm.c src/http.c src/repo.c src/install.c \
|
||||
src/sha256.c src/sha1.c src/mirrors.c src/pdm.c src/out.c src/i18n.c
|
||||
|
||||
@@ -57,6 +67,24 @@ jobs:
|
||||
# -- install.sh helper (uploaded to the release, also served at /install.sh)
|
||||
cp web/install.sh out/install.sh
|
||||
|
||||
# -- aarch64: a .pdm (pure tar, no pmm needed) for Linux ARM64
|
||||
if [ -f out/pmm-aarch64 ]; then
|
||||
rm -rf pdm && mkdir -p pdm/meta pdm/data/usr/local/bin
|
||||
cp out/pmm-aarch64 pdm/data/usr/local/bin/pmm
|
||||
{
|
||||
echo "Package: pmm"
|
||||
echo "Version: $VER"
|
||||
echo "Architecture: linux"
|
||||
echo "Description: PMM package manager"
|
||||
echo "Maintainer: PMM <packages@pmm.dev>"
|
||||
} > pdm/meta/pdm-control
|
||||
( cd pdm/meta && tar -czf ../control.tar.gz pdm-control )
|
||||
( cd pdm/data && tar -czf ../data.tar.gz . )
|
||||
( cd pdm && sha256sum control.tar.gz data.tar.gz > sha256sums )
|
||||
( cd pdm && tar -cf ../out/pmm-${VER}-linux-aarch64.pdm control.tar.gz data.tar.gz sha256sums )
|
||||
rm -rf pdm
|
||||
fi
|
||||
|
||||
# -- Windows: ZIP
|
||||
if [ -f out/pmm.exe ]; then
|
||||
( cd out && zip -q "pmm-${VER}-windows-amd64.zip" pmm.exe )
|
||||
|
||||
+6
-5
@@ -23,11 +23,12 @@ case "$ARCH" in
|
||||
*) echo "pmm: 不支持的架构 $ARCH"; exit 1 ;;
|
||||
esac
|
||||
|
||||
# ---- 下载 pmm(release 资产名为 pmm)----
|
||||
URL="https://github.com/$REPO/releases/download/v$VER/pmm"
|
||||
if [ "$arch" != "amd64" ]; then
|
||||
echo "pmm: 注意:官方发布目前只提供 amd64 资产,$os/$arch 可能 404"
|
||||
fi
|
||||
# ---- 下载 pmm(按架构选 release 资产名)----
|
||||
case "$arch" in
|
||||
amd64) ASSET="pmm" ;;
|
||||
arm64) ASSET="pmm-aarch64" ;;
|
||||
esac
|
||||
URL="https://github.com/$REPO/releases/download/v$VER/$ASSET"
|
||||
echo "pmm: 下载 v$VER ($os/$arch) ..."
|
||||
TMP="$(mktemp)"
|
||||
# --progress-bar shows a live download progress line (tty only)
|
||||
|
||||
在新工单中引用
屏蔽一个用户