From 34dab17999b2f8f8d049ea43b63e5795ba399715 Mon Sep 17 00:00:00 2001 From: deepend-tildeclub <58404188+deepend-tildeclub@users.noreply.github.com> Date: Mon, 12 Jan 2026 23:05:11 -0700 Subject: [PATCH] Rename workflow for AppImage build --- .../.github/workflows/appimage-build.yml | 77 +++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 .github/workflows/.github/workflows/appimage-build.yml diff --git a/.github/workflows/.github/workflows/appimage-build.yml b/.github/workflows/.github/workflows/appimage-build.yml new file mode 100644 index 00000000..c40155ae --- /dev/null +++ b/.github/workflows/.github/workflows/appimage-build.yml @@ -0,0 +1,77 @@ +name: ZoiteChat AppImage Build + +on: + push: + branches: [master] + pull_request: + branches: [master] + +jobs: + appimage_build: + runs-on: ubuntu-24.04 + + steps: + - uses: actions/checkout@v4 + with: + submodules: true + + - name: Install build dependencies + run: | + set -eux + sudo apt-get update + sudo apt-get install -y --no-install-recommends \ + build-essential pkg-config meson ninja-build cmake \ + gettext \ + libcanberra-dev libdbus-glib-1-dev libglib2.0-dev libgtk2.0-dev \ + libluajit-5.1-dev libpci-dev libperl-dev libssl-dev \ + python3-dev python3-cffi mono-devel desktop-file-utils \ + patchelf file curl + + - name: Configure + run: | + set -eux + rm -rf build + meson setup build \ + --prefix=/usr \ + -Dtext-frontend=true \ + -Dtheme-manager=true \ + -Dauto_features=enabled + + - name: Build + run: | + set -eux + ninja -C build + + - name: Install to AppDir + run: | + set -eux + rm -rf AppDir + DESTDIR="${PWD}/AppDir" ninja -C build install + + - name: Build AppImage + env: + APPIMAGE_EXTRACT_AND_RUN: 1 + run: | + set -eux + curl -L -o linuxdeploy-x86_64.AppImage \ + https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage + curl -L -o linuxdeploy-plugin-gtk-x86_64.AppImage \ + https://github.com/linuxdeploy/linuxdeploy-plugin-gtk/releases/download/continuous/linuxdeploy-plugin-gtk-x86_64.AppImage + chmod +x linuxdeploy-x86_64.AppImage linuxdeploy-plugin-gtk-x86_64.AppImage + + VERSION="$(git describe --tags --always)" + ./linuxdeploy-x86_64.AppImage \ + --appdir AppDir \ + --desktop-file AppDir/usr/share/applications/io.github.Zoitechat.desktop \ + --icon-file AppDir/usr/share/icons/hicolor/48x48/apps/io.github.Zoitechat.png \ + --plugin gtk \ + --output appimage + + appimage_path=$(ls -1 *.AppImage | grep -v linuxdeploy | head -n 1) + mv "$appimage_path" "Zoitechat-${VERSION}-x86_64.AppImage" + + - name: Upload AppImage artifact + uses: actions/upload-artifact@v4 + with: + name: zoitechat-appimage + path: Zoitechat-*-x86_64.AppImage