Warning, /packaging/flatpak-kde-applications/README.md is written in an unsupported language. File is not indexed.

0001 # Flatpak Manifests for KDE Apps Nightly builds
0002 
0003 This repository is used by KDE's Jenkins instance to create Nightly Flatpak
0004 builds of KDE Apps. Stable Flatpak builds are published on Flathub. See:
0005 
0006 * [Tutorials/Flatpak](https://userbase.kde.org/Tutorials/Flatpak)
0007 * [Your app on kdeapps: How and where to publish your manifests](https://develop.kde.org/docs/packaging/flatpak/publishing/).
0008 
0009 ## Moving manifests to each application repo
0010 
0011 As part of a
0012 [Season of KDE 2023 project](https://community.kde.org/SoK/Ideas/2023#Systematization_1:_Automate_Flatpak_checks_in_GitLab_Invent_CI)
0013 following the
0014 [Automate and systematize internal processes Goal](https://community.kde.org/Goals/Automate_and_systematize_internal_processes),
0015 we are moving all manifests for KDE Apps to each project repo to be able to
0016 benefit from checks during Merge Requests via KDE Invent's GitLab CI.
0017 
0018 ## How to add your application to the Nightly repo
0019 
0020 We strongly encourage developers to add their Flatpak manifests in their
0021 application source repository to enable per commit / merge request Flatpak CI
0022 builds on their repository.
0023 
0024 You can then add a `.remoteapp` file in this repo to have the Flatpak be built
0025 by KDE binary factory (Jenkins). See existing files in the repo for examples.
0026 
0027 ## How to add Flatpak CI To Your Repository
0028 
0029 1. Add the Flatpak manifest to your source repository as
0030    `.flatpak-manifest.json` or `.flatpak-manifest.yml`.
0031 2. In your manifest, change source of your application module to use current
0032    directory. Eg.
0033 
0034     ```json
0035     {
0036         "name": "neochat",
0037         "buildsystem": "cmake-ninja",
0038         "sources": [
0039             {
0040                 "type": "dir",
0041                 "path": "."
0042             }
0043         ]
0044     }
0045     ```
0046 
0047     For any other KDE dependency, use the development or master branch. For KDE
0048     Frameworks, use the latest released tag.
0049 3. Add the following to the list of includes in `.gitlab-ci.yml`:
0050 
0051     ```yml
0052     include:
0053         ...
0054         - https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/flatpak.yml
0055     ```
0056 
0057 After this, your repository should have Flatpak CI builds enabled and will run
0058 on every pipeline run. Flatpak CI builds will also generate artifacts.
0059 
0060 For now, application maintainers need to ensure all modules in manifests are up
0061 to date. Developers can run the
0062 [flatpak-external-data-checker](https://github.com/flathub/flatpak-external-data-checker)
0063 to manually update external dependencies.
0064 
0065 We will add automation in the future to check for updates and open merge
0066 requests.
0067 
0068 ## Issues
0069 
0070 Issues can be reported on the issues tab, or discussed on [#flatpak:kde.org](https://matrix.to/#/#flatpak:kde.org).