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 only supported ways to install and use it are Docker and Flatpak.
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.
Installing flatpak-builder-lint locally with Poetry or pip is
not recommended unless for development purposes. It depends on patches
that are found in the org.flatpak.Builder flatpak package
and on external tools.
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,appstreamclifromorg.flatpak.Builderfor validating MetaInfo files,desktop-file-validateto validate desktop files.
usage: flatpak-builder-lint [-h] [--version] [--exceptions] [--appid APPID] [--cwd] [--ref REF] {builddir,repo,manifest,appstream} path
A linter for Flatpak builds and flatpak-builder manifests
positional arguments:
{builddir,repo,manifest,appstream}
type of artifact to lint
path path to artifact
options:
-h, --help show this help message and exit
--version show program's version number and exit
--exceptions skip allowed warnings or errors
--appid APPID override app ID
--cwd override the path parameter with current working directory
--ref REF override the primary ref detection
If you consider the detected issues incorrect, please report it here: https://github.com/flathub/flatpak-builder-lint
A list of errors and warnings and their explanations are available in the Flatpak builder lint page.