Chapter 13. Managing Flatpak repositories in Satellite


Flatpak allows users to install, manage, and run portable applications on Satellite, primarily for desktop environments. In Satellite, you can integrate Flatpak repositories to distribute and control Flatpak applications across managed hosts. By configuring Flatpak repositories, you ensure that systems have access to the necessary application packages while maintaining centralized control over application deployment.

Flatpak repositories function similarly to other content repositories in Satellite. You can synchronize, manage access permissions, and assign repositories to specific lifecycle environments to control which applications are available to systems. You can also use Hammer CLI to manage Flatpak repositories.

For more information, see Installing applications using Flatpak.

13.1. Enabling the Flatpak remote

This procedure configures and manages Flatpak repositories by using Hammer CLI.

Prerequisites

  • Your Satellite account has a role that grants the permissions view_flatpak_remotes, create_flatpak_remotes, edit_flatpak_remotes, and destroy_flatpak_remotes.
  • Set up Flatpak. For more information, see Setting up Flatpak.
  • Flatpak applications rely on Flatpak runtimes. For example, rhel9/firefox-flatpak depends on rhel9/flatpak-runtime.
  • Ensure that runtime repositories are available to clients alongside application repositories for installations to work.

CLI procedure

  1. Enable a Flatpak remote on the Satellite Server by using standalone Red Hat Enterprise Linux systems or Red Hat Satellite:

    $ hammer flatpak-remote create \
    --name=My_Flatpak_Remote_Name \
    --organization=My_Organization \
    --url=My_Flatpak_Remote_URL
    Copy to Clipboard Toggle word wrap

    You can include authentication details by using the options --username=My_User_Name --token=My_Token.

    You can generate a Red Hat official token at Registry Service Accounts.

  2. Update the Flatpak remote with authentication credentials:

    $ hammer flatpak-remote update \
    --token=My_Token \
    --username=My_User_Name
    Copy to Clipboard Toggle word wrap
  3. Optional: List and view information about the Flatpak remote:

    $ hammer flatpak-remote list
    $ hammer flatpak-remote info
    Copy to Clipboard Toggle word wrap
  4. Scan the Flatpak remote:

    $ hammer flatpak-remote scan --id=My_ID
    Copy to Clipboard Toggle word wrap
  5. List repositories in the Flatpak remote:

    $ hammer flatpak-remote remote-repository list --flatpak-remote-id=My_ID
    Copy to Clipboard Toggle word wrap
  6. Mirror a Flatpak remote repository to a Satellite product:

    $ hammer flatpak-remote remote-repository mirror \
    --id=My_Remote_Repo_ID \
    --product-id=Satellite_Product_ID
    Copy to Clipboard Toggle word wrap

    The --id in this command refers to the Flatpak remote repository ID, not the standard Satellite repository ID.

    You can view the repository under the selected product in Satellite web UI. Set the Include Tags field to latest.

  7. Synchronize the Satellite repository:

    $ hammer repository sync --id=My_Repo_ID
    Copy to Clipboard Toggle word wrap

    The --id in this command refers to the standard Satellite repository ID, not the Flatpak remote repository ID.

Use the command line to install selected applications from the enabled Flatpak remotes.

Prerequisites

  • Flatpak is installed on the host.
  • The Red Hat Flatpak remote is enabled.
  • Ensure that Podman is installed on the host.
  • To install Flatpak applications from Satellite, ensure that your Satellite account has the view_lifecycle_environments, view_products, and view_content_views permissions, unless the lifecycle environment allows unauthenticated pull.
  • Your Satellite account has a role that grants the create_personal_access_tokens permission to generate an access token for authentication. The token generates automatically when you run podman login.

Procedure

  1. On the managed host, add your Satellite Server as a Flatpak remote:

    $ flatpak remote-add --authenticator-name=org.flatpak.Authenticator.Oci katello oci+https://satellite.example.com/
    Copy to Clipboard Toggle word wrap
  2. Log in using Podman:

    $ podman login satellite.example.com
    Copy to Clipboard Toggle word wrap
  3. Install your application. For example, to install the Mozilla Firefox Flatpak:

    $ flatpak install firefox
    Copy to Clipboard Toggle word wrap

Additional resources

13.3. Setting up Flatpak remote for Capsule

Configure Capsule Servers to synchronize and distribute Flatpak repositories to managed hosts.

Note

Capsules synchronize Flatpaks and make them available to all hosts, but not organizations, content views, or lifecycle environments. Clients receive the latest Flatpaks synchronized on the Capsule globally.

Prerequisites

Procedure

  1. On the managed host, add the Capsule as a Flatpak remote:

    $ flatpak remote-add --authenticator-name=org.flatpak.Authenticator.Oci katello oci+https://capsule.example.com/pulpcore_registry/
    Copy to Clipboard Toggle word wrap
  2. Log in using Podman:

    $ podman login satellite.example.com
    Copy to Clipboard Toggle word wrap

    For more information about logging in using Podman, see Section 12.4, “Configuring Podman and Docker to trust the certificate authority”.

    You might need to log in to the registry again if you have not saved your credentials.

  3. Optional: Save your credentials permanently using one of the following options:

    • To save the credentials for the current user:

      $ cp $XDG_RUNTIME_DIR/containers/auth.json $HOME/.config/flatpak/oci-auth.json
      Copy to Clipboard Toggle word wrap
    • To save the credentials system-wide:

      $ cp $XDG_RUNTIME_DIR/containers/auth.json /etc/flatpak/oci-auth.json
      Copy to Clipboard Toggle word wrap
  4. Install your application. For example, to install the Mozilla Firefox Flatpak:

    $ flatpak install firefox
    Copy to Clipboard Toggle word wrap

Use Hammer CLI to transfer Flatpak content to Satellite Server in environments with disconnected Satellite Server instances.

Prerequisites

CLI procedure

  1. Export content from the connected Satellite Server:

    $ hammer content-export start \
    --export-to=My_Path_to_Export_Directory \
    --id=My_Product_ID
    Copy to Clipboard Toggle word wrap
  2. Import the exported content to the disconnected Satellite Server:

    $ hammer content-import start --path=My_Path_to_Export_Directory/export.tar
    Copy to Clipboard Toggle word wrap
  3. Add the disconnected Satellite as a Flatpak remote:

    $ flatpak remote-add --authenticator-name=org.flatpak.Authenticator.Oci katello oci+https://satellite.example.com/
    Copy to Clipboard Toggle word wrap
  4. Log in using Podman:

    $ podman login satellite.example.com
    Copy to Clipboard Toggle word wrap
  5. Install your application. For example, to install the Mozilla Firefox Flatpak:

    $ flatpak install firefox
    Copy to Clipboard Toggle word wrap
Back to top
Red Hat logoGithubredditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust. Explore our recent updates.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

Theme

© 2025 Red Hat