release: fix apk package file ownership

This commit is contained in:
世界
2026-04-19 22:45:54 +08:00
parent 9b72b352d5
commit b3606e33a6
2 changed files with 30 additions and 4 deletions

View File

@@ -2,6 +2,18 @@
set -e -o pipefail set -e -o pipefail
prepare_apk_root() {
# apk mkpkg resolves owner/group names through --root/etc/{passwd,group}.
APK_ROOT_DIR=$(mktemp -d)
mkdir -p "$APK_ROOT_DIR/etc"
cat > "$APK_ROOT_DIR/etc/passwd" <<EOF
root:x:$(id -u):$(id -g):root:/root:/sbin/nologin
EOF
cat > "$APK_ROOT_DIR/etc/group" <<EOF
root:x:$(id -g):root
EOF
}
ARCHITECTURE="$1" ARCHITECTURE="$1"
VERSION="$2" VERSION="$2"
BINARY_PATH="$3" BINARY_PATH="$3"
@@ -22,7 +34,8 @@ APK_VERSION=$(echo "$VERSION" | sed -E 's/-([a-z]+)\.([0-9]+)/_\1\2/')
APK_VERSION="${APK_VERSION}-r0" APK_VERSION="${APK_VERSION}-r0"
ROOT_DIR=$(mktemp -d) ROOT_DIR=$(mktemp -d)
trap 'rm -rf "$ROOT_DIR"' EXIT prepare_apk_root
trap 'rm -rf "$ROOT_DIR" "$APK_ROOT_DIR"' EXIT
# Binary # Binary
install -Dm755 "$BINARY_PATH" "$ROOT_DIR/usr/bin/sing-box" install -Dm755 "$BINARY_PATH" "$ROOT_DIR/usr/bin/sing-box"
@@ -68,7 +81,7 @@ done < "$PACKAGES_DIR/.conffiles" > "$PACKAGES_DIR/.conffiles_static"
| sort > "$PACKAGES_DIR/.list" | sort > "$PACKAGES_DIR/.list"
# Build APK # Build APK
apk mkpkg \ apk --root "$APK_ROOT_DIR" mkpkg \
--info "name:sing-box" \ --info "name:sing-box" \
--info "version:${APK_VERSION}" \ --info "version:${APK_VERSION}" \
--info "description:The universal proxy platform." \ --info "description:The universal proxy platform." \

View File

@@ -2,6 +2,18 @@
set -e -o pipefail set -e -o pipefail
prepare_apk_root() {
# apk mkpkg resolves owner/group names through --root/etc/{passwd,group}.
APK_ROOT_DIR=$(mktemp -d)
mkdir -p "$APK_ROOT_DIR/etc"
cat > "$APK_ROOT_DIR/etc/passwd" <<EOF
root:x:$(id -u):$(id -g):root:/root:/sbin/nologin
EOF
cat > "$APK_ROOT_DIR/etc/group" <<EOF
root:x:$(id -g):root
EOF
}
ARCHITECTURE="$1" ARCHITECTURE="$1"
VERSION="$2" VERSION="$2"
BINARY_PATH="$3" BINARY_PATH="$3"
@@ -22,7 +34,8 @@ APK_VERSION=$(echo "$VERSION" | sed -E 's/-([a-z]+)\.([0-9]+)/_\1\2/')
APK_VERSION="${APK_VERSION}-r0" APK_VERSION="${APK_VERSION}-r0"
ROOT_DIR=$(mktemp -d) ROOT_DIR=$(mktemp -d)
trap 'rm -rf "$ROOT_DIR"' EXIT prepare_apk_root
trap 'rm -rf "$ROOT_DIR" "$APK_ROOT_DIR"' EXIT
# Binary # Binary
install -Dm755 "$BINARY_PATH" "$ROOT_DIR/usr/bin/sing-box" install -Dm755 "$BINARY_PATH" "$ROOT_DIR/usr/bin/sing-box"
@@ -64,7 +77,7 @@ done < "$PACKAGES_DIR/.conffiles" > "$PACKAGES_DIR/.conffiles_static"
| sort > "$PACKAGES_DIR/.list" | sort > "$PACKAGES_DIR/.list"
# Build APK # Build APK
apk mkpkg \ apk --root "$APK_ROOT_DIR" mkpkg \
--info "name:sing-box" \ --info "name:sing-box" \
--info "version:${APK_VERSION}" \ --info "version:${APK_VERSION}" \
--info "description:The universal proxy platform." \ --info "description:The universal proxy platform." \