Skip to content

fix(flatpak): source desktop metadata from in-repo packaging dir#5673

Merged
jamesarich merged 1 commit into
mainfrom
investigate/flatpak-verify-failure
May 30, 2026
Merged

fix(flatpak): source desktop metadata from in-repo packaging dir#5673
jamesarich merged 1 commit into
mainfrom
investigate/flatpak-verify-failure

Conversation

@jamesarich

Copy link
Copy Markdown
Collaborator

Problem

The Flatpak offline-verification job (verify-flatpak.ymlbuild-flatpak) started failing on 2026-05-30 with:

Failed to download sources: module meshtastic-desktop:
Can't find file at org.meshtastic.desktop.desktop

It had been green as recently as 2026-05-28 — nothing in this repo's app code changed the manifest in between.

Root cause (external/upstream)

Our overlay manifest scripts/verify-flatpak/desktop-offline.yaml pulled the desktop metadata as root-level type: file sources:

- type: file
  path: org.meshtastic.desktop.desktop
- type: file
  path: org.meshtastic.desktop.metainfo.xml
- type: file
  path: org.meshtastic.desktop.svg

Those paths resolve against the cloned upstream repo (vidplace7/org.meshtastic.desktop) that the workflow checks out, not our repo. On 2026-05-30 vid restructured that repo (commits #14 "Cleanup metainfo", #15, #16) to install the metadata directly from the Meshtastic-Android source tree (desktopApp/packaging/...) and removed the standalone root-level copies. vid's repo root no longer contains those files, so flatpak-builder can't find them.

This is unrelated to any app/feature change — it's pure upstream drift in the third-party packaging repo.

Fix

Mirror vid's current upstream manifest. The metadata already lives in our repo and is vendored into the build via the existing type: dir meshtastic-android source, so:

  • Install org.meshtastic.desktop.svg from desktopApp/packaging/icons/icon.svg
  • Install the .desktop / .metainfo.xml from desktopApp/packaging/linux/
  • Add the desktop-file-edit --set-key=Exec --set-value="meshtastic-wrapper.sh %U" fixup (the in-repo .desktop has Exec=meshtastic-desktop)
  • Remove the three stale root-level type: file sources

All offline-specific overlay differences (bundled Gradle dist, --offline, flatpak-sources.json, JBR-vendor sed, GRADLE_USER_HOME) are preserved.

Validation

  • YAML parses; the three referenced files exist under desktopApp/packaging/.
  • The change mirrors vid's known-good upstream manifest, and the existing build-commands already reference repo-root-relative paths (./gradlew, desktopApp/build.gradle.kts) that worked on 05-28 — so desktopApp/packaging/... resolves identically.
  • Not locally runnable on macOS: flatpak-builder's nested bwrap fails under Docker Desktop's seccomp sandbox, and --download-only doesn't execute build-commands. CI's Linux runners exercise the full offline build.

🤖 Generated with Claude Code

The offline-verify overlay manifest pulled the .desktop/.metainfo.xml/.svg
files via root-level `type: file` sources, which resolved against vid's
cloned upstream repo (vidplace7/org.meshtastic.desktop). As of 2026-05-30
vid restructured that repo (commits #14/#15/#16) to install the metadata
straight from the Meshtastic-Android source tree and dropped the standalone
root-level copies, so flatpak-builder now fails with:

    Failed to download sources: module meshtastic-desktop:
    Can't find file at org.meshtastic.desktop.desktop

Mirror vid's current upstream manifest: install the svg/desktop/metainfo from
`desktopApp/packaging/...` (provided by our `type: dir` meshtastic-android
source), add the `desktop-file-edit` Exec fixup, and remove the three stale
root-level `type: file` sources.

Note: the build-commands can't be exercised on macOS (flatpak-builder's nested
bwrap fails under Docker Desktop's seccomp sandbox; --download-only doesn't run
build-commands). Validated statically — YAML parses, referenced files exist in
`desktopApp/packaging/`, and the change mirrors vid's known-good manifest. CI's
Linux runners exercise the full build.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions github-actions Bot added the bugfix PR tag label May 30, 2026
@jamesarich jamesarich merged commit 5c0fe4e into main May 30, 2026
12 checks passed
@jamesarich jamesarich deleted the investigate/flatpak-verify-failure branch May 30, 2026 16:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugfix PR tag

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant