release / aarch64_cortex-a53 (push) Successful in 7m3s
release / x86_64 (push) Successful in 3m13s
release / apk aarch64_cortex-a53 (push) Failing after 4m34s
release / apk x86_64 (push) Failing after 2m35s
release / release (push) Successful in 8s
release / release apk (push) Successful in 5s
- ci/make-index.sh: set -e → set -euo pipefail so a failing sha256sum|cut in the signed Packages index can't mask an empty SHA256. Script survives -u (all vars use :? or :- defaults). - .github/deb2ipk.sh: quote $2/$DEB_NAME/output, derive the deb name from the copied file via basename instead of parsing `ls *.deb` (glob-fragile), add a trap-based tmpdir cleanup, and set -euo pipefail. bash -n clean on both. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
35 lines
767 B
Bash
Executable File
35 lines
767 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# mod from https://gist.github.com/pldubouilh/c5703052986bfdd404005951dee54683
|
|
|
|
set -euo pipefail
|
|
|
|
ARCH=$1
|
|
DEB_SRC=$2
|
|
OUT_IPK=$3
|
|
|
|
PROJECT=$(dirname "$0")/../..
|
|
TMP_PATH=$(mktemp -d)
|
|
trap 'rm -rf "$TMP_PATH"' EXIT
|
|
|
|
cp "$DEB_SRC" "$TMP_PATH"/
|
|
pushd "$TMP_PATH" >/dev/null
|
|
|
|
# Derive the name from the file we copied — do not glob-parse `ls *.deb`.
|
|
DEB_NAME=$(basename "$DEB_SRC")
|
|
ar x "$DEB_NAME"
|
|
|
|
mkdir control
|
|
pushd control >/dev/null
|
|
tar xf ../control.tar.gz
|
|
rm -f md5sums
|
|
sed "s/Architecture:\\ \w*/Architecture:\\ $ARCH/g" ./control -i
|
|
cat control
|
|
tar czf ../control.tar.gz ./*
|
|
popd >/dev/null
|
|
|
|
DEB_NAME=${DEB_NAME%.deb}
|
|
tar czf "$DEB_NAME.ipk" control.tar.gz data.tar.gz debian-binary
|
|
popd >/dev/null
|
|
|
|
cp "$TMP_PATH/$DEB_NAME.ipk" "$OUT_IPK"
|