Skip to content

feat(flathub): finalize Flathub manifest against the v1.9.4 .deb#267

Merged
kilbot merged 7 commits into
mainfrom
fix/flathub-finalize
Jun 12, 2026
Merged

feat(flathub): finalize Flathub manifest against the v1.9.4 .deb#267
kilbot merged 7 commits into
mainfrom
fix/flathub-finalize

Conversation

@kilbot

@kilbot kilbot commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Summary

With woocommerce-pos_1.9.4_amd64.deb now published (first Linux asset since 1.9.1, via #266), the Flathub submission assets can be finalized. This PR resolves every TODO in flathub/ and adds a CI workflow that validates the submission the way Flathub's own CI does.

Changes

flathub/com.wcpos.main.yml

  • extra-data now points at the real v1.9.4 asset with its actual sha256 (2b1c74db…) and size (95721396) — computed from the downloaded artifact. The asset name matches the existing x-checker-data url-template, so future releases auto-update.
  • Runtime/base bumped 24.0825.08 (BaseApp branch/25.08 verified to exist; 24.08 is approaching EOL and reviewers would flag it).

flathub/apply_extra.sh — bugfix: replaced ar x + tar xf with bsdtar. binutils ar is not present in the Freedesktop Platform runtime that apply_extra runs against at install time (only the Sdk), so the old script would have failed on every user install. bsdtar reads the .deb and its zstd data.tar directly and is the pattern used by other extra-data .deb manifests (e.g. com.google.Chrome). Verified the payload path usr/lib/woocommerce-pos/ against the real v1.9.4 .deb.

flathub/com.wcpos.main.metainfo.xml

  • Screenshot placeholder (404) replaced with the stable WordPress.org plugin-directory asset (2048×1536, verified reachable).
  • Added release entries for 1.9.2–1.9.4.

forge.config.ts / tag-and-release.yml — runtime/base/Sdk refs bumped to 25.08 to stay in sync with the manifest.

.github/workflows/flathub-validate.yml (new) — runs on PRs touching flathub/**: flatpak-builder-lint on manifest + AppStream, then a full org.flatpak.Builder build and install, which downloads the published .deb and runs apply_extra.sh end-to-end, then asserts the WooCommercePOS binary landed in the installed app. This PR itself exercises it.

Notes for the Flathub submission (after this merges)

  • --device=all (needed for raw USB receipt printers/cash drawers) may require a documented exception with Flathub reviewers — watch the lint step output on this PR.
  • StartupWMClass=WCPOS still needs confirming with xprop WM_CLASS on a running Linux build.
  • Submission itself: PR against flathub/flathub (new-pr flow) with the files from flathub/, then verify the app via the wcpos.com domain or GitHub org.

Validation

  • actionlint, xmllint, manifest YAML parse, sh -n, and esbuild TS parse all pass locally.
  • The new Flathub Validate workflow runs on this PR — its build+install step is the real test.

- Fill extra-data url/sha256/size from the published v1.9.4 .deb
- Fix apply_extra.sh: use bsdtar (binutils ar is not in the Platform runtime)
- Bump runtime/base 24.08 -> 25.08 (manifest, forge.config.ts, publish workflow)
- Real screenshot (WP.org asset) + 1.9.2-1.9.4 release entries in metainfo
- New flathub-validate.yml: flatpak-builder-lint + end-to-end extra-data install
@coderabbitai

coderabbitai Bot commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

@kilbot, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 56 minutes and 7 seconds. Learn how PR review limits work.

To continue reviewing without waiting, purchase usage credits in the billing tab.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: wcpos/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 19c992e3-1d19-4b99-a67e-b1311180b62c

📥 Commits

Reviewing files that changed from the base of the PR and between 65343c8 and 5e43110.

📒 Files selected for processing (7)
  • .github/workflows/flathub-validate.yml
  • .github/workflows/tag-and-release.yml
  • flathub/apply_extra.sh
  • flathub/com.wcpos.main.desktop
  • flathub/com.wcpos.main.metainfo.xml
  • flathub/com.wcpos.main.yml
  • forge.config.ts
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/flathub-finalize

Comment @coderabbitai help to get the list of available commands and usage tips.

kilbot added 6 commits June 12, 2026 20:36
flatpak-builder-lint rejects --socket=x11 combined with wayland/fallback-x11;
fallback-x11 covers X11-only sessions. The appid-url-not-reachable error is
wcpos.com bot protection returning 403 to the linter — tolerated with a
warning in CI, must be resolved (WAF or linter exception) before submission.
flatpak-builder's internal flatpak install calls need a D-Bus session bus,
which headless runners lack.
flatpak-builder --install runs apply_extra inside the org.flatpak.Builder
sandbox where nested user namespaces are blocked. Export to a local repo and
install from the host instead (the split Flathub CI uses).
…ble window

The Xvfb check disproved StartupWMClass=WCPOS: the app's windows report
classes 'wcpos' and 'WooCommercePOS', never 'WCPOS'. The check now reports
map state + geometry per window and asserts against visible windows only.
@kilbot kilbot merged commit 2ea958c into main Jun 12, 2026
8 checks passed
@kilbot kilbot deleted the fix/flathub-finalize branch June 12, 2026 19:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant