From 5b2327629613b3abd56459c549cc7b3e9cde2390 Mon Sep 17 00:00:00 2001 From: Stavros Ntentos <133706+stdedos@users.noreply.github.com> Date: Thu, 29 Feb 2024 14:22:42 +0200 Subject: [PATCH] Build AppImage separately per OS Different OS'es have different `GLIBC_X.XX` versions. While installing extra libraries is of course maybe necessary, it is next-to-impossible (AFAIU) to install/compliment a diffent `GLIBC_X.XX` on non-flexible OSes such as Debian, Ubuntu, etc. If AppImage is unable to hide those differences, then we must diversify if we want to support a wider base. Fixes: https://github.com/brndnmtthws/conky/issues/1142 Fixes: https://github.com/brndnmtthws/conky/issues/1717 ... and probably others. Signed-off-by: Stavros Ntentos <133706+stdedos@users.noreply.github.com> --- .github/workflows/publish-appimage.yml | 31 +++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/.github/workflows/publish-appimage.yml b/.github/workflows/publish-appimage.yml index f08e62ab..3ca636b6 100644 --- a/.github/workflows/publish-appimage.yml +++ b/.github/workflows/publish-appimage.yml @@ -15,7 +15,12 @@ concurrency: jobs: build: - runs-on: ubuntu-22.04 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: + - ubuntu-20.04 + - ubuntu-22.04 permissions: contents: write discussions: write @@ -63,6 +68,9 @@ jobs: pip3 install --upgrade pyyaml - name: Checkout uses: actions/checkout@v4 + - name: Get git version + id: git-version + run: echo "GIT_VERSION=$(git describe --tags)" >> $GITHUB_ENV - name: Import GPG Deploy Key run: | echo "${{ secrets.GPG_DEPLOY_KEY }}" > appimage/secret.gpg @@ -72,18 +80,32 @@ jobs: - name: Upload AppImage artifact uses: actions/upload-artifact@v4 with: - name: conky-x86_64.AppImage + name: "conky-${{ matrix.os }}-${{ env.GIT_VERSION }}.AppImage" path: conky-x86_64.AppImage + if-no-files-found: error - name: Upload AppImage checksum artifact uses: actions/upload-artifact@v4 with: - name: conky-x86_64.AppImage.sha256 + name: "conky-${{ matrix.os }}-${{ env.GIT_VERSION }}.AppImage" path: conky-x86_64.AppImage.sha256 + if-no-files-found: error - name: Upload man page artifact uses: actions/upload-artifact@v4 with: name: conky.1.gz path: conky.1.gz + + release: + runs-on: ubuntu-latest + needs: build + steps: + - name: Download all artifacts + uses: actions/download-artifact@v4 + with: + # conky.1.gz is created by all jobs! + merge-multiple: true + path: ${{ github.workspace }}/artifacts + - name: Create Conky Release id: create_release uses: softprops/action-gh-release@v1 @@ -94,6 +116,5 @@ jobs: discussion_category_name: General generate_release_notes: true files: | - conky-x86_64.AppImage - conky-x86_64.AppImage.sha256 + conky-*.AppImage* conky.1.gz