@@ -173,9 +173,69 @@ jobs:
173173 name : redc-gui-linux
174174 path : build/bin/redc-gui-linux-amd64.tar.gz
175175
176+ build-linux-arm64 :
177+ runs-on : ubuntu-latest
178+ steps :
179+ - name : Checkout Source Code
180+ uses : actions/checkout@v4
181+
182+ - name : Setup Go Environment
183+ uses : actions/setup-go@v5
184+ with :
185+ go-version : ${{ env.GO_VERSION }}
186+
187+ - name : Setup Node.js
188+ uses : actions/setup-node@v4
189+ with :
190+ node-version : ${{ env.NODE_VERSION }}
191+
192+ - name : Install Linux dependencies (arm64)
193+ run : |
194+ sudo apt-get update
195+ sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev build-essential pkg-config gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
196+
197+ - name : Get npm cache directory
198+ id : npm-cache-dir
199+ run : echo "dir=$(npm config get cache)" >> $GITHUB_OUTPUT
200+
201+ - name : Cache npm dependencies
202+ uses : actions/cache@v4
203+ with :
204+ path : ${{ steps.npm-cache-dir.outputs.dir }}
205+ key : ${{ runner.os }}-npm-${{ hashFiles('frontend/package-lock.json') }}
206+ restore-keys : |
207+ ${{ runner.os }}-npm-
208+
209+ - name : Install Wails
210+ run : go install github.com/wailsapp/wails/v2/cmd/wails@latest
211+
212+ - name : Install frontend dependencies
213+ run : |
214+ cd frontend
215+ npm install
216+
217+ - name : Build Linux arm64
218+ run : wails build -platform linux/arm64 -tags webkit2_41
219+ env :
220+ CGO_ENABLED : 1
221+ CC : aarch64-linux-gnu-gcc
222+ CXX : aarch64-linux-gnu-g++
223+ GOARCH : arm64
224+
225+ - name : Package as tar.gz
226+ run : |
227+ cd build/bin
228+ tar -czf redc-gui-linux-arm64.tar.gz redc-gui
229+
230+ - name : Upload Artifact
231+ uses : actions/upload-artifact@v4
232+ with :
233+ name : redc-gui-linux-arm64
234+ path : build/bin/redc-gui-linux-arm64.tar.gz
235+
176236 release :
177237 runs-on : ubuntu-latest
178- needs : [build-macos, build-windows, build-linux]
238+ needs : [build-macos, build-windows, build-linux, build-linux-arm64 ]
179239 steps :
180240 - name : Checkout Source Code
181241 uses : actions/checkout@v4
@@ -198,13 +258,20 @@ jobs:
198258 name : redc-gui-linux
199259 path : dist/linux
200260
261+ - name : Download Linux arm64 Artifact
262+ uses : actions/download-artifact@v4
263+ with :
264+ name : redc-gui-linux-arm64
265+ path : dist/linux-arm64
266+
201267 - name : Release
202268 uses : softprops/action-gh-release@v2
203269 with :
204270 files : |
205271 dist/macos/*
206272 dist/windows/*
207273 dist/linux/*
274+ dist/linux-arm64/*
208275 generate_release_notes : true
209276 overwrite : true
210277 env :
0 commit comments