Skip to content

Commit 5453761

Browse files
committed
Add support for arm AppImage builds
1 parent 5f3c2ed commit 5453761

File tree

13 files changed

+234
-234
lines changed

13 files changed

+234
-234
lines changed

.github/workflows/build.yml

Lines changed: 29 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -174,9 +174,11 @@ jobs:
174174
- image: ubuntu-24.04
175175
name: x86_64
176176
dir: x64
177+
appimage: x86_64
177178
- image: ubuntu-24.04-arm
178179
name: arm64
179180
dir: arm64
181+
appimage: aarch64
180182
runs-on: ${{ matrix.arch.image }}
181183
defaults:
182184
run:
@@ -257,22 +259,29 @@ jobs:
257259
run: |
258260
bash scripts/build-rpm.sh -d ${{ matrix.arch.dir }} -b ${{ matrix.arch.name }}
259261
- name: Build .AppImage executable
260-
if: ${{ matrix.arch.name == 'x86_64' }}
261262
run: |
262-
wget -O appimage-builder.AppImage https://github.com/AppImageCrafters/appimage-builder/releases/download/v1.1.0/appimage-builder-1.1.0-x86_64.AppImage
263-
chmod +x appimage-builder.AppImage
264-
sudo mv appimage-builder.AppImage /usr/local/bin/appimage-builder
265-
appimage-builder --recipe AppImageBuilder.yml --skip-test
263+
wget -O appimagetool.AppImage https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-${{ matrix.arch.appimage }}.AppImage
264+
chmod +x appimagetool.AppImage
265+
# Build AppDir
266+
mkdir -p AppDir/usr/bin
267+
# move bundle folder to AppDir
268+
cp build/linux/${{ matrix.arch.dir }}/release/bundle/* AppDir/usr/bin/ -r
269+
mkdir -p AppDir/usr/share/icons/hicolor
270+
cp linux/debian/usr/share/icons/hicolor AppDir/usr/share/icons/ -r
271+
mkdir -p AppDir/usr/share/metainfo/
272+
cp linux/debian/usr/share/metainfo/dev.linwood.setonix.appdata.xml AppDir/usr/share/metainfo/
273+
mkdir -p AppDir/usr/share/applications/
274+
cp linux/debian/usr/share/applications/dev.linwood.setonix.desktop AppDir/usr/share/applications/
275+
ln -s usr/share/applications/dev.linwood.setonix.desktop AppDir/dev.linwood.setonix.desktop
276+
ln -s usr/bin/setonix AppDir/AppRun
277+
ln -s usr/share/icons/hicolor/256x256/apps/dev.linwood.setonix.png AppDir/dev.linwood.setonix.png
278+
# Build AppImage
279+
./appimagetool.AppImage AppDir linwood-setonix-linux-${{ matrix.arch.name }}.AppImage
266280
- name: Copy nessessary files
267281
run: |
268282
cp assets/images/logo.svg build/linux/${{ matrix.arch.dir }}/release/bundle/dev.linwood.setonix.svg
269283
mkdir -p build/linux/${{ matrix.arch.dir }}/release/bundle/usr/share
270284
cp -r linux/debian/usr/share build/linux/${{ matrix.arch.dir }}/release/bundle/usr
271-
- name: Rename AppImage
272-
if: ${{ matrix.arch.name == 'x86_64' }}
273-
run: |
274-
ls
275-
mv ./*.AppImage linwood-setonix-linux-${{ matrix.arch.name }}.AppImage
276285
- name: Copy portable start script
277286
run: |
278287
chmod +x scripts/start.sh
@@ -297,11 +306,10 @@ jobs:
297306
app/build/linwood-setonix-linux-${{ matrix.arch.name }}.rpm
298307
- name: Archive .AppImage
299308
uses: actions/upload-artifact@v4
300-
if: ${{ matrix.arch.name == 'x86_64' }}
301309
with:
302-
name: linux-x86_64-appimage
310+
name: linux-${{ matrix.arch.name }}-appimage
303311
path: |
304-
app/linwood-setonix-linux-x86_64.AppImage
312+
app/linwood-setonix-linux-${{ matrix.arch.name }}.AppImage
305313
build-flatpak:
306314
name: build-flatpak
307315
defaults:
@@ -446,7 +454,7 @@ jobs:
446454
- name: Setup node
447455
uses: actions/setup-node@v4
448456
with:
449-
node-version: 24
457+
node-version: 24.3.0
450458
- name: Install appdmg
451459
run: |
452460
python3 -m pip install setuptools
@@ -682,6 +690,9 @@ jobs:
682690
- uses: actions/download-artifact@v4
683691
with:
684692
name: linux-arm64-rpm
693+
- uses: actions/download-artifact@v4
694+
with:
695+
name: linux-arm64-appimage
685696
- uses: actions/download-artifact@v4
686697
with:
687698
name: linux-arm64-alternative-build
@@ -770,6 +781,7 @@ jobs:
770781
linwood-setonix-linux-alternative-arm64.tar.gz
771782
linwood-setonix-linux-arm64.deb
772783
linwood-setonix-linux-arm64.rpm
784+
linwood-setonix-linux-arm64.AppImage
773785
linwood-setonix-macos.zip
774786
linwood-setonix-macos.dmg
775787
linwood-setonix-android.apk
@@ -804,6 +816,7 @@ jobs:
804816
linwood-setonix-linux-alternative-arm64.tar.gz
805817
linwood-setonix-linux-arm64.deb
806818
linwood-setonix-linux-arm64.rpm
819+
linwood-setonix-linux-arm64.AppImage
807820
linwood-setonix-macos.zip
808821
linwood-setonix-macos.dmg
809822
linwood-setonix-android.apk
@@ -836,6 +849,7 @@ jobs:
836849
linwood-setonix-linux-alternative-arm64.tar.gz
837850
linwood-setonix-linux-arm64.deb
838851
linwood-setonix-linux-arm64.rpm
852+
linwood-setonix-linux-arm64.AppImage
839853
linwood-setonix-macos.zip
840854
linwood-setonix-macos.dmg
841855
linwood-setonix-android.apk
@@ -901,7 +915,7 @@ jobs:
901915
- name: Setup Fastlane
902916
uses: ruby/setup-ruby@v1
903917
with:
904-
ruby-version: "3.4.4"
918+
ruby-version: "3.4.5"
905919
bundler-cache: true
906920
working-directory: app/android
907921
- name: 🚀 Deploy to Play Store

.github/workflows/deploy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
- name: Use Node.js
2323
uses: actions/setup-node@v4
2424
with:
25-
node-version: 24
25+
node-version: 24.3.0
2626
cache: "pnpm"
2727
cache-dependency-path: docs/pnpm-lock.yaml
2828
- name: Install dependencies

.github/workflows/servers.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
- name: Use Node.js
2424
uses: actions/setup-node@v4
2525
with:
26-
node-version: 24
26+
node-version: 24.3.0
2727
cache: "pnpm"
2828
cache-dependency-path: docs/pnpm-lock.yaml
2929
- name: Install dependencies

api/pubspec.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -480,10 +480,10 @@ packages:
480480
dependency: transitive
481481
description:
482482
name: test_api
483-
sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00"
483+
sha256: ab2726c1a94d3176a45960b6234466ec367179b87dd74f1611adb1f3b5fb9d55
484484
url: "https://pub.dev"
485485
source: hosted
486-
version: "0.7.6"
486+
version: "0.7.7"
487487
timing:
488488
dependency: transitive
489489
description:

app/android/Gemfile.lock

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,19 @@ GEM
1111
artifactory (3.0.17)
1212
atomos (0.1.3)
1313
aws-eventstream (1.4.0)
14-
aws-partitions (1.1131.0)
15-
aws-sdk-core (3.226.3)
14+
aws-partitions (1.1132.0)
15+
aws-sdk-core (3.227.0)
1616
aws-eventstream (~> 1, >= 1.3.0)
1717
aws-partitions (~> 1, >= 1.992.0)
1818
aws-sigv4 (~> 1.9)
1919
base64
2020
jmespath (~> 1, >= 1.6.1)
2121
logger
22-
aws-sdk-kms (1.106.0)
23-
aws-sdk-core (~> 3, >= 3.225.0)
22+
aws-sdk-kms (1.107.0)
23+
aws-sdk-core (~> 3, >= 3.227.0)
2424
aws-sigv4 (~> 1.5)
25-
aws-sdk-s3 (1.193.0)
26-
aws-sdk-core (~> 3, >= 3.225.0)
25+
aws-sdk-s3 (1.194.0)
26+
aws-sdk-core (~> 3, >= 3.227.0)
2727
aws-sdk-kms (~> 1)
2828
aws-sigv4 (~> 1.5)
2929
aws-sigv4 (1.12.1)
@@ -230,4 +230,4 @@ DEPENDENCIES
230230
screengrab
231231

232232
BUNDLED WITH
233-
2.6.9
233+
2.7.1

docs/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
"@phosphor-icons/react": "^2.1.10",
1717
"@types/react": "^19.1.8",
1818
"@types/react-dom": "^19.1.6",
19-
"astro": "^5.12.0",
19+
"astro": "^5.12.1",
2020
"react": "^19.1.0",
2121
"react-dom": "^19.1.0",
2222
"remark-gemoji": "^8.0.0",

0 commit comments

Comments
 (0)