|
|
|
|
@ -32,7 +32,6 @@ arch=$(apk --print-arch)
|
|
|
|
|
# add special case for postmarketos
|
|
|
|
|
[ "$release" == "postmarketos" ] && { release=$repo; repo="pmos"; arch="aarch64"; }
|
|
|
|
|
[ "$release" == "master" ] && release=edge
|
|
|
|
|
[ "$release" == "main" ] && release=edge
|
|
|
|
|
|
|
|
|
|
is_semantic() {
|
|
|
|
|
local downstream_version_dot=${1//[^.]}
|
|
|
|
|
@ -73,24 +72,7 @@ for pkg in $owned_by_you; do
|
|
|
|
|
case $pkg in
|
|
|
|
|
# track u-boot-pine64-pinenote against mainline u-boot, and track upstream rockchip blobs
|
|
|
|
|
u-boot-pine64-pinenote)
|
|
|
|
|
# reproduce catch-all option
|
|
|
|
|
if [[ "$minor_only" == *all* || "$minor_only" == *$pkg* ]] && [[ "$minor_only" != *-$pkg* ]]; then
|
|
|
|
|
# continues when package version scheme is not semantic, but minor_only or fix_only is set
|
|
|
|
|
if ! is_semantic $downstream_version; then
|
|
|
|
|
echo "$pkg is not semantic, and minor_only is set"
|
|
|
|
|
continue
|
|
|
|
|
fi
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/u-boot" | jq -r ".stable_versions.[] | match(\"${downstream_version%.*.*}.*\").string" | head -n1)
|
|
|
|
|
elif [[ "$fix_only" == *all* || "$fix_only" == *$pkg* ]] && [[ "$fix_only" != *-$pkg* ]]; then
|
|
|
|
|
# continues when package version scheme is not semantic, but minor_only or fix_only is set
|
|
|
|
|
if ! is_semantic $downstream_version; then
|
|
|
|
|
echo "$pkg is not semantic, and fix_only is set"
|
|
|
|
|
continue
|
|
|
|
|
fi
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/u-boot" | jq -r ".stable_versions.[] | match(\"${downstream_version%.*}.*\").string" | head -n1)
|
|
|
|
|
else
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/u-boot" | jq -r '.stable_versions.[]' | head -n1)
|
|
|
|
|
fi
|
|
|
|
|
upstream_version="$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/u-boot" | jq -r '.stable_versions.[]' | head -n1)"
|
|
|
|
|
|
|
|
|
|
# some reason the commit now not in APKINDEX, using master instead
|
|
|
|
|
#commit=$(sed -n "/^P:$pkg$/,/^$/p" APKINDEX | awk -F ':' '{if($1=="c"){print $2}}')
|
|
|
|
|
@ -102,8 +84,8 @@ for pkg in $owned_by_you; do
|
|
|
|
|
upstream_ddr="$(curl --fail -s 'https://raw.githubusercontent.com/rockchip-linux/rkbin/master/RKBOOT/RK3566MINIALL_ULTRA.ini' | grep ddr | awk -F '=' '{if($1"="PATH){print $2}}' | head -n 1 | grep -o -P '(?<=_v).*(?=.bin)')"
|
|
|
|
|
|
|
|
|
|
# extracts downstream version via _trust_ver and _ddr_ver variable
|
|
|
|
|
downstream_trust=$(curl --fail -X GET -s "https://gitlab.postmarketos.org/postmarketOS/pmaports/-/raw/$commit/device/community/u-boot-pine64-pinenote/APKBUILD" | awk -F '=' '{if($1=="_trust_ver"){print $2}}')
|
|
|
|
|
downstream_ddr=$(curl --fail -X GET -s "https://gitlab.postmarketos.org/postmarketOS/pmaports/-/raw/$commit/device/community/u-boot-pine64-pinenote/APKBUILD" | awk -F '=' '{if($1=="_ddr_ver"){print $2}}')
|
|
|
|
|
downstream_trust=$(curl --fail -X GET -s "https://gitlab.postmarketos.org/postmarketOS/pmaports/-/raw/$commit/device/testing/u-boot-pine64-pinenote/APKBUILD" | awk -F '=' '{if($1=="_trust_ver"){print $2}}')
|
|
|
|
|
downstream_ddr=$(curl --fail -X GET -s "https://gitlab.postmarketos.org/postmarketOS/pmaports/-/raw/$commit/device/testing/u-boot-pine64-pinenote/APKBUILD" | awk -F '=' '{if($1=="_ddr_ver"){print $2}}')
|
|
|
|
|
|
|
|
|
|
# compares versions and creates newline in out_of_date if problematic
|
|
|
|
|
if [ "$upstream_trust" != "$downstream_trust" ]; then
|
|
|
|
|
@ -114,7 +96,8 @@ for pkg in $owned_by_you; do
|
|
|
|
|
echo "$pkg new ddr blob $upstream_ddr version available"
|
|
|
|
|
echo "$pkg(ddr) $downstream_ddr $upstream_ddr $repo $release" >> out_of_date
|
|
|
|
|
fi
|
|
|
|
|
;;
|
|
|
|
|
|
|
|
|
|
;;
|
|
|
|
|
# release-monitoring omits the extra B, while we keep it but put it after the version no.
|
|
|
|
|
looking-glass) upstream_version="$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/$pkg" | jq -r '.stable_versions.[]' | head -n1)b";;
|
|
|
|
|
# we want to track both Firefox security upgrades + Zotero upgrades
|
|
|
|
|
@ -126,24 +109,7 @@ for pkg in $owned_by_you; do
|
|
|
|
|
echo "$pkg new Firefox $upstream_fx_ver version available"
|
|
|
|
|
echo "$pkg(fx_ver) $downstream_fx_ver $upstream_fx_ver $repo $release" >> out_of_date
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [[ "$minor_only" == *all* || "$minor_only" == *$pkg* ]] && [[ "$minor_only" != *-$pkg* ]]; then
|
|
|
|
|
# continues when package version scheme is not semantic, but minor_only or fix_only is set
|
|
|
|
|
if ! is_semantic $downstream_version; then
|
|
|
|
|
echo "$pkg is not semantic, and minor_only is set"
|
|
|
|
|
continue
|
|
|
|
|
fi
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/$pkg" | jq -r ".stable_versions.[] | match(\"${downstream_version%.*.*}.*\").string" | head -n1)
|
|
|
|
|
elif [[ "$fix_only" == *all* || "$fix_only" == *$pkg* ]] && [[ "$fix_only" != *-$pkg* ]]; then
|
|
|
|
|
# continues when package version scheme is not semantic, but minor_only or fix_only is set
|
|
|
|
|
if ! is_semantic $downstream_version; then
|
|
|
|
|
echo "$pkg is not semantic, and fix_only is set"
|
|
|
|
|
continue
|
|
|
|
|
fi
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/$pkg" | jq -r ".stable_versions.[] | match(\"${downstream_version%.*}.*\").string" | head -n1)
|
|
|
|
|
else
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/$pkg" | jq -r '.stable_versions.[]' | head -n1)
|
|
|
|
|
fi
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/$pkg" | jq -r '.stable_versions.[]' | head -n1)
|
|
|
|
|
;;
|
|
|
|
|
# aports omits the -beta part of the version
|
|
|
|
|
freetube) upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/v2/packages/?name=$pkg&distribution=Alpine" | jq -r '.items.[].version' | sed "s|-beta||");;
|
|
|
|
|
@ -160,15 +126,6 @@ for pkg in $owned_by_you; do
|
|
|
|
|
pkg="$pkg(${upstream_version/.*})"
|
|
|
|
|
fi
|
|
|
|
|
;;
|
|
|
|
|
# we want to track LTS (*.2) releases
|
|
|
|
|
py3-django)
|
|
|
|
|
if [[ "$fix_only" == *all* || "$fix_only" == *$pkg* ]] || [[ "$minor_only" == *all* || "$minor_only" == *$pkg* ]]; then
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/$pkg" | jq -r ".stable_versions.[] | match(\"${downstream_version%.*}.*\").string" | head -n1)
|
|
|
|
|
else
|
|
|
|
|
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/$pkg" | jq -r '.stable_versions.[] | select(test("^[0-9]+\\.[0-9]+\\.[0-9]+$")) | select(split(".") | .[1] | tonumber | . == 2)' | head -n1)
|
|
|
|
|
fi
|
|
|
|
|
;;
|
|
|
|
|
# we want to track LTS (even releases) rather than latest
|
|
|
|
|
arm-trusted-firmware)
|
|
|
|
|
if [[ "$fix_only" == *all* || "$fix_only" == *$pkg* ]] || [[ "$minor_only" == *all* || "$minor_only" == *$pkg* ]]; then
|
|
|
|
|
@ -177,8 +134,8 @@ for pkg in $owned_by_you; do
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/$pkg" | jq -r '.stable_versions.[] | select(test("^[0-9]+\\.[0-9]+\\.[0-9]+$")) | select(split(".") | .[1] | tonumber | . % 2 == 0)' | head -n1)
|
|
|
|
|
fi
|
|
|
|
|
;;
|
|
|
|
|
# track linux-pine64-pinenote, linux-postmarketos-pinenote against latest
|
|
|
|
|
linux-pine64-pinenote|linux-postmarketos-rockchip)
|
|
|
|
|
# track linux-pine64-pinenote against latest
|
|
|
|
|
linux-pine64-pinenote)
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/315000" | jq -r ".stable_versions.[] | match(\"${downstream_version%.*}.*\").string" | head -n1)
|
|
|
|
|
latest_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/315000" | jq -r ".stable_versions.[]" | head -n1)
|
|
|
|
|
|
|
|
|
|
@ -189,16 +146,16 @@ for pkg in $owned_by_you; do
|
|
|
|
|
pkg="$pkg(${upstream_version%.*})"
|
|
|
|
|
fi
|
|
|
|
|
;;
|
|
|
|
|
# track linux-clockworkpi-uconsole-radxa-cm5 against BSP kernel (usually got awful late
|
|
|
|
|
linux-clockworkpi-uconsole-radxa-cm5)
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/linux-radxa" | jq -r '.stable_versions.[]' | head -n1)
|
|
|
|
|
# track linux-radxa against BSP kernel (usually got awful late
|
|
|
|
|
linux-radxa)
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/$pkg" | jq -r '.stable_versions.[]' | head -n1)
|
|
|
|
|
upstream_version=${upstream_version/-*}
|
|
|
|
|
;;
|
|
|
|
|
dotnet*-sdk|dotnet*-stage0)
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/141853" | jq -r ".stable_versions.[] | match(\"${downstream_version::-2}.*\").string" | head -n 1)
|
|
|
|
|
;;
|
|
|
|
|
dotnet*-runtime)
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/220385" | jq -r ".stable_versions.[] | match(\"${downstream_version%.*}..\").string" | sort -r | head -n 1)
|
|
|
|
|
upstream_version=$(curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/220385" | jq -r ".stable_versions.[] | match(\"${downstream_version%.*}.*\").string" | head -n 1)
|
|
|
|
|
;;
|
|
|
|
|
# removes last bit in github tag from usbboot release, as not needed
|
|
|
|
|
raspberrypi-usbboot) curl --fail -X GET -s -H 'Content-Type: application/json' "https://release-monitoring.org/api/project/Alpine/$pkg" | jq -r '.stable_versions.[]' | head -n1 | sed 's|-.*||';;
|
|
|
|
|
|