feat: Add internal firmware versioning (ph{N} suffix)

OpenWrt base version doesn't change between our config/script updates.
PARAHUB_BUILD counter creates version like 25.12.0-rc4-ph1 for tracking.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-09 19:27:12 +00:00
parent 5c0984b97d
commit 7094e46722

View File

@@ -11,6 +11,8 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_DIR="$(dirname "$SCRIPT_DIR")" PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
OPENWRT_VERSION="${OPENWRT_VERSION:-25.12.0-rc4}" OPENWRT_VERSION="${OPENWRT_VERSION:-25.12.0-rc4}"
PARAHUB_BUILD="1"
FIRMWARE_VERSION="${OPENWRT_VERSION}-ph${PARAHUB_BUILD}"
# ============================================================================ # ============================================================================
# Device Database (device → target/subtarget + Image Builder profile) # Device Database (device → target/subtarget + Image Builder profile)
@@ -174,7 +176,7 @@ build_firmware() {
cp -a "${PROJECT_DIR}/files/"* "$tmpfiles/" cp -a "${PROJECT_DIR}/files/"* "$tmpfiles/"
mkdir -p "$tmpfiles/etc/parahub" mkdir -p "$tmpfiles/etc/parahub"
echo "$FIRMWARE_ROLE" > "$tmpfiles/etc/parahub/role" echo "$FIRMWARE_ROLE" > "$tmpfiles/etc/parahub/role"
echo "$OPENWRT_VERSION" > "$tmpfiles/etc/parahub/version" echo "$FIRMWARE_VERSION" > "$tmpfiles/etc/parahub/version"
echo "$PROFILE" > "$tmpfiles/etc/parahub/profile" echo "$PROFILE" > "$tmpfiles/etc/parahub/profile"
echo "$PORT_MAP" > "$tmpfiles/etc/parahub/port_map" echo "$PORT_MAP" > "$tmpfiles/etc/parahub/port_map"
@@ -226,7 +228,7 @@ update_manifest() {
import json, sys import json, sys
with open('$manifest') as f: with open('$manifest') as f:
m = json.load(f) m = json.load(f)
m['version'] = '$OPENWRT_VERSION' m['version'] = '$FIRMWARE_VERSION'
m.setdefault('devices', {})['$PROFILE'] = { m.setdefault('devices', {})['$PROFILE'] = {
'sysupgrade': '$filename', 'sysupgrade': '$filename',
'sha256': '$sha256' 'sha256': '$sha256'
@@ -238,7 +240,7 @@ json.dump(m, sys.stdout, indent=2)
python3 -c " python3 -c "
import json, sys import json, sys
m = { m = {
'version': '$OPENWRT_VERSION', 'version': '$FIRMWARE_VERSION',
'devices': { 'devices': {
'$PROFILE': { '$PROFILE': {
'sysupgrade': '$filename', 'sysupgrade': '$filename',