moment/packaging/flatpak
2020-03-26 13:44:02 +02:00
..
collector.py Adjust flatpak packaging script according to the feedback 2020-03-25 22:27:40 +02:00
generate-flatpak-script.sh update Flatpak README and scripts 2020-03-26 13:44:02 +02:00
mirage.flatpak.base.yaml update Flatpak README and scripts 2020-03-26 13:44:02 +02:00
mirage.flatpak.yaml update Flatpak README and scripts 2020-03-26 13:44:02 +02:00
README.md update Flatpak README and scripts 2020-03-26 13:44:02 +02:00
requirements.flatpak.txt Automate flatpak manifest generation and document building flatpak 2020-03-25 10:04:56 +02:00

Flatpak packaging

Building Flatpak

To build flatpak package, you will need flatpak, flatpak-builder, and
KDE 5.12 runtime with SDK. flatpak-builder is usually available from
the same repository as flatpak. See https://flatpak.org/setup/ for
setting it up. To install runtimes (adjust as needed if you prefer
system-wide installation):

flatpak install --user flathub org.kde.Platform//5.12 org.kde.Sdk//5.12

To build, run from the root of the project:

flatpak-builder --repo=build/flatpak/repo --force-clean build/flatpak/build packaging/flatpak/mirage.flatpak.yaml

To create bundle, run

flatpak build-bundle build/flatpak/repo mirage.flatpak io.github.mirukana.mirage

Then you can install it with

flatpak install --user mirage.flatpak

To run, either use your desktop environment or command line:

flatpak run io.github.mirukana.mirage

Manifest

Manifest can be created using the included scripts, as described
below. Please note it is intended to be done by the maintainers
only. In particular, there could be some unexpected issues exposed by
updates in Python modules that have to be resolved.

Manifest has to be updated by maintainers when the dependencies of
Mirage change, some updates in used Python modules are desired.

Flatpak packaging manifest is generated by running
generate-flatpak-script.sh. This script
requires libolm to be installed on the development PC as it will
create Python virtual environment and install all the requirements in
it.

Note that the requirements are taken from
requirements.flatpak.txt and the ones
specified in the project' root
requirements.txt.

In addition, the list of ignored packages is in
generate-flatpak-script.sh.

Flatpak manifest is created automatically by
generate-flatpak-script.sh using
mirage.flatpak.base.yaml and replacing the
marked placeholder with Python module dependencies.