[vlc-commits] [Git][videolan/vlc][3.0.x] ci: fix and improve flatpak build
Felix Paul Kühne (@fkuehne)
gitlab at videolan.org
Sun May 31 12:24:15 UTC 2026
Felix Paul Kühne pushed to branch 3.0.x at VideoLAN / VLC
Commits:
63f835a0 by Mathieu Velten at 2026-05-31T13:05:37+02:00
ci: fix and improve flatpak build
- normalize how we build and merge the repos of the 2 archs
- fix the manifest, GIT_HASH was never replaced
- remove expire on artifacts even if they are temporary, since
build stages can be relaunch later if they fail
- - - - -
3 changed files:
- extras/ci/gitlab-ci.yml
- extras/package/flatpak/org.videolan.VLC.yaml
- extras/package/flatpak/vlc-fix-appdata.patch → extras/package/flatpak/vlc-appdata-manifest-url.patch
Changes:
=====================================
extras/ci/gitlab-ci.yml
=====================================
@@ -350,17 +350,18 @@ nightly-debian:
FLATPAK_BRANCH: 3.0.x
MANIFEST_PATH: extras/package/flatpak/org.videolan.VLC.yaml
script:
- - flatpak-builder-lint --exceptions manifest ${MANIFEST_PATH}
+ - flatpak-builder-lint --exceptions --exceptions-repo stable manifest ${MANIFEST_PATH}
- flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
- - flatpak-builder --default-branch ${FLATPAK_BRANCH} --user --install-deps-from=flathub --disable-rofiles-fuse --disable-updates --force-clean --ccache --mirror-screenshots-url=https://dl.flathub.org/media/ build-${HOST_ARCH} ${MANIFEST_PATH}
+ - flatpak-builder --default-branch ${FLATPAK_BRANCH} --install-deps-from=flathub --user --arch=${HOST_ARCH} --force-clean --disable-rofiles-fuse --ccache --mirror-screenshots-url=https://dl.flathub.org/media --compose-url-policy=full --repo=repo-${HOST_ARCH} build ${MANIFEST_PATH}
+ - flatpak build-bundle --runtime-repo=https://dl.flathub.org/repo/flathub.flatpakrepo repo-${HOST_ARCH} org.videolan.VLC_${HOST_ARCH}.flatpak org.videolan.VLC ${FLATPAK_BRANCH}
cache:
key: flatpak-ccache-${HOST_ARCH}
paths:
- .flatpak-builder/ccache/
artifacts:
paths:
- - build-${HOST_ARCH}
- expire_in: 1 day
+ - repo-${HOST_ARCH}
+ - org.videolan.VLC_${HOST_ARCH}.flatpak
flatpak-x86_64:
extends: .flatpak-common
@@ -416,17 +417,19 @@ flatpak-repo:
name: $VLC_FLATPAK_IMAGE
entrypoint: [""]
script:
- - flatpak build-export --exclude=/lib/debug/* --include=/lib/debug/app repo build-x86_64
- - flatpak build-export --metadata=metadata.debuginfo --files=files/lib/debug repo build-x86_64
- - flatpak build-export --exclude=/lib/debug/* --include=/lib/debug/app repo build-aarch64
- - flatpak build-export --metadata=metadata.debuginfo --files=files/lib/debug repo build-aarch64
- - ostree commit --repo=repo --canonical-permissions --branch=screenshots/x86_64 build-x86_64/files/share/app-info/media
- - ostree commit --repo=repo --canonical-permissions --branch=screenshots/aarch64 build-aarch64/files/share/app-info/media
- - flatpak-builder-lint --exceptions repo repo || true
+ - ostree init --repo=repo --mode archive-z2
+ - for ref in $(ostree --repo=repo-x86_64 refs); do
+ flatpak build-commit-from --no-update-summary --disable-fsync --src-repo=repo-x86_64 repo "$ref";
+ done
+ - for ref in $(ostree --repo=repo-aarch64 refs); do
+ flatpak build-commit-from --no-update-summary --disable-fsync --src-repo=repo-aarch64 repo "$ref";
+ done
+ - flatpak build-update-repo --generate-static-deltas --static-delta-ignore-ref=*.Debug --static-delta-ignore-ref=*.Sources repo
+ - flatpak-builder-lint --exceptions --exceptions-repo stable repo repo
+ - tar -czf repository.tar.gz repo/
artifacts:
paths:
- - repo
- expire_in: 1 week
+ - repository.tar.gz
dependencies:
- flatpak-x86_64
- flatpak-aarch64
=====================================
extras/package/flatpak/org.videolan.VLC.yaml
=====================================
@@ -107,7 +107,7 @@ modules:
skip:
- contrib
- type: patch
- path: vlc-fix-appdata.patch
+ path: vlc-appdata-manifest-url.patch
- type: file
path: vlc.sh
=====================================
extras/package/flatpak/vlc-fix-appdata.patch → extras/package/flatpak/vlc-appdata-manifest-url.patch
=====================================
@@ -1,3 +1,15 @@
+diff --git a/share/Makefile.am b/share/Makefile.am
+index a6c0ac1083..f06f062369 100644
+--- a/share/Makefile.am
++++ b/share/Makefile.am
+@@ -24,6 +24,7 @@ CLEANFILES += $(desktop_DATA) $(appdata_DATA)
+ $(AM_V_at)mv -f tmp-$@ $@
+
+ org.videolan.vlc.appdata.xml: org.videolan.vlc.appdata.xml.in
++ sed -i -e "s,\@GIT_HASH\@,$$(git rev-parse HEAD),g" $<
+ $(AM_V_GEN)$(MSGFMT) --xml --template $< -d $(top_srcdir)/po -o $@ || cp $< $@
+
+ iconsdatadir = $(datadir)/icons/hicolor
diff --git a/share/org.videolan.vlc.appdata.xml.in.in b/share/org.videolan.vlc.appdata.xml.in.in
index 62bd7ee443..28fc24fd94 100644
--- a/share/org.videolan.vlc.appdata.xml.in.in
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/63f835a00913f8c515f33a0a2f8ece296344c958
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/63f835a00913f8c515f33a0a2f8ece296344c958
You're receiving this email because of your account on code.videolan.org. Manage all notifications: https://code.videolan.org/-/profile/notifications | Help: https://code.videolan.org/help
More information about the vlc-commits
mailing list