Skip to content

Commit 4c432a0

Browse files
committed
Build AppImage for ARM64
1 parent 6de9190 commit 4c432a0

2 files changed

Lines changed: 21 additions & 10 deletions

File tree

.github/workflows/cppcmake-ubuntu.yml

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
fail-fast: false
2121
matrix:
2222
bundle: [SQLCipher, SQLite]
23-
os: [ubuntu-20.04]
23+
os: [ubuntu-20.04, ubuntu-22.04-arm]
2424
steps:
2525
- name: Checkout
2626
uses: actions/checkout@v4
@@ -30,6 +30,14 @@ jobs:
3030
with:
3131
packages: libqcustomplot-dev libqscintilla2-qt5-dev libqt5svg5 ninja-build qttools5-dev
3232

33+
# This is required by the operating system version, not the architecture.
34+
# Related: https://github.com/AppImage/AppImageKit/wiki/FUSE
35+
- if: matrix.os == 'ubuntu-22.04-arm'
36+
name: Install and cache 'libfuse2'
37+
uses: awalsh128/cache-apt-pkgs-action@v1.4.3
38+
with:
39+
packages: libfuse2
40+
3341
- if: matrix.bundle == 'SQLCipher'
3442
name: Build SQLCipher
3543
run: |
@@ -73,15 +81,15 @@ jobs:
7381

7482
- name: Build AppImage
7583
run: |
76-
wget -c -nv "https://github.com/linuxdeploy/linuxdeploy/releases/download/1-alpha-20240109-1/linuxdeploy-x86_64.AppImage"
77-
wget -c -nv "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/1-alpha-20240109-1/linuxdeploy-plugin-qt-x86_64.AppImage"
78-
chmod a+x linuxdeploy-x86_64.AppImage linuxdeploy-plugin-qt-x86_64.AppImage
84+
wget -c -nv "https://github.com/linuxdeploy/linuxdeploy/releases/download/1-alpha-20240109-1/linuxdeploy-$(uname -m).AppImage"
85+
wget -c -nv "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/1-alpha-20240109-1/linuxdeploy-plugin-qt-$(uname -m).AppImage"
86+
chmod a+x "linuxdeploy-$(uname -m).AppImage" "linuxdeploy-plugin-qt-$(uname -m).AppImage"
7987
if [ "${{ inputs.NIGHTLY }}" = "true" ]; then
8088
export VERSION=$(date +%Y%m%d)
8189
else
8290
export VERSION=$(printf "dev-`git -C . rev-parse --short HEAD`")
8391
fi
84-
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib" ./linuxdeploy-x86_64.AppImage --appdir=appdir --desktop-file=appdir/usr/share/applications/sqlitebrowser.desktop --plugin qt --output appimage
92+
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib" "./linuxdeploy-$(uname -m).AppImage" --appdir=appdir --desktop-file=appdir/usr/share/applications/sqlitebrowser.desktop --plugin qt --output appimage
8593
8694
- name: Rename a file
8795
run: |

installer/other/get_nightlies_from_github_actions.sh

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ DOWNLOAD_DIR="/tmp/incoming/"
1313
rm -rfv $DOWNLOAD_DIR
1414
mkdir -v $DOWNLOAD_DIR
1515

16-
if [ $(ls -l /nightlies/appimage /nightlies/win32 /nightlies/win64 /nightlies/macos-universal | grep -c "$(date +%Y%m%d)") ]; then
16+
if [ $(ls -l /nightlies/appimage /nightlies/appimage-arm64 /nightlies/win32 /nightlies/win64 /nightlies/macos-universal | grep -c "$(date +%Y%m%d)") ]; then
1717
echo "Nightly build already exists"
1818
exit 1
1919
fi
@@ -38,12 +38,13 @@ echo "Successfully downloaded the nightly build"
3838

3939
# Check if the downloaded files are as expected
4040
# This case is occuring when the nightly build is skipped
41-
if [ $(ls -l $DOWNLOAD_DIR | grep -c "$(date +%Y%m%d)") -ne 8 ]; then
41+
if [ $(ls -l $DOWNLOAD_DIR | grep -c "$(date +%Y%m%d)") -ne 10 ]; then
4242
echo "Last nightly build is skipped"
4343
exit 1
4444
fi
4545

46-
mv -v $DOWNLOAD_DIR*AppImage /nightlies/appimage/
46+
mv -v $DOWNLOAD_DIR*x86.64*AppImage /nightlies/appimage/
47+
mv -v $DOWNLOAD_DIR*aarch64*AppImage /nightlies/appimage-arm64/
4748
mv -v $DOWNLOAD_DIR*x86* /nightlies/win32/
4849
mv -v $DOWNLOAD_DIR*x64* /nightlies/win64/
4950
mv -v $DOWNLOAD_DIR*dmg /nightlies/macos-universal/
@@ -54,8 +55,10 @@ rm -v /nightlies/latest/*.msi
5455
rm -v /nightlies/latest/*.zip
5556

5657
DATE=$(date +%Y%m%d)
57-
ln -sv /nightlies/appimage/DB.Browser.for.SQLCipher-$(echo $DATE)-x86.64.AppImage /nightlies/latest/DB.Browser.for.SQLCipher.AppImage
58-
ln -sv /nightlies/appimage/DB.Browser.for.SQLite-$(echo $DATE)-x86.64.AppImage /nightlies/latest/DB.Browser.for.SQLite.AppImage
58+
ln -sv /nightlies/appimage/DB.Browser.for.SQLCipher-$(echo $DATE)-x86.64.AppImage /nightlies/latest/DB.Browser.for.SQLCipher-x86.64.AppImage
59+
ln -sv /nightlies/appimage/DB.Browser.for.SQLite-$(echo $DATE)-x86.64.AppImage /nightlies/latest/DB.Browser.for.SQLite-x86.64.AppImage
60+
ln -sv /nightlies/appimage-arm64/DB.Browser.for.SQLCipher-$(echo $DATE)-aarch64.AppImage /nightlies/latest/DB.Browser.for.SQLCipher-aarch64.AppImage
61+
ln -sv /nightlies/appimage-arm64/DB.Browser.for.SQLite-$(echo $DATE)-aarch64.AppImage /nightlies/latest/DB.Browser.for.SQLite-aarch64.AppImage
5962
ln -sv /nightlies/macos-universal/DB.Browser.for.SQLCipher-universal_$DATE.dmg /nightlies/latest/DB.Browser.for.SQLCipher-universal.dmg
6063
ln -sv /nightlies/macos-universal/DB.Browser.for.SQLite-universal_$DATE.dmg /nightlies/latest/DB.Browser.for.SQLite-universal.dmg
6164
ln -sv /nightlies/win32/DB.Browser.for.SQLite-$DATE-x86.msi /nightlies/latest/DB.Browser.for.SQLite-x86.msi

0 commit comments

Comments
 (0)