From 87ec9b36480a1e7143c81c3151427e46b42a0287 Mon Sep 17 00:00:00 2001 From: bbhtt Date: Sat, 16 May 2026 11:25:38 +0530 Subject: [PATCH 1/3] ci: Exercise -Werror in CI Only for non-wrap path as upstream projects in wraps are unmaintained --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 188bd938..f750ccd2 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -46,7 +46,7 @@ jobs: $(xargs < .github/dependencies.apt.txt) - name: Configure flatpak-builder - run: meson setup --wrap-mode nodownload ${CONFIG_OPTS} ${BUILDDIR} . + run: meson setup --wrap-mode nodownload ${CONFIG_OPTS} -Dwerror=true ${BUILDDIR} . - name: Build flatpak-builder with Meson run: meson compile -C ${BUILDDIR} From 8b41835299a3069e5eca0b29ff3972f918de7cc7 Mon Sep 17 00:00:00 2001 From: bbhtt Date: Tue, 19 May 2026 07:35:44 +0530 Subject: [PATCH 2/3] ci: Create dist tarball in PR worflow as well It's only run in the release workflow which runs on tag creation, this reduces the difference and verifies dist tarball works on PRs when changes are being landed. --- .github/workflows/check.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index f750ccd2..8064a677 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -51,6 +51,10 @@ jobs: - name: Build flatpak-builder with Meson run: meson compile -C ${BUILDDIR} + - name: Create dist tarball + run: | + meson dist --include-subprojects -C ${BUILDDIR} + - name: Upload docs # 7.0.0 uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f From 29218696f8dfb239804a851478a4e6de20835c34 Mon Sep 17 00:00:00 2001 From: bbhtt Date: Sat, 16 May 2026 11:06:46 +0530 Subject: [PATCH 3/3] ci: Use ubuntu 26.04 container Needed for new dependencies like appstream, GitHub is yet to make actions-images available for 26.04 This separates the "install dependencies" step into two as we need git installed before checkout action runs (otherwise it fetches archive using REST API but unless it is a git repo, meson dist inside it will not work). The container does not have git, the Ubuntu actions-images used to have git installed. --- .github/workflows/check.yml | 16 ++++++++++++---- .github/workflows/release.yml | 18 ++++++++++++++---- 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 8064a677..65f77bc9 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -21,6 +21,7 @@ jobs: check-meson: name: Ubuntu meson build runs-on: ${{ matrix.os }} + container: ubuntu:26.04 strategy: matrix: os: ['ubuntu-24.04'] @@ -33,15 +34,22 @@ jobs: CONFIG_OPTS: -Dinstalled_tests=true steps: + - name: Install dependencies + run: | + apt-get update + apt-get install -y git findutils + + - name: Set git safe directory + run: | + git config --global safe.directory "*" + - name: Check out flatpak-builder # 6.0.2 uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd - - name: Install Dependencies + - name: Install build dependencies run: | - sudo apt-get update - sudo apt-get install -y findutils - sudo apt-get install -y \ + apt-get install -y \ ${{ matrix.compiler }} \ $(xargs < .github/dependencies.apt.txt) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 5ee3fa6c..319aed1b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,20 +13,30 @@ jobs: release: name: Build and publish release runs-on: ubuntu-24.04 + container: ubuntu:26.04 permissions: contents: write steps: + - name: Install dependencies + run: | + apt-get update + apt-get install -y git findutils + + - name: Set git safe directory + run: | + git config --global safe.directory "*" + - name: Checkout repository # 6.0.2 uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd with: persist-credentials: false - - name: Install Dependencies + - name: Install build dependencies run: | - sudo apt-get update - sudo apt-get install -y findutils - sudo apt-get install -y \ + apt-get update + apt-get install -y findutils + apt-get install -y \ gcc \ perl \ jq \