From 178ffcbadb500996b743e1296d79cc42124c7e37 Mon Sep 17 00:00:00 2001 From: zyb Date: Thu, 19 Jun 2025 13:45:31 +0800 Subject: [PATCH] modified: .github/workflows/mikrotik_patch_7.yml modified: patch.py --- .github/workflows/mikrotik_patch_7.yml | 9 ++++----- patch.py | 7 +++++-- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/.github/workflows/mikrotik_patch_7.yml b/.github/workflows/mikrotik_patch_7.yml index 9ad00f4..13c8db6 100644 --- a/.github/workflows/mikrotik_patch_7.yml +++ b/.github/workflows/mikrotik_patch_7.yml @@ -144,12 +144,11 @@ jobs: echo "has_new_version=true" >> $GITHUB_OUTPUT wget -nv -O CHANGELOG https://${{ env.MIKRO_UPGRADE_URL }}/routeros/$LATEST_VERSION/CHANGELOG cat CHANGELOG - if [ "${{ matrix.arch }}" == "x86" ]; then - ARCH='' - elif [ "${{ matrix.arch }}" == "arm64" ]; then - ARCH='-arm64' + if [[ "${{ matrix.arch }}" == "arm64" ]]; then + echo "ARCH=-arm64" >> $GITHUB_ENV + else + echo "ARCH=" >> $GITHUB_ENV fi - echo "ARCH=$ARCH" >> $GITHUB_ENV echo "LATEST_VERSION=${LATEST_VERSION}" >> $GITHUB_ENV sudo apt-get update > /dev/null diff --git a/patch.py b/patch.py index eb8e81e..916ca24 100644 --- a/patch.py +++ b/patch.py @@ -22,7 +22,9 @@ def replace_key(old,new,data,name=''): old_chunks = [bytes([old[i]]) for i in key_map] new_chunks = [bytes([new[i]]) for i in key_map] data = replace_chunks(old_chunks, new_chunks, data,name) - if os.getenv('ARCH', 'x86').replace('-', '').strip() == 'arm64': + arch = os.getenv('ARCH') or 'x86' + arch = arch.replace('-', '') + if arch == 'arm64': old_chunks = [old[i:i+4] for i in range(0, len(old), 4)] new_chunks = [new[i:i+4] for i in range(0, len(new), 4)] old_bytes = old_chunks[4] + old_chunks[5] + old_chunks[2] + old_chunks[0] + old_chunks[1] + old_chunks[6] + old_chunks[7] @@ -285,7 +287,8 @@ def patch_loader(loader_file): from package import check_install_package check_install_package(['pyelftools']) from loader.patch_loader import patch_loader as do_patch_loader - arch = os.getenv('ARCH', 'x86').replace('-', '').strip() + arch = os.getenv('ARCH') or 'x86' + arch = arch.replace('-', '') do_patch_loader(loader_file,loader_file,arch) except ImportError as e: print(e)