moment/packaging/flatpak/README.md

41 lines
1.2 KiB
Markdown

# Flatpak packaging
## Manifest
Flatpak packaging manifest is generated by running
```
packaging/flatpak/generate-flatpak-script.sh
```
from the root of the project. 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
`packaging/flatpak/requirements.flatpak.txt` and the ones specified in
the project' root `requirements.txt`. At the moment of writing,
included packages are `multidict` with the version that installs in
Flatpak (newer versions seem to have some issues), `uvloop`, and few
packages required for building other packages.
In addition, the list of ignored packages is in
`packaging/flatpak/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.
## Building Flatpak
To build flatpak package, you will need flatpak, runtime and SDK (KDE
5.12), and flatpak-builder.
To build, run
```
flatpak-builder --repo=../flatpak-repo --force-clean flatpak-build packaging/flatpak/mirage.flatpak.yaml
```