Skip to content

Improve Appstream metadata for Flathub and introduce CMake option for Flathub offline builds - #1056

Open
AlexanderRitter02 wants to merge 2 commits into
rgriebl:mainfrom
AlexanderRitter02:flathub-preparation
Open

Improve Appstream metadata for Flathub and introduce CMake option for Flathub offline builds#1056
AlexanderRitter02 wants to merge 2 commits into
rgriebl:mainfrom
AlexanderRitter02:flathub-preparation

Conversation

@AlexanderRitter02

@AlexanderRitter02 AlexanderRitter02 commented Jun 1, 2026

Copy link
Copy Markdown

This pull request shows off some ready changes that would make it possible to submit the application to Flathub.

The idea and process I have described in issue #1057
For details, please refer to it.

Again, hoping this helps and is not too overwhelming all at once, it is only everything submitted at once since I have already done it and feel like it would be incomplete if I were to only suggest some parts first.
Feel free to give feedback and suggest any changes, I will quickly remedy them.

Some details I feel are worth mentioning:

  • The commits too have extensive descriptions of what I did.
  • I removed the program name in the DESCRIPTION field as per: https://docs.flathub.org/docs/for-app-authors/metainfo-guidelines/quality-guidelines#dont-repeat-the-name, and it seems unnecessary even for the other usages of DESCRIPTION as one always sees the appname too
  • Other metainfo changes follow the outputs of validation tools like appstreamcli validate --pedantic <file> and flatpak run --command=flatpak-builder-lint org.flatpak.Builder appstream <file>. I put exact details on each point into the commit description as well.
  • The FLATHUB_NETWORK_OFF option is specifically built for a Flatpak build that pulls in QAdwaitaDecoration, QCoro and Sentry in respective directories under _deps/ (as done in my suggested dev.brickstore.BrickStore.yml ).

a) Appstream validation
   using 'appstreamcli validate --pedantic dev.brickstore.BrickStore.metainfo.xml':
   - developer-info-missing: Added the developer tag
   - description-para-markup-invalid ul: Added closing </p> paragraphs elements before unordered list <ul> in the description

b) Flathub guidelines
   https://docs.flathub.org/docs/for-app-authors/metainfo-guidelines
   and validated using Flatpak linter: 'flatpak run --command=flatpak-builder-lint org.flatpak.Builder appstream dev.brickstore.BrickStore.metainfo.xml'
   - Removed screenshots of BrickStore in other operating systems
   - Added a caption to the screenshot
   - Supplement <url's with sources, the translation page and bugtracker
   - Added a brand colors based on the app icon color: https://docs.flathub.org/docs/for-app-authors/metainfo-guidelines/quality-guidelines#good-brand-colors
The FLATHUB_NETWORK_OFF option works _specifically_ *only* for Flatpak builds.

It disables FetchContent used for QCoro, QAdwaitaDecorations & BuildSentry,
and REQUIRES the sources for those to be in a specific "_deps" directory for the CMake build.
These sources are provided in the Flatpak manifest for the build process.
@AlexanderRitter02

Copy link
Copy Markdown
Author

Sorry, forgot. Here is how the branding colors would look like using the Flathub preview.

I chose it as recommended based on the icon color by simply lightening it up using a website, and then using a darker tint modified a bit more to contrast with the icon for the dark scheme.
image

@rgriebl
rgriebl force-pushed the main branch 4 times, most recently from 7c44b29 to a29ff85 Compare July 27, 2026 23:45
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