moment/packaging/flatpak
2021-07-26 04:39:58 -04: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 script generator 2021-03-03 17:12:08 -04:00
mirage.flatpak.base.yaml Fix flatpak nio commit 2021-07-26 04:39:58 -04:00
mirage.flatpak.yaml Fix flatpak nio commit 2021-07-26 04:39:58 -04:00
README.md Minor improvements to flatpak README 2020-08-28 10:45:37 -04:00
requirements.flatpak.txt Remove uvloop support, causes issues 2020-05-20 23:56:19 -04:00

Flatpak packaging

Building Flatpak

To build the Flatpak package, you will need flatpak, flatpak-builder, and
KDE 5.14 runtime with SDK. flatpak-builder is usually available from
the same repository as flatpak.
See the Flatpak setup instructions
for your system.

To install the runtimes (remove the --user flag and run as root if you
prefer system-wide installation):

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

If the download fails for some reason, run flatpak repair before retrying.

To build, create a bundle and install it, run from the root of the project:

    make clean
    flatpak-builder --repo=build/flatpak/repo --force-clean build/flatpak/build packaging/flatpak/mirage.flatpak.yaml
    flatpak build-bundle build/flatpak/repo build/mirage.flatpak io.github.mirukana.mirage
    flatpak install --user build/mirage.flatpak

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

    flatpak run io.github.mirukana.mirage

Manifest

The 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.

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

The Flatpak packaging manifest is generated by running
generate-flatpak-script.sh, which
uses mirage.flatpak.base.yaml and replaces the
marked placeholder with Python dependencies.

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 Python dependencies are taken from
requirements.flatpak.txt and the
project root's requirements.txt.

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