From c537398ebe75dd1d1e34ab2d92f95c86fd83cd32 Mon Sep 17 00:00:00 2001 From: remittor Date: Thu, 18 Jan 2024 16:41:16 +0300 Subject: [PATCH] Add patch for DISTRIB_DESCRIPTION option --- hook_prepare_rootfs.sh | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/hook_prepare_rootfs.sh b/hook_prepare_rootfs.sh index 08faf05..c8f4b88 100755 --- a/hook_prepare_rootfs.sh +++ b/hook_prepare_rootfs.sh @@ -39,7 +39,12 @@ die() { get_param_q() { local param=$1 local filename="$2" - echo $( grep -o -P "(?<=^$param=').*(')" "$filename" 2>/dev/null ) + echo $( grep -o -P "^$param='\K[^']+" "$filename" 2>/dev/null ) + #echo $( grep -o -P "(?<=^$param=').*(')" "$filename" 2>/dev/null ) +} + +del_last_word() { + echo -n "${@:1:$#-1}" } @@ -62,6 +67,17 @@ if [ -z "$FULL_VERSION" ]; then die "Firmware version not found!" fi +FULL_VERSION=$( grep -oP "^DISTRIB_RELEASE='\K[^']+" "$FW_VER_FN" 2>/dev/null ) +DISTR_DESC=$( grep -oP "^DISTRIB_DESCRIPTION='\K[^']+" "$FW_VER_FN" 2>/dev/null ) +DISTR_DATE_LEN=$( echo -n "$DISTR_DESC" | awk '{print $NF}' | tr -d '\n' | wc -c ) +if [ "$DISTR_DATE_LEN" = 6 ]; then + DISTR_DESC=$( del_last_word $DISTR_DESC ) +fi +sed -i "/DISTRIB_DESCRIPTION=/d" "$FW_VER_FN" +CURDATE=$( date --utc +%y%m%d | tr -d '\n' ) +echo "DISTRIB_DESCRIPTION='$DISTR_DESC $CURDATE'" >> "$FW_VER_FN" +log_msg "Option DISTRIB_DESCRIPTION patched (DATE = $CURDATE)" + FW_ARCH=$( get_param_q DISTRIB_ARCH "$FW_VER_FN" ) #log_msg "FW_ARCH: '$FW_ARCH'" if [ -z "$FW_ARCH" ]; then