diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1b2c2298..0b63a218 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -10,8 +10,8 @@ jobs: build: strategy: matrix: - platform: [amd64, arm64] - runs-on: ubuntu-20.04 + platform: [amd64, arm64, arm] + runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4.1.1 @@ -21,11 +21,14 @@ jobs: with: go-version: '1.21' - - name: Install dependencies for arm64 - if: matrix.platform == 'arm64' + - name: Install dependencies for arm64 and arm + if: matrix.platform == 'arm64' || matrix.platform == 'arm' run: | sudo apt-get update sudo apt install gcc-aarch64-linux-gnu + if [ "${{ matrix.platform }}" == "arm" ]; then + sudo apt install gcc-arm-linux-gnueabihf + fi - name: Build x-ui run: | @@ -34,6 +37,8 @@ jobs: export GOARCH=${{ matrix.platform }} if [ "${{ matrix.platform }}" == "arm64" ]; then export CC=aarch64-linux-gnu-gcc + elif [ "${{ matrix.platform }}" == "arm" ]; then + export CC=arm-linux-gnueabihf-gcc fi go build -o xui-release -v main.go @@ -50,10 +55,14 @@ jobs: wget https://github.com/XTLS/Xray-core/releases/download/v1.8.6/Xray-linux-64.zip unzip Xray-linux-64.zip rm -f Xray-linux-64.zip - else + elif [ "${{ matrix.platform }}" == "arm64" ]; then wget https://github.com/XTLS/Xray-core/releases/download/v1.8.6/Xray-linux-arm64-v8a.zip unzip Xray-linux-arm64-v8a.zip rm -f Xray-linux-arm64-v8a.zip + else + wget https://github.com/XTLS/Xray-core/releases/latest/download/Xray-linux-arm32-v7a.zip + unzip Xray-linux-arm32-v7a.zip + rm -f Xray-linux-arm32-v7a.zip fi rm -f geoip.dat geosite.dat geoip_IR.dat geosite_IR.dat wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat