App Submission
Pages 18
Clone this wiki locally
This guide is for anyone who wants to publish a desktop app on Flathub. It is primarily intended for app authors.
What Flathub offers
Flathub is a centralized repository of Flatpak apps. It provides a single point of entry for distributing apps on the most popular Linux distributions. It has a growing number of users, with some Linux distributions enabling it by default, and simple setup steps for those that don’t.
Once an app is included in Flathub, it can be easily installed by users, either using a graphical software center or the flatpak command line. It is also possible to provide a link that will open the app in a software center.
Flathub also provides a means for app updates to be distributed to users—once an app is included, its developers can make new releases which will be automatically distributed to users.
Finally, Flathub can help with exposure for applications, through software centers where available apps are advertised, and through our own websites and social media channels.
Who can use Flathub
Flathub is primarily intended for use by developers who want to distribute desktop apps on Linux. Apps must either be redistributable or be available as a third party download.
If you are responsible for a commercial app that you would like to distribute through Flathub, you are also welcome to submit it through this process, provided that the following requirements are met:
- The app is permitted to be redistributed by Flathub and other third parties (mirrors, CDN, hardware donors, etc)
- The project license is correctly referenced in the metadata in the appstream project_license tag
Note that at present, we have no mechanism to process payments for app publishers. In-app purchases, subscriptions or upgrades are acceptable provided that the OARS metadata correctly reflects that such purchases are available.
If you have any other queries about publishing a commercial app, we’d love to speak to you and would encourage you to contact the Flathub admins.
How to submit an app
App submissions are extremely welcome and the process is straightforward. Before submitting an app for inclusion on Flathub, please follow the app requirements to ensure that it is technically and legally compatible with the Flathub service. Once this has been done, you can submit the app for inclusion.
Flathub is managed through a GitHub project, and app submissions take place as pull requests. To submit an app:
- Fork the Flathub repository on GitHub
- Clone the fork:
git clone --branch=new-pr git@github.com:your_github_username/flathub.git - Create a new branch with your app’s name:
git checkout -b your_app_name - Add your app’s manifest to the branch, commit it and push the commit
- Open a pull request against the
new-prbranch on Github - Your pull request will then be reviewed by the Flathub admins
Once your pull request has been approved, a new repository will be created for your application, containing your app’s Flatpak manifest. You will have write access for the repository. The Flathub service then uses the manifest from your repository to continuously build and distribute your application on every commit.
Someone else has put my app on Flathub—what do I do?
Flathub is primarily intended as a service that is used by app developers to distribute their apps. Our goal is to give developers control of their apps and to allow them a closer relationship with their users without middlemen getting in the way. However, as part of setting up Flathub, some applications are being distributed on Flathub without the involvement of their developers. We would prefer that these applications are controlled by their authors.
If an application that belongs to you is being distributed without your involvement, please get in touch with the Flathub admins, so that we can discuss transfering ownership.
There’s an app that I’d like to see on Flathub, but I’m not the developer
If there’s an app that you'd like to be distributed on Flathub, the best first course of action is to approach the app’s developers and ask them to submit it. Remember that for some projects or communities, this may be the first that they have heard of the Flatpak technology or interacted with somebody who advocates it. When you are making such requests, please be aware that the people you are talking to may be forming their first impressions of Flatpak as a technology and a community. Always remain respectful, patient and courteous even if you face skepticism or dissenting opinions. You can also start a topic on the Flathub forum to find whether others are interested in using, helping to build or advocate for the app in Flatpak format.
Getting help
If you are unsure about the process of submitting an app to Flathub, or are experiencing issues fulfilling all the requirements, you can contact the Flatpak community for help. General queries can be made on community channels, such as the matrix channel and discourse. For more sensitive issues, please use the private Flathub admins mailing list.