From dd131100142f57476c60ae8f47cd5b6baeb42a97 Mon Sep 17 00:00:00 2001 From: Dan Paulat Date: Wed, 27 Dec 2023 23:32:59 -0600 Subject: [PATCH 1/2] Initial AppImage creation --- .github/workflows/ci.yml | 42 ++++++++++++++++++++++++-- scwx-qt/res/linux/supercell-wx.desktop | 7 +++++ 2 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 scwx-qt/res/linux/supercell-wx.desktop diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e30a339c..16ff56ed 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -58,6 +58,7 @@ jobs: env: CC: ${{ matrix.env_cc }} CXX: ${{ matrix.env_cxx }} + SCWX_VERSION: v0.3.0 runs-on: ${{ matrix.os }} steps: @@ -151,9 +152,13 @@ jobs: cd lib/ ln -s libssl.so.3 libssl.so cd .. - mkdir -p plugins/sqldrivers/ - cd plugins/sqldrivers/ - cp "${RUNNER_WORKSPACE}/Qt/${{ matrix.qt_version }}/${{ matrix.qt_arch }}/plugins/sqldrivers/libqsqlite.so" . + mkdir -p plugins/ + cd plugins/ + mkdir -p platformthemes/ + mkdir -p sqldrivers/ + cp "${RUNNER_WORKSPACE}/Qt/${{ matrix.qt_version }}/${{ matrix.qt_arch }}/plugins/platformthemes/libqgtk3.so" platformthemes/ + cp "${RUNNER_WORKSPACE}/Qt/${{ matrix.qt_version }}/${{ matrix.qt_arch }}/plugins/sqldrivers/libqsqlite.so" sqldrivers/ + cd .. popd tar -czf supercell-wx-${{ matrix.artifact_suffix }}.tar.gz supercell-wx/ @@ -187,6 +192,37 @@ jobs: ${{ github.workspace }}/build/bin/*.debug ${{ github.workspace }}/build/lib/*.debug + - name: Build AppImage (Linux) + if: matrix.os == 'ubuntu-22.04' + env: + APPIMAGE_DIR: ${{ github.workspace }}/supercell-wx/ + LDAI_UPDATE_INFORMATION: gh-releases-zsync|dpaulat|supercell-wx|latest|*x86_64.AppImage.zsync + LDAI_OUTPUT: supercell-wx-${{ env.SCWX_VERSION }}-x86_64.AppImage + LINUXDEPLOY_OUTPUT_APP_NAME: supercell-wx + LINUXDEPLOY_OUTPUT_VERSION: ${{ env.SCWX_VERSION }} + shell: bash + run: | + wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage + chmod +x linuxdeploy-x86_64.AppImage + cp "${{ github.workspace }}/source/scwx-qt/res/icons/scwx-256.png" supercell-wx.png + cp "${{ github.workspace }}/source/scwx-qt/res/linux/supercell-wx.desktop" . + pushd "${{ env.APPIMAGE_DIR }}" + mkdir -p usr/ + mv bin/ usr/ + mv lib/ usr/ + mv plugins/ usr/ + popd + ./linuxdeploy-x86_64.AppImage --appdir ${{ env.APPIMAGE_DIR }} -i supercell-wx.png -d supercell-wx.desktop + ./linuxdeploy-x86_64.AppImage --appdir ${{ env.APPIMAGE_DIR }} --output appimage + rm -f linuxdeploy-x86_64.AppImage + + - name: Upload AppImage (Linux) + if: matrix.os == 'ubuntu-22.04' + uses: actions/upload-artifact@v4 + with: + name: supercell-wx-appimage-x64 + path: ${{ github.workspace }}/*-x86_64.AppImage* + - name: Test Supercell Wx working-directory: ${{ github.workspace }}/build env: diff --git a/scwx-qt/res/linux/supercell-wx.desktop b/scwx-qt/res/linux/supercell-wx.desktop new file mode 100644 index 00000000..8f8f6ec6 --- /dev/null +++ b/scwx-qt/res/linux/supercell-wx.desktop @@ -0,0 +1,7 @@ +[Desktop Entry] +Type=Application +Name=Supercell Wx +Comment=Weather Radar and Data Viewer +Exec=supercell-wx +Icon=supercell-wx +Categories=Network;Science; From 14c48e1568819a556c5fbac3619cee6bea080c95 Mon Sep 17 00:00:00 2001 From: Dan Paulat Date: Thu, 28 Dec 2023 00:11:41 -0600 Subject: [PATCH 2/2] AppImage requires fuse --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 16ff56ed..0dd65934 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -91,6 +91,7 @@ jobs: shell: bash run: | sudo apt-get install doxygen \ + libfuse2 \ ninja-build - name: Setup Python Environment