mirror of
https://github.com/blacktop/ipsw.git
synced 2026-05-08 12:22:26 +00:00
53 lines
1.4 KiB
Bash
Executable File
53 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -o errexit
|
|
set -o nounset
|
|
set -o pipefail
|
|
if [[ "${TRACE-0}" == "1" ]]; then
|
|
set -o xtrace
|
|
fi
|
|
|
|
LATEST_VERSION=""
|
|
|
|
if [[ "${1-}" =~ ^-*h(elp)?$ ]]; then
|
|
echo 'Usage: hack/make/portfile github.com/blacktop/ports
|
|
|
|
This script updates Portfile to latest version.
|
|
|
|
'
|
|
exit
|
|
fi
|
|
|
|
get_version() {
|
|
LATEST_VERSION=$(gh release view --json tagName --template '{{ slice .tagName 1 }}')
|
|
echo " [!] Updating to version: $LATEST_VERSION"
|
|
}
|
|
|
|
main() {
|
|
REPO="$1"
|
|
PORTFILE="$REPO/security/ipsw/Portfile"
|
|
|
|
gh release download --archive=tar.gz --dir /tmp --skip-existing
|
|
get_version
|
|
sed -i '' "s/github.com\/blacktop\/ipsw .* v/github.com\/blacktop\/ipsw ${LATEST_VERSION} v/" ${PORTFILE}
|
|
|
|
RMD160=$(openssl dgst -rmd160 /tmp/ipsw-$LATEST_VERSION.tar.gz | awk '{print $2}')
|
|
echo " [!] Updating rmd160 to ${RMD160}"
|
|
sed -i '' "s|rmd160 .* \\\|rmd160 ${RMD160} \\\|" ${PORTFILE}
|
|
|
|
SHA256=$(openssl dgst -sha256 /tmp/ipsw-$LATEST_VERSION.tar.gz | awk '{print $2}')
|
|
echo " [!] Updating sha256 to $SHA256"
|
|
sed -i '' "s|sha256 .* \\\|sha256 ${SHA256} \\\|" ${PORTFILE}
|
|
|
|
SIZE=$(stat -f '%z' /tmp/ipsw-$LATEST_VERSION.tar.gz)
|
|
echo " [!] Updating size to $SIZE"
|
|
sed -i '' "s|size .*|size ${SIZE}|" ${PORTFILE}
|
|
|
|
echo " [!] Pushing update..."
|
|
cd $REPO
|
|
git commit -am "ipsw: update to $LATEST_VERSION"
|
|
git push
|
|
}
|
|
|
|
main "$@"
|