aetherpak/AetherPak Flatpak Registry Publisher

Build a Flatpak, push OCI layers to a registry, update the static index, and publish it to GitHub Pages.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Activelast commit Jun 19, 2026
License
MIT

Pinned Snippet

workflow.ymlSHA-pinned
uses: aetherpak/actions@52e530594cb15184200d988aac90e3d9efa8a1f8 # v3.11.2

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
manifest-pathPath to the Flatpak manifest (JSON/YAML) within the checked-out sources.no""
prebuilt-bundle-pathPath to a pre-built .flatpak bundle file (alternative to manifest-path).no""
prebuilt-repo-pathPath to an existing OSTree repository directory (alternative to manifest-path).no""
app-idReverse-DNS app id (fallback if not building/resolving from repository).no""
branchFlatpak branch (channel). When unset: 'stable' on tag pushes, 'beta' on the default branch, else the git ref name.no""
archFlatpak CPU architecture (e.g. x86_64, aarch64).nox86_64
run-linterWhether to run flathub manifest and repository linters.notrue
cacheWhether to cache flatpak runtimes and builder files.notrue
repo-pathThe OSTree repository path.no_repo
builder-argsExtra flatpak-builder flags for manifest builds, one per line (e.g. --install-deps-from=flathub). Ignored for bundle/repo imports.no""
upload-bundleExport the built application as a single .flatpak bundle and upload it as a workflow artifact.nofalse
registryOCI registry host (e.g. ghcr.io).noghcr.io
insecure-registryWhether to skip TLS verification for the OCI registry (default: false).nofalse
oci-repositoryTarget registry repository path without host (defaults to GITHUB_REPOSITORY).no""
pages-urlThe final public URL where Pages will serve this (e.g. https://owner.github.io/repo).no""
registry-tokenRegistry auth token (defaults to the GitHub token, used for GHCR). If blank, login is skipped.no${{ github.token }}
upload-pages-artifactWhether to upload the generated website as a GitHub Pages artifact.notrue
landing-pageWrite the static landing page (index.html). Set false to use your own page built from index/static.notrue
pages-artifact-nameThe name of the uploaded Pages artifact.nogithub-pages
site-dirThe directory where the landing page, index, and repo files are generated.no_site
signingImage signing mode: auto (sign iff a key is set), gpg (require a key), or off.noauto
gpg-private-keyASCII-armored GPG private key used to sign images. Empty disables signing under 'auto'.no""
gpg-private-key-passphrasePassphrase for the GPG private key, if it is protected.no""
sig-dirSite-relative directory for signatures, the public key, and signing.json.nosigs
runtime-repoRuntimeRepo URL written into each .flatpakref so one-click installs can fetch the app's runtime. Empty omits it.nohttps://dl.flathub.org/repo/flathub.flatpakrepo
refs-dirSite-relative directory for the generated per-app .flatpakref files.norefs
site-subpathOptional subdirectory under site-dir to structure the repository files (e.g. flatpak).no""
remote-nameFlatpak remote name and .flatpakrepo filename. Defaults to '<owner>-<repo>'.no""
cli-versionaetherpak CLI version to install if missing (ignored if already on PATH).nov0.32.0
cache-keyCustom cache key prefix for caching build state. When unset, a default prefix including the manifest hash is used.no""
cache-stateCache flatpak-builder state (downloads and built modules).notrue
cache-ccacheCache ccache compiler artifacts.notrue
cache-build-dirCache flatpak-builder build directories (requires --keep-build-dirs in builder-args).nofalse
namedescription
repo-pathPath to the OSTree repository containing the application.
app-idResolved Reverse-DNS Application ID.
branchResolved Flatpak branch.
archResolved application architecture.
bundle-pathPath to the generated .flatpak bundle (only if manifest-path was set).
bundle-artifact-nameName of the uploaded bundle artifact (only if manifest-path was set and upload-bundle is true).
signing-pathWhich signing path ran: 'gpg' or 'off'.
public-key-urlPublic URL of the exported public key, or empty when unsigned.
signature-lookaside-urlPublic URL of the signature lookaside directory, or empty when unsigned.