flatpak-builder-lint is a linter for flatpak-builder manifests, and more widely, also Flatpak builds. It is primarily developed for Flathub, but can be useful for other Flatpak repositories.
The latest build of flatpak-builder-linter can be used with Docker.
docker run --rm -it ghcr.io/flathub/flatpak-builder-lint:latest
You may need to pass the local data using --volume to check the chosen file
or repo.
flatpak-builder-lint is part of the org.flatpak.Builder flatpak package
available on Flathub. Set up Flatpak first, then install
org.flatpak.Builder:
flatpak install flathub -y org.flatpak.Builder
flatpak run --command=flatpak-builder-lint org.flatpak.Builder --helpThe flatpak package tracks the git commit currently used on the Flathub infrastructure.
Due to soft requirements for versions of external tools, flatpak-builder-lint locally is not recommended. If you know what you're doing, it can be installed using Poetry.
git clone https://github.com/flathub/flatpak-builder-lint
cd flatpak-builder-lint
poetry install 
poetry run flatpak-builder-lint --helpAdditional tools are required by subcommands and checks:
- flatpak-builderfor validating flatpak-builder manifests,
- ostreefor validating ostree repositories containing builds,
- appstream-utilfrom- appstream-glibfor validating AppStream.
usage: flatpak-builder-lint [-h] [--json] [--version] [--exceptions] [--appid APPID] {builddir,repo,manifest} path
A linter for Flatpak builds and flatpak-builder manifests
positional arguments:
  {builddir,repo,manifest}
                        type of artifact to lint
  path                  path to flatpak-builder manifest or Flatpak build directory
options:
  -h, --help            show this help message and exit
  --json                output in JSON format
  --version             show program's version number and exit
  --exceptions          skip allowed warnings or errors
  --appid APPID         override app ID