Provided by: flatpak_1.4.3-1_amd64 bug

NAME

       flatpak-build-export - Create a repository from a build directory

SYNOPSIS

       flatpak build-export [OPTION...] LOCATION DIRECTORY [BRANCH]

DESCRIPTION

       Creates or updates a repository with an application build.  LOCATION is the location of
       the repository.  DIRECTORY must be a finalized build directory. If BRANCH is not
       specified, it is assumed to be "master".

       If LOCATION exists, it is assumed to be an OSTree repository, otherwise a new OSTree
       repository is created at this location. The repository can be inspected with the ostree
       tool.

       The contents of DIRECTORY are committed on the branch with name app/APPNAME/ARCH/BRANCH,
       where ARCH is the architecture of the runtime that the application is using. A commit
       filter is used to enforce that only the contents of the files/ and export/ subdirectories
       and the metadata file are included in the commit, anything else is ignored.

       When exporting a flatpak to be published to the internet, --collection-id=COLLECTION-ID
       should be specified as a globally unique reverse DNS value to identify the collection of
       flatpaks this will be added to. Setting a globally unique collection ID allows the apps in
       the repository to be shared over peer to peer systems without needing further
       configuration.

       The build-update-repo command should be used to update repository metadata whenever
       application builds are added to a repository.

OPTIONS

       The following options are understood:

       -h, --help
           Show help options and exit.

       -s, --subject=SUBJECT
           One line subject for the commit message.

       -b, --body=BODY
           Full description for the commit message.

       --collection-id=COLLECTION-ID
           Set as the collection ID of the repository. Setting a globally unique collection ID
           allows the apps in the repository to be shared over peer to peer systems without
           needing further configuration. If exporting to an existing repository, the collection
           ID must match the existing configured collection ID for that repository.

       --arch=ARCH
           Specify the architecture component of the branch to export. Only host compatible
           architectures can be specified.

       --exclude=PATTERN
           Exclude files matching PATTERN from the commit. This option can be used multiple
           times.

       --include=PATTERN
           Don't exclude files matching PATTERN from the commit, even if they match the --export
           patterns. This option can be used multiple times.

       --metadata=FILENAME
           Use the specified filename as metadata in the exported app instead of the default file
           (called metadata). This is useful if you want to commit multiple things from a single
           build tree, typically used in combination with --files and --exclude.

       --files=SUBDIR
           Use the files in the specified subdirectory as the file contents, rather than the
           regular files directory.

       --timestamp=DATE
           Use the specified ISO 8601 formatted date or NOW, for the current time, in the commit
           metadata and, if --update-appstream is used, the appstream data.

       --end-of-life=REASON
           Mark the build as end-of-life. REASON is a message that may be shown to users
           installing this build.

       --end-of-life-rebase=ID
           Mark the build as end-of-life. Unlike --end-of-life, this one takes an ID that
           supercedes the current one. By the user's request, the application data may be
           preserved for the new application.

       --disable-fsync
           Don't fsync when writing to the repository. This can result in data loss in
           exceptional situations, but can improve performance when working with temporary or
           test repositories.

       --update-appstream
           Update the appstream branch after the build.

       --no-update-summary
           Don't update the summary file after the new commit is added. This means the repository
           will not be useful for serving over http until build-update-repo has been run. This is
           useful is you want to do multiple repo operations before finally updating the summary.

       --gpg-sign=KEYID
           Sign the commit with this GPG key. This option can be used multiple times.

       --gpg-homedir=PATH
           GPG Homedir to use when looking for keyrings

       -r, --runtime
           Export a runtime instead of an app (this uses the usr subdir as files).

       -v, --verbose
           Print debug information during command processing.

       --ostree-verbose
           Print OSTree debug information during command processing.

EXAMPLES

       $ flatpak build-export ~/repos/gnome-calculator/ ~/build/gnome-calculator/
       org.gnome.Calculator

           Commit: 9d0044ea480297114d03aec85c3d7ae3779438f9d2cb69d717fb54237acacb8c
           Metadata Total: 605
           Metadata Written: 5
           Content Total: 1174
           Content Written: 1
           Content Bytes Written: 305

SEE ALSO

       ostree(1), flatpak(1), flatpak-build-init(1), flatpak-build(1), flatpak-build-finish(1),
       flatpak-build-sign(1), flatpak-build-update-repo(1)